def train_destin(destin_train_iterations, train_only_layer=-1): # only enable one layer if specified if train_only_layer != -1: for i in xrange(layers): dn.setLayerIsTraining(i, False) dn.setLayerIsTraining(train_only_layer, True) for i in range(destin_train_iterations): if i % 100 == 0: print "Training DeSTIN iteration: " + str(i) #chart.update([dn.getQuality(top_layer), dn.getVar(top_layer), dn.getSep(top_layer)]) #chart.update([dn.getVar(top_layer), dn.getSep(top_layer)]) #report_layer = 0 #variance = dn.getVar(report_layer) #seperation = dn.getSep(report_layer) #quality = dn.getQuality(report_layer) #qual_moving_average = moving_average(quality) #chart.update([variance, seperation]) chart.update(dn.getLayersQualities()) if i%200 == 0: chart.draw() # print "Qual: %f, Variance: %f, seperation: %f, average: %f" % (quality, variance, seperation, qual_moving_average) #find an image of an enabled class cs.findNextImage() dn.doDestin(getCifarFloatImage(cs)) dn.save( experiment_save_dir+"/network_"+run_id+".dst")
def train(): for i in xrange(iterations): if i % 10 == 0: variances = dn.getLayersVariances() separations = dn.getLayersSeparations() chart.update([ separations[draw_layer] - variances[draw_layer], variances[draw_layer], separations[draw_layer] ]) chart.draw() if (i % 300) == 0: print "#####################################" print "Iteration " + str(i) print "" for j in range(len(centroids)): print "Layer: " + str(j) print "Variance: " + str(variances[j]) print "Separation: " + str(separations[j]) print "Quality: " + str(separations[j] - variances[j]) print "Centroids: " + str(dn.getBeliefsPerNode(j)) print "" sys.stdout.flush() ims.findNextImage() #dn.clearBeliefs() for j in range(1): f = ims.getGrayImageFloat() dn.doDestin(f)
def train_destin(destin_train_iterations, train_only_layer=-1): # only enable one layer if specified if train_only_layer != -1: for i in xrange(layers): dn.setLayerIsTraining(i, False) dn.setLayerIsTraining(train_only_layer, True) for i in range(destin_train_iterations): if i % 100 == 0: print "Training DeSTIN iteration: " + str(i) #chart.update([dn.getQuality(top_layer), dn.getVar(top_layer), dn.getSep(top_layer)]) #chart.update([dn.getVar(top_layer), dn.getSep(top_layer)]) #report_layer = 0 #variance = dn.getVar(report_layer) #seperation = dn.getSep(report_layer) #quality = dn.getQuality(report_layer) #qual_moving_average = moving_average(quality) #chart.update([variance, seperation]) chart.update(dn.getLayersQualities()) if i % 200 == 0: chart.draw() # print "Qual: %f, Variance: %f, seperation: %f, average: %f" % (quality, variance, seperation, qual_moving_average) #find an image of an enabled class cs.findNextImage() dn.doDestin(getCifarFloatImage(cs)) dn.save(experiment_save_dir + "/network_" + run_id + ".dst")
def train(): for i in xrange(iterations): if i % 10 == 0: variances = dn.getLayersVariances(); separations = dn.getLayersSeparations(); chart.update([separations[draw_layer] - variances[draw_layer], variances[draw_layer], separations[draw_layer]]) chart.draw() if (i % 300) == 0: print "#####################################"; print "Iteration " + str(i) print "" for j in range(len(centroids)): print "Layer: " + str(j) print "Variance: " + str(variances[j]) print "Separation: " + str(separations[j]) print "Quality: " + str(separations[j] - variances[j]) print "Centroids: " + str(dn.getBeliefsPerNode(j)) print "" sys.stdout.flush() ims.findNextImage() #dn.clearBeliefs() for j in range(1): f = ims.getGrayImageFloat() dn.doDestin(f)
def train(): for i in xrange(iterations): if i % 10 == 0: variances = dn.getLayersVariances(); separations = dn.getLayersSeparations(); chart.update([separations[draw_layer] - variances[draw_layer], variances[draw_layer], separations[draw_layer]]) chart.draw() if (i % 300) == 0: print "#####################################"; print "Iteration " + str(i) print "" for j in range(len(centroids)): print "Layer: " + str(j) print "Variance: " + str(variances[j]) print "Separation: " + str(separations[j]) print "Quality: " + str(separations[j] - variances[j]) print "Centroids: " + str(dn.getBeliefsPerNode(j)) print "" sys.stdout.flush() ims.findNextImage() #dn.clearBeliefs() for j in range(1): if image_mode == pd.DST_IMG_MODE_GRAYSCALE: f = ims.getGrayImageFloat() elif image_mode == pd.DST_IMG_MODE_RGB: f = ims.getRGBImageFloat() else: raise Exception("unsupported image mode") dn.doDestin(f)
def train(): for i in xrange(iterations): if i % 10 == 0: variances = dn.getLayersVariances() separations = dn.getLayersSeparations() chart.update([ separations[draw_layer] - variances[draw_layer], variances[draw_layer], separations[draw_layer] ]) chart.draw() if (i % 300) == 0: print "#####################################" print "Iteration " + str(i) print "" for j in range(len(centroids)): print "Layer: " + str(j) print "Variance: " + str(variances[j]) print "Separation: " + str(separations[j]) print "Quality: " + str(separations[j] - variances[j]) print "Centroids: " + str(dn.getBeliefsPerNode(j)) print "" sys.stdout.flush() ims.findNextImage() #dn.clearBeliefs() for j in range(1): if image_mode == pd.DST_IMG_MODE_GRAYSCALE: f = ims.getGrayImageFloat() elif image_mode == pd.DST_IMG_MODE_RGB: f = ims.getRGBImageFloat() else: raise Exception("unsupported image mode") dn.doDestin(f)
def train(): for i in xrange(4000): if i % 10 == 0: print "Iteration " + str(i) var = dn.getVar(top_layer) print "Variance: " +str(var) sep = dn.getSep(top_layer) print "Sep: " + str(sep) qual = dn.getQuality(top_layer) print "Quality: " + str(qual) chart.update([qual, var, sep]) chart.draw() #code.interact(local=locals()) ims.findNextImage() #dn.clearBeliefs() for j in range(1): f = ims.getGrayImageFloat() dn.doDestin(f)