|
|
51CTO旗下网站
|
|
移动端

2.6 关于隐层和隐层神经元的实验

《Python深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》第2章前馈神经网络,本章的重点是为FNN 和其他网络拓扑的常见实现问题提供解决方案。本章讨论的技术也适用于后续内容。本节为大家介绍关于隐层和隐层神经元的实验。

作者:程国建/周冠武 译来源:机械工业出版社|2018-08-30 18:55

2.6 关于隐层和隐层神经元的实验

一般神经网络中最常用的层是完全连接的层。在全连接层中,两个连续层中的神经元都是成对连接的。但是,同一隐层中的神经元之间不会共享任何连接。如前所述,层与层之间的连接权重也称为可训练参数。这些连接的权重由网络进行训练。连接越多,参数越多,建模越复杂。大部分***进的模型都有超过1 亿个参数。但是,具有多个层次和神经元的深度神经网络需要更多的时间来训练。而且,对于非常深的模型,推断预测要花费更长的时间(这在实时环境中可能存在问题)。下面将介绍其他常用网络特有的层类型。

选择正确数量的隐层和隐层神经元可能很重要。当使用的节点太少时,模型将无法拾取所有的信号,这会导致精度降低和预测性能变差(欠拟合)。使用太多的节点,模型将倾向于过度训练数据(见正规化技术,防止过拟合),泛化能力差。因此,要看验证数据的性能,才能找到适当的平衡。在下一个方案中,将展示一个过拟合的例子,并输出可训练参数的数量。

如果有大量可用的高维训练数据,则深度FNN 表现良好。对于简单的分类或回归任务,通常单层神经网络效果***。

如何去做…

1)导入函数库和数据集:

2)加载数据集:

3)将数据集分解为训练数据和测试数据:

4)标准化输入数据:

5)定义模型和优化器并进行编译:

6)设置超参数并训练模型:

7)对测试集进行测试:

8)绘制训练精度及验证精度图例:

获得图2.12 所示结果。

应该重点关注验证精度,并且在大约450 个周期之后使用早停法来停止训练。这将产生***的验证精度。在用正则化提高泛化能力添加Dropout 措施以防止过拟合的内容中,介绍防止过拟合的技术。通过使用这些技术,可以创建更深的模型,而不会过拟合训练数据。

更多…

一般来说,对于FNN,使用的隐层神经元数量逐层减少。这意味着在***个隐层使用的隐层神经元最多,并且减少每个附加隐层的隐层神经元数量。通常隐层神经元的数量在每个步骤中除以2。请记住,这是一个经验法则,隐层和隐层神经元的数量应根据验证结果,通过反复试验与减小误差来获得。

在第13 章 网络内部构造 和第14 章 预训练模型 中,将介绍隐层和隐层神经元数量的优化技巧。

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书会第9群:808517103

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

16招轻松掌握PPT技巧

16招轻松掌握PPT技巧

GET职场加薪技能
共16章 | 晒书包

289人订阅学习

20个局域网建设改造案例

20个局域网建设改造案例

网络搭建技巧
共20章 | 捷哥CCIE

645人订阅学习

WOT2019全球人工智能技术峰会

WOT2019全球人工智能技术峰会

通用技术、应用领域、企业赋能三大章节,13大技术专场,60+国内外一线人工智能精英大咖站台,分享人工智能的平台工具、算法模型、语音视觉等技术主题,助力人工智能落地。
共50章 | WOT峰会

0人订阅学习

读 书 +更多

C#2005编程进阶与参考手册

本书非常详细而全面地介绍了C#程序设计语言。本书不是“5分钟学习C#”式的手册,也不是那种教您“照猫画虎”地创建一些与您的实际工作需要...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客