当前位置: 首页 > news >正文

做网站利润安徽建设信息网站

做网站利润,安徽建设信息网站,网络运维和网站开发,韶关市住房和城乡建设部网站著名#xff1a; 本文是从 Michael Nielsen的电子书Neural Network and Deep Learning的深度学习那一章的卷积神经网络的参数优化方法的一些总结和摘录#xff0c;并不是我自己的结论和做实验所得到的结果。我想Michael的实验结果更有说服力一些。本书在github上有中文翻译的… 著名 本文是从 Michael Nielsen的电子书Neural Network and Deep Learning的深度学习那一章的卷积神经网络的参数优化方法的一些总结和摘录并不是我自己的结论和做实验所得到的结果。我想Michael的实验结果更有说服力一些。本书在github上有中文翻译的版本 前言 最近卷积神经网络CNN很火热它在图像分类领域的卓越表现引起了大家的广泛关注。本文总结和摘录了Michael Nielsen的那本Neural Network and Deep Learning一书中关于深度学习一章中关于提高泛化能力的一些概述和实验结果。力争用数据给大家一个关于正则化增加卷积层/全连接数弃权技术拓展训练集等参数优化方法的效果。 本文并不会介绍正则化弃权Dropout, 池化等方法的原理只会介绍它们在实验中的应用或者起到的效果更多的关于这些方法的解释请自行查询。 mnist数据集介绍 本文的实验是基于mnist数据集合的mnist是一个从0到9的手写数字集合共有60,000张训练图片10000张测试图片。每张图片大小是28*28大小。我们的实验就是构建一个神经网络来高精度的分类图片也就是提高泛化能力。 提高泛化能力的方法 一般来说提高泛化能力的方法主要有以下几个 正则化增加神经网络层数使用正确的代价函数使用好的权重初始化技术人为拓展训练集弃权技术 下面我们通过实验结果给这些参数优化理论一个直观的结果 1. 普通的全连接神经网络的效果 我们使用一个隐藏层包含100个隐藏神经元输入层是784输出层是one-hot编码的形式最后一层是Softmax层。训练过程采用对数似然代价函数60次迭代学习速率η0.1随机梯度下降的小批量数据大小为10没有正则化。在测试集上得到的结果是97.8%代码如下 import network3 from network3 import Network from network3 import ConvPoolLayer, FullyConnectedLayer, SoftmaxLayer training_data, validation_data, test_data network3.load_data_shared() mini_batch_size 10 net Network([ FullyConnectedLayer(n_in784, n_out100), SoftmaxLayer(n_in100, n_out10)], mini_batch_size) net.SGD(training_data, 60, mini_batch_size, 0.1, validation_data, test_data) 2.使用卷积神经网络 — 仅一个卷积层 输入层是卷积层5*5的局部感受野也就是一个5*5的卷积核一共20个特征映射。最大池化层选用2*2的大小。后面是100个隐藏神经元的全连接层。结构如图所示 在这个架构中我们把卷积层和chihua层看做是学习输入训练图像中的局部感受野而后的全连接层则是一个更抽象层次的学习从整个图像整合全局信息。也是60次迭代批量数据大小是10学习率是0.1.代码如下 net Network([ ConvPoolLayer(image_shape(mini_batch_size, 1, 28, 28), filter_shape(20, 1, 5, 5), poolsize(2, 2)), FullyConnectedLayer(n_in20*12*12, n_out100), SoftmaxLayer(n_in100, n_out10)], mini_batch_size) net.SGD(training_data, 60, mini_batch_size, 0.1, validation_data, test_data) 经过三次运行取平均后准确率是98.78%这是相当大的改善。错误率降低了1/3。卷积神经网络开始显现威力。 3.使用卷积神经网络 — 两个卷积层 我们接着插入第二个卷积-混合层把它插入在之前的卷积-混合层和全连接层之间同样的5*5的局部感受野2*2的池化层。 net Network([ ConvPoolLayer(image_shape(mini_batch_size, 1, 28, 28), filter_shape(20, 1, 5, 5), poolsize(2, 2)), ConvPoolLayer(image_shape(mini_batch_size, 20, 12, 12), filter_shape(40, 20, 5, 5), poolsize(2, 2)), FullyConnectedLayer(n_in40*4*4, n_out100), SoftmaxLayer(n_in100, n_out10)], mini_batch_size) net.SGD(training_data, 60, mini_batch_size, 0.1, validation_data, test_data) 这一次我们拥有了99.06%的准确率。 4.使用卷积神经网络 — 两个卷积层线性修正单元(ReLU)正则化 上面我们使用的Sigmod激活函数现在我们换成线性修正激活函数ReLU f(z)max(0,z),我们选择60个迭代期学习速率η0.03, 使用L2正则化正则化参数λ0.1,代码如下 from network3 import ReLU net Network([ ConvPoolLayer(image_shape(mini_batch_size, 1, 28, 28), filter_shape(20, 1, 5, 5), poolsize(2, 2), activation_fnReLU), ConvPoolLayer(image_shape(mini_batch_size, 20, 12, 12), filter_shape(40, 20, 5, 5), poolsize(2, 2), activation_fnReLU), FullyConnectedLayer(n_in40*4*4, n_out100, activation_fnReLU), SoftmaxLayer(n_in100, n_out10)], mini_batch_size) net.SGD(training_data, 60, mini_batch_size, 0.03, validation_data, test_data, lmbda0.1) 这一次我们获得了99.23%的准确率超过了S型激活函数的99.06%. ReLU的优势是max(0,z)中z取最大极限时不会饱和不像是S函数这有助于持续学习。 5.使用卷积神经网络 — 两个卷基层线性修正单元(ReLU)正则化拓展数据集 拓展训练集数据的一个简单方法是将每个训练图像由一个像素来代替无论是上一个像素下一个像素或者左右的像素。其他的方法也有改变亮度改变分辨率图片旋转扭曲位移等。 我们把50000幅图像人为拓展到250,000幅图像。使用第4节一样的网络因为我们是在训练5倍的数据所以减少了过拟合的风险。 expanded_training_data, _, _ network3.load_data_shared( ../data/mnist_expanded.pkl.gz) net Network([ ConvPoolLayer(image_shape(mini_batch_size, 1, 28, 28), filter_shape(20, 1, 5, 5), poolsize(2, 2), activation_fnReLU), ConvPoolLayer(image_shape(mini_batch_size, 20, 12, 12), filter_shape(40, 20, 5, 5), poolsize(2, 2), activation_fnReLU), FullyConnectedLayer(n_in40*4*4, n_out100, activation_fnReLU), SoftmaxLayer(n_in100, n_out10)], mini_batch_size) net.SGD(expanded_training_data, 60, mini_batch_size, 0.03, validation_data, test_data, lmbda0.1) 这次的到了99.37的训练正确率。 6.使用卷积神经网络 — 两个卷基层线性修正单元(ReLU)正则化拓展数据集继续插入额外的全连接层 继续上面的网络我们拓展全连接层的规模300个隐藏神经元和1000个神经元的额精度分别是99.46%和99.43%. 我们插入一个额外的全连接层 net Network([ ConvPoolLayer(image_shape(mini_batch_size, 1, 28, 28), filter_shape(20, 1, 5, 5), poolsize(2, 2), activation_fnReLU), ConvPoolLayer(image_shape(mini_batch_size, 20, 12, 12), filter_shape(40, 20, 5, 5), poolsize(2, 2), activation_fnReLU), FullyConnectedLayer(n_in40*4*4, n_out100, activation_fnReLU), FullyConnectedLayer(n_in100, n_out100, activation_fnReLU), SoftmaxLayer(n_in100, n_out10)], mini_batch_size) net.SGD(expanded_training_data, 60, mini_batch_size, 0.03, validation_data, test_data, lmbda0.1) 这次取得了99.43%的精度。拓展后的网络并没有帮助太多。 7.使用卷积神经网络 — 两个卷基层线性修正单元(ReLU)拓展数据集继续插入额外的全连接层弃权技术 弃权的基本思想就是在训练网络时随机的移除单独的激活值使得模型对单独的依据丢失更为强劲因此不太依赖于训练数据的特质。我们尝试应用弃权技术到最终的全连接层(不是在卷基层)。这里减少了迭代期的数量为40个全连接层使用1000个隐藏神经元因为弃权技术会丢弃一些神经元。Dropout是一种非常有效有提高泛化能力降低过拟合的方法 net Network([ ConvPoolLayer(image_shape(mini_batch_size, 1, 28, 28), filter_shape(20, 1, 5, 5), poolsize(2, 2), activation_fnReLU), ConvPoolLayer(image_shape(mini_batch_size, 20, 12, 12), filter_shape(40, 20, 5, 5), poolsize(2, 2), activation_fnReLU), FullyConnectedLayer( n_in40*4*4, n_out1000, activation_fnReLU, p_dropout0.5), FullyConnectedLayer( n_in1000, n_out1000, activation_fnReLU, p_dropout0.5), SoftmaxLayer(n_in1000, n_out10, p_dropout0.5)], mini_batch_size) net.SGD(expanded_training_data, 40, mini_batch_size, 0.03, validation_data, test_data) 使用弃权技术的到了99.60%的准确率。 8.使用卷积神经网络 — 两个卷基层线性修正单元(ReLU)正则化拓展数据集继续插入额外的全连接层弃权技术组合网络 组合网络类似于随机森林或者adaboost的集成方法创建几个神经网络让他们投票来决定最好的分类。我们训练了5个不同的神经网络每个都大到了99.60%的准去率用这5个网络来进行投票表决一个图像的分类。 采用这个方法达到了99.67%的准确率。 总结 卷积神经网络 的一些技巧总结如下 1. 使用卷积层极大地减小了全连接层中的参数的数目使学习的问题更容易 2. 使用更多强有力的规范化技术尤其是弃权和卷积来减小过度拟合 3. 使用修正线性单元而不是S型神经元来加速训练-依据经验通常是3-5倍 4. 使用GPU来计算 5. 利用充分大的数据集避免过拟合 6. 使用正确的代价函数避免学习减速 7. 使用好的权重初始化避免因为神经元饱和引起的学习减速
http://www.huolong8.cn/news/153476/

相关文章:

  • 沈阳做网站一诚金网络专业给个网站你们会感谢我的
  • 购物网站功能设计郑州seo询搜点网络效果佳
  • 做php网站时如何建立数据库广州建设网站的公司简介
  • 德阳建设厅官方网站找百度公司做网站怎么样
  • 南京市城乡建设局网站沈阳网站制作网页
  • 网站建设如何定位石家庄营销网站建设多少钱
  • 如何关闭网站国内主要的o2o电商平台
  • 怎么寻找做有意做网站的客户国模 wordpress
  • 免费建网站的作用深圳定制衣柜厂家
  • 温州快建网站建设网站优化外链
  • 曲靖做网站建设的公司爬闪数媒 网站建设
  • 理财平台网站建设wordpress直达链接404
  • 深圳网站建设小江物流相关网站
  • 免费做网页的网站网站系统问题解决措施
  • 生鲜农产品网站建设温州网站优化指导
  • 横峰县建设局网站网站后台 批量上传
  • 织梦添加网站名称添加新变量wordpress如何配置前端用户中心
  • 用html5做的网站源码杭州哪些做网站公司好
  • 遵义网站制作一般多少钱网站seo新手
  • 宁波外贸网站制作公司wordpress dux搜索无法使用
  • wordpress网站360搜索收录安徽六安有哪些区县
  • 旅游网站建设多少钱做监控的有哪些网站
  • 濮阳网站怎么做seo做海报一般都去什么网站看
  • 京东怎么做不同网站同步登陆的哪个网站是专门为建设方服务的
  • 贵州建设职业技术学院教务网站中国智媒体融合发展报告发布
  • 做网站大作业的心得体会宁波网站推广专业的建站优化公司
  • 潍坊网站建设方案外包都有哪些电商平台
  • 什么是建设企业网站同个主体新增网站备案
  • 网站建设网络大连谷歌seo公司
  • 手机网站 wordpress网站开发用户注册