Beispiel #1
0
#	namecols = [1,2]
#	timecols = [11]
#	valcols = [3,4,5,6,7,8,9,11]
#	parser_train = Parser("prunedPhones.csv",namecols,timecols,valcols,condition_train)
#	parser_test = Parser("prunedPhones.csv",namecols,timecols,valcols,condition_test)
	contours = 4
	number_to_print = 5
	
	properties = parser_train.getProperties()
	gridlog = Log(sys.argv[1]) 
	for ind_attr in [properties[0]]:
		for dep_attr in properties[:]:
			if ind_attr == dep_attr:
				continue
			updater = Updater(parser_train, ind_attr, contours, dep_attr, None, parser_test=parser_test)
			surprise = None
			params = gridlog.getBestParams(ind_attr,dep_attr)
			if params is not None:
				print "Found",params,"for independent:",ind_attr,"dependent:",dep_attr
				surprise = Surprise(updater, params=params,lims=updater.allLimits([5,5]))
			else:
				print "Found no params in log for independent:",ind_attr,"dependent:",dep_attr,", using defaults"
				surprise = Surprise(updater, params={'C':1,'gamma':0.01},lims=updater.allLimits([5,5]))
			edv = surprise.createVisualiser(250,250)
			surprise_list = surprise.runUpdaterAndCalcSurprise(recompute=True, catchUp=False, plotAtUpdate=True)
			print 'least', surprise_list[0:number_to_print]
			print 'most', surprise_list[-number_to_print:-1] + [surprise_list[-1]]
			fn = "plots/Surprise_"+updater.indAttrName(True)+"_"+updater.depAttrName(True)
			subprocess.call("ffmpeg -b 5000 -f image2 -r 8 -i "+fn+"_%05d.jpg -vcodec libx264 -y "+fn+".mp4",shell=True)
			parser_train = Parser("data/AllPhoneData_pruned.csv",namecols,timecols,valcols,condition_train)
			parser_test = Parser("data/AllPhoneData_pruned.csv",namecols,timecols,valcols,condition_test)