def runTrial(ds, iters): kw = { 'minimize': True, 'verbose': True, 'mutationProb': 0.1, 'populationSize': 150, 'storeAllEvaluations': True, 'storeAllPopulations': True, 'elitism': True, 'tournament': False } e = setUpExperiment(ds, **kw) ga = GA(testOnTrainData, e.nn, **kw) e.results['trn_per_err'] = [] for i in range(iters): print ga.learn(0) e.results['trn_per_err'].append(ga._bestFound()[1]) fits = array(ga.fitnesses) print '\t\t\tmean', mean(fits), 'std', std(fits), 'max', max( fits), 'min', min(fits) for i, t in trn_data: o = ga._bestFound()[0].activate(i) if where(o != t, True, False).any(): print i, o, argmax(t), '----' e.results['tst_per_err'].append( testOnTestData(ga._bestFound()[0], e.tst_data)) return e
def runTrial(iters): kw = { 'minimize': True, 'verbose': True, 'mutationProb': 0.1, 'populationSize': 150, 'storeAllEvaluations': True, 'storeAllPopulations': True, 'elitism': True, 'tournament': False } e = Experiment(**kw) # e.buildXor() e.buildParity() # e.buildIris() # trainer = bp(e.nn, dataset=trn_data, verbose=True) # trainer.trainEpochs(100) ga = GA(testOnTrainData, e.nn, **kw) # ga = GA(trn_data.evaluateModuleMSE, e.nn, **kw) # tmp_nn = e.nn.newSimilarInstance() perc_errs = [] for i in range(iters): ga.learn(0) perc_errs.append(ga._bestFound()[1]) fits = array(ga.fitnesses) print '\t\t\tmean', mean(fits), 'std', std(fits), 'max', max( fits), 'min', min(fits) for i, t in trn_data: o = ga._bestFound()[0].activate(i) if o != t: print i, o, t, '++' if o == t else '----' # ranked_pop = ga._allGenerations[i] # ranked_pop = array(sorted(ga._allGenerations[i], key=lambda x: x[1])) # for ind in range(len(ranked_pop[0])): # tmp_nn.params[:] = array(ranked_pop[0][ind]).copy() # print ranked_pop[1][ind], testOnTrainData(tmp_nn), int(testOnTrainData(tmp_nn)) * '.' # astrocytes = associateAstrocyteLayers(tmp_nn) # trainNGA(tmp_nn, trn_data, astrocytes[0], astrocytes[1]) # ga.currentpop = new_pop return perc_errs
def runTrial(ds, iters): kw = {'minimize':True, 'verbose':True, 'mutationProb':0.1, 'populationSize':150, 'storeAllEvaluations':True, 'storeAllPopulations':True, 'elitism':True, 'tournament':False} e = setUpExperiment(ds, **kw) ga = GA(testOnTrainData, e.nn, **kw) e.results['trn_per_err'] = [] for i in range(iters): print ga.learn(0) e.results['trn_per_err'].append(ga._bestFound()[1]) fits = array(ga.fitnesses) print '\t\t\tmean', mean(fits), 'std', std(fits), 'max', max(fits), 'min', min(fits) for i, t in trn_data: o = ga._bestFound()[0].activate(i) if where(o != t, True, False).any(): print i, o, argmax(t), '----' e.results['tst_per_err'].append(testOnTestData(ga._bestFound()[0], e.tst_data)) return e
def runTrial(iters): kw = {'minimize':True, 'verbose':True, 'mutationProb':0.1, 'populationSize':150, 'storeAllEvaluations':True, 'storeAllPopulations':True, 'elitism':True, 'tournament':False} e = Experiment(**kw) # e.buildXor() e.buildParity() # e.buildIris() # trainer = bp(e.nn, dataset=trn_data, verbose=True) # trainer.trainEpochs(100) ga = GA(testOnTrainData, e.nn, **kw) # ga = GA(trn_data.evaluateModuleMSE, e.nn, **kw) # tmp_nn = e.nn.newSimilarInstance() perc_errs = [] for i in range(iters): ga.learn(0) perc_errs.append(ga._bestFound()[1]) fits = array(ga.fitnesses) print '\t\t\tmean', mean(fits), 'std', std(fits), 'max', max(fits), 'min', min(fits) for i, t in trn_data: o = ga._bestFound()[0].activate(i) if o != t: print i, o, t, '++' if o == t else '----' # ranked_pop = ga._allGenerations[i] # ranked_pop = array(sorted(ga._allGenerations[i], key=lambda x: x[1])) # for ind in range(len(ranked_pop[0])): # tmp_nn.params[:] = array(ranked_pop[0][ind]).copy() # print ranked_pop[1][ind], testOnTrainData(tmp_nn), int(testOnTrainData(tmp_nn)) * '.' # astrocytes = associateAstrocyteLayers(tmp_nn) # trainNGA(tmp_nn, trn_data, astrocytes[0], astrocytes[1]) # ga.currentpop = new_pop return perc_errs