def main(): """ load training data""" inputs = np.loadtxt("../handwriting/X2_100samples.dat") targets = np.loadtxt("../handwriting/y2_100samples.dat") ValInputs, ValTargets = get_validation_data() """ define network topology """ conec = mlgraph((inputs.shape[1], 10, 1)) net = ffnet(conec) system = NNSystem(net, inputs, targets) pot = system.get_potential() database = system.create_database( db= "/home/ab2111/machine_learning_landscapes/neural_net/db_ffnet_100samples.sqlite" ) # database = system.create_database(db="/home/ab2111/machine_learning_landscapes/neural_net/db_ffnet_me3.sqlite") # run_gui(system, database) # check_its_a_minimum(system, database) energies = np.array([]) for m in database.minima(): coords = m.coords testenergy = pot.getValidationEnergy(coords, ValInputs, ValTargets) / len(ValTargets) energies = np.append(energies, testenergy) # plt.plot(m.coords,'o') # np.max(m.coords) # plt.plot([m._id for m in database.minima()], np.array([m.energy for m in database.minima()])/100., 'o') plt.plot(np.array([m.energy for m in database.minima()]) / 100) plt.plot(energies) plt.plot( np.array([np.max(m.coords) for m in database.minima()]) / 1000, 'x') plt.legend(["Etrain", "Evalidation", "max(params)"]) plt.show()
def main(): """ load training data""" inputs = np.loadtxt("../handwriting/X2_100samples.dat") targets = np.loadtxt("../handwriting/y2_100samples.dat") ValInputs, ValTargets = get_validation_data() """ define network topology """ conec = mlgraph((inputs.shape[1],10,1)) net = ffnet(conec) system = NNSystem(net, inputs, targets) pot = system.get_potential() database = system.create_database(db="/home/ab2111/machine_learning_landscapes/neural_net/db_ffnet_100samples.sqlite") # database = system.create_database(db="/home/ab2111/machine_learning_landscapes/neural_net/db_ffnet_me3.sqlite") # run_gui(system, database) # check_its_a_minimum(system, database) energies = np.array([]) for m in database.minima(): coords = m.coords testenergy = pot.getValidationEnergy(coords,ValInputs,ValTargets)/len(ValTargets) energies = np.append(energies,testenergy) # plt.plot(m.coords,'o') # np.max(m.coords) # plt.plot([m._id for m in database.minima()], np.array([m.energy for m in database.minima()])/100., 'o') plt.plot(np.array([m.energy for m in database.minima()])/100) plt.plot(energies) plt.plot(np.array([np.max(m.coords) for m in database.minima()])/1000, 'x') plt.legend(["Etrain","Evalidation","max(params)"]) plt.show()
return np.array(points) """ load training data""" dir="/scratch/ab2111/dellcp10/projects/BDynam2d/LONGER/TPanalysis/" tp = np.loadtxt(dir+"tpout",usecols=(1,2)) ntp = np.loadtxt(dir+"nottpout",usecols=(1,2)) print tp.shape inputs = np.concatenate((tp,ntp)) targets = np.concatenate(([1.0 for a in range(len(tp))],[0.0 for a in range(len(ntp))])) """ define network topology """ conec = mlgraph((inputs.shape[1],5,1)) net = ffnet(conec) system = NNSystem(net,inputs,targets) database = system.create_database(db="/home/ab2111/machine_learning_landscapes/neural_net/db.2dmodel.sqlite") # run_gui(system, database) m = database.minima()[0] net.weights = m.coords predicts = test_optimized_data(100,net) import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D # Axes3D.plot_surface(predicts[:,0],predicts[:,1],predicts[:,2]) fig = plt.figure() ax = fig.add_subplot(111,projection='3d') ax.plot_surface(predicts[:,0],predicts[:,1],predicts[:,2]) # plt.plot_surface(predicts[:,0],predicts[:,1],predicts[:,2]) plt.show() # run_basinhopping(system,database,system.pot.net.weights,1000) # connect(system,database)
""" load training data""" dir = "/scratch/ab2111/dellcp10/projects/BDynam2d/LONGER/TPanalysis/" tp = np.loadtxt(dir + "tpout", usecols=(1, 2)) ntp = np.loadtxt(dir + "nottpout", usecols=(1, 2)) print tp.shape inputs = np.concatenate((tp, ntp)) targets = np.concatenate( ([1.0 for a in range(len(tp))], [0.0 for a in range(len(ntp))])) """ define network topology """ conec = mlgraph((inputs.shape[1], 5, 1)) net = ffnet(conec) system = NNSystem(net, inputs, targets) database = system.create_database( db="/home/ab2111/machine_learning_landscapes/neural_net/db.2dmodel.sqlite") # run_gui(system, database) m = database.minima()[0] net.weights = m.coords predicts = test_optimized_data(100, net) import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D # Axes3D.plot_surface(predicts[:,0],predicts[:,1],predicts[:,2]) fig = plt.figure() ax = fig.add_subplot(111, projection='3d') ax.plot_surface(predicts[:, 0], predicts[:, 1], predicts[:, 2]) # plt.plot_surface(predicts[:,0],predicts[:,1],predicts[:,2]) plt.show() # run_basinhopping(system,database,system.pot.net.weights,1000) # connect(system,database)