当前位置:   article > 正文

Keras库搭建神经网络

Keras库搭建神经网络

Keras并非简单的神经网络库,而是一个基于Theano的强大的深度学习库,利用它不仅仅可以搭建普通的神经网络,还可以搭建各种深度学习模型,如自编码器、循环神经网络、递归神经网络、卷积神经网络等。

安装代码:

pip install keras

用Keras搭建神经网络模型的过程相当简洁,通过短短几十行代码就可以搭建起一个非常强大的神经网络模型,甚至是深度学习模型。简单搭建一个 MLP(多层感知器),如下:

  1. from keras.models import Sequential
  2. from keras.layers.core import DenseDropout,Activation
  3. from keras.optimizers import SGD
  4. model=Sequential()#模型初始化
  5. model.add(Dense(20,64))#添加输入层(20节点)、第一隐藏层(64节点)的连接
  6. model.add(Activation('tanh'))#第一隐藏层用tanh作为激活函数
  7. model.add(Dropout(0.5))#使用Dropout防止过拟合
  8. model.add(Dense(64,64))#添加第一隐藏层(64节点)、第二隐藏层(64节点)的连接
  9. model.add(ctivation('tanh'))#第二隐藏层用tanh作为激活函数
  10. model.add(Dropout(0.5))#使用Dropout防止过拟合
  11. model.add(Dense(64,1))#添加第二隐藏层(64节点)、输出层(1节点)的连接
  12. model.add(Activation('sigmoid'))#输出层用sigmoid作为激活函数
  13. sgd=SGD(lr=0.1,decay=1e-6,momentum=0.9,nesterov=True)#定义求解算法
  14. model.compile(loss='mean squared error',optimizer=sgd) #编译生成模型,损失函数为平均误差平方和
  15. model,fit(Xtrain,ytrain,nb_epoch=20,batch_size=16)#训练模型
  16. score =model.evaluate(Xtest,ytest,batch_size=16)#测试模型

上述代码构建了一个具有两个隐藏层的神经网络模型,使用tanh和sigmoid作为激活函数,采用随机梯度下降优化器进行训练,并使用均方误差作为损失函数。最后对模型进行评估并输出评估得分。

 

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
  

闽ICP备14008679号