Esempio n. 1
0
val_set = []
for i in range(val_size):
		N = len(pick_from) - i
		rand = random.randint(0, N-1)
		point = pick_from.pop(rand)
		val_set.append(point)
	
ann.populate(pick_from)
ann.set_weights(weights)
final_weights = []
val_errs = []
for i in krange:
	print i, datetime.datetime.now()
	ann.train(diff)
	final_weights.append(ann.weights)
	val_err = ann.test_err(val_set)
	val_errs.append(val_err)
	print val_err	

best_i = val_errs.index(min(val_errs))
best_itr = krange[best_i]
best_test = val_errs[best_i]
ann.set_weights(final_weights[best_i])

print datetime.datetime.now()
print "Best iterations:", best_itr, "with validation error", best_test
print "Plotting decision boundary for ANN with no lambda, run for", best_itr,"iterations"
ann.populate(sampled_data)
ann.decision(savename="ann_estop_dec.png")
print "ANN Ein with Early Stopping at", best_itr, ":", ann.test_err(sampled_data)
print "ANN Etest with Early Stopping at", best_itr, ":", ann.test_err(data)