# Author : Jean-Michel Begon """ Apply randConvRepeatedly """ import numpy as np import randConvCifar as rc def variability(importance): return np.std(importance) if __name__ == "__main__": nbRun = 50 acc = [] importances = [] for i in xrange(nbRun): accTmp, _, imp, _ = rc.run() acc.append(accTmp) importances.append(variability(imp)) print "Accuracies" print acc npAcc = np.array(acc) print "Mean accuracy", npAcc.mean() print "Stdev accuracy", npAcc.std() print "---------------------------------" print "Feature importance std" print importances
if __name__ == "__main__": fileName = "varTreeFeatures" # nbTree = [10, 60, 120, 500] # nbFeatures = [100, 500, 1000, 5000] nbTree = [10] nbFeatures = [10] includeOriginalImage = True tupTree = [] tupFeat = [] for i in range(min([len(nbTree), len(nbFeatures)])): #Var nb tree tup = rc.run(includeOriginalImage=includeOriginalImage, nbTrees=nbTree[i], random=False) fn = fileName+"_tree"+str(nbTree[i]) with open(fn, "wb") as f: cPickle.dump(tup, f, protocol=2) tupTree.append(tup) #Var nb features tup = rc.run(includeOriginalImage=includeOriginalImage, maxFeatures=nbFeatures[i], random=False) fn = fileName+"_feature"+str(nbFeatures[i]) with open(fn, "wb") as f: cPickle.dump(tup, f, protocol=2) tupFeat.append(tup) #Signal print ">>>> ", i, " done"