神经网络拟合二次函数

it2022-05-08  8

调用Nndl实现的神经网络code,用ANN拟合二次方程。

ref: https://github.com/mnielsen/neural-networks-and-deep-learning

准备训练数据

#np.shape(x) x=np.array(xrange(0,100))/100.0 f=x*x # train=np.array([[xi],[fi]] for xi,fi in zip(x,f)) train=[(np.array([a[0]]).reshape(1,1),np.array([a[1]]).reshape(1,1)) for a in zip(x,f)] x1=np.array(xrange(10,15)) f1=x1*x1 # train=np.array([[xi],[fi]] for xi,fi in zip(x,f)) test=[(np.array([a[0]]).reshape(1,1),np.array([a[1]]).reshape(1,1)) for a in zip(x1,f1)]

训练网络

net2 = network2.Network([1, 5, 1], cost=network2.QuadraticCost) net2.large_weight_initializer() err=net2.SGD(train, 30, 5, 1.5, evaluation_data=train, monitor_training_cost=True ) plt.plot(err[2])```

网络精度

比较拟合函数

a=[] f=[] for xi in np.array(xrange(0,100))/100.0: a.append(net2.feedforward(np.array([xi]).reshape((1,1)))[0]) f.append(xi*xi) plt.plot(a) plt.plot(f)

转载于:https://www.cnblogs.com/luweiseu/p/7699078.html


最新回复(0)