TensorFlow笔记之常见七个参数
对TensorFlow深度学习中常见参数的总结分析
神经网络中常见的参数有:初始学习率、学习率衰减率、隐藏层节点数量、迭代轮数、正则化系数、滑动平均衰减率、批训练数量七个参数。 对这七个参数,大部分情况下,神经网络的参数选优是通过实验来调整的。 一个想法是,通过测试数据来评判参数的效果,但是这种方法会导致过拟合测试数据,失去评判未知数据的意义。而我们训练神经网络的目的,恰恰是为了预测未知数据。 所以,为了评判各种参数的效果,一般会从训练数据中抽取一部分作为验证数据。 验证数据的选取方法也是非常重要的,一般来说选取的验证数据分布越接近测试数据分布,模型在验证数据上的表现越可以体现模型在测试数据上的表现。
不同参数模型的效果比较
以前提到过,设计神经网络时候的
5种优化方法。一个是神经网络结构设计上,需要使用激活函数和多层隐藏层;另一个是,神经网路优化时,可以使用指数衰减的学习率、加入正则化的损失函数、滑动平均模型。 影响最大的是:调整神经网络的结构,包括隐藏层和激活函数。这说明,神经网络的结构对最终模型的效果有本质影响。 另外的,滑动平均模型、指数衰减率和正则化项对正确率的提升并不是特别明显。这是因为滑动平均模型和指数衰减的学习率在一定程度上都是限制神经网络中参数更新的速度。如果模型的收敛速度很快,这两种优化对最终模型的影响不大。 这两个个优化手段,能否说优化作用不大呢? 其实不是的。当问题更加复杂时,迭代不会这么快接近收敛,这时候滑动平均模型和指数衰减的学习率可以发挥更大的作用。 还有一个正则化项,对模型效果带来的提升要相对显著。使用了正则化项损失函数的神经网络模型可以降低大约6%的错误率。 只优化交叉熵的模型可以更好的拟合训练数据(交叉熵损失更小),但是却不能很好的挖掘数据中潜在的规律来判断未知的测试数据,所以在测试数据上正确率低。
总结一下的话,激活函数和隐藏层对模型的效果带来质的飞跃;滑动平均模型、学习率衰减率、正则化项对最终正确率的提升效果不明显,但是需要解决的问题和使用的神经网络更加复杂时,这些优化方法将更有可能对训练效果产生更大的影响。
TensorFlow笔记之常见七个参数的更多相关文章
- tensorflow笔记(一)之基础知识
tensorflow笔记(一)之基础知识 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7399701.html 前言 这篇no ...
- tensorflow笔记(三)之 tensorboard的使用
tensorflow笔记(三)之 tensorboard的使用 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7429344.h ...
- tensorflow笔记(四)之MNIST手写识别系列一
tensorflow笔记(四)之MNIST手写识别系列一 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7436310.html ...
- tensorflow笔记(五)之MNIST手写识别系列二
tensorflow笔记(五)之MNIST手写识别系列二 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7455233.html ...
- tensorflow笔记:多层LSTM代码分析
tensorflow笔记:多层LSTM代码分析 标签(空格分隔): tensorflow笔记 tensorflow笔记系列: (一) tensorflow笔记:流程,概念和简单代码注释 (二) ten ...
- 深度学习Bible学习笔记:第七章 深度学习中的正则化
一.正则化介绍 问题:为什么要正则化? NFL(没有免费的午餐)定理: 没有一种ML算法总是比别的好 好算法和坏算法的期望值相同,甚至最优算法跟随机猜测一样 前提:所有问题等概率出现且同等重要 实际并 ...
- TensorFlow笔记-08-过拟合,正则化,matplotlib 区分红蓝点
TensorFlow笔记-08-过拟合,正则化,matplotlib 区分红蓝点 首先提醒一下,第7讲的最后滑动平均的代码已经更新了,代码要比理论重要 今天是过拟合,和正则化,本篇后面可能或更有兴趣, ...
- TensorFlow笔记-07-神经网络优化-学习率,滑动平均
TensorFlow笔记-07-神经网络优化-学习率,滑动平均 学习率 学习率 learning_rate: 表示了每次参数更新的幅度大小.学习率过大,会导致待优化的参数在最小值附近波动,不收敛:学习 ...
- TensorFlow笔记-06-神经网络优化-损失函数,自定义损失函数,交叉熵
TensorFlow笔记-06-神经网络优化-损失函数,自定义损失函数,交叉熵 神经元模型:用数学公式比表示为:f(Σi xi*wi + b), f为激活函数 神经网络 是以神经元为基本单位构成的 激 ...
随机推荐
- JAVA web端JS下载excel文件
JSP代码如下: JSP端引入jquery.easyui.min.js库: <script type="text/javascript" src="<c:ur ...
- [UE4]Menu Anchor,菜单锚点
一.想要弹出某个菜单的时候,Menu Anchor可以做为菜单弹出的位置. 二.Menu Anchor本身不显示任何东西 三.Menu Class:选择要弹出的UI,可以是任意的UserWidget ...
- WPF Chart
https://quant.stackexchange.com/questions/7065/how-to-create-charts-in-wpf-finance-applications
- Lepus监控之安装部署
PHP和Python都是跨平台的语言,所以理论上系统应该可以支持在不同的平台上运行.但是由于时间和精力以及资源有限,目前天兔系统只测试完善了Centos/RedHat系统的支持.我们目前提供的技术支持 ...
- 涂抹mysql笔记-管理mysql库和表
mysql的表对象是基于库维护的,也就是说它属于某个库,不管对象是由谁创建的,只要库在表就在.这根Oracle不同Oracle中的表对象是基于用户的.属于创建改对象的用户所有,用户在表就在.mysql ...
- 自然语言处理NLP-云端API汇总
Google Google Cloud:https://cloud.google.com/natural-language/ ParallelDots ParallelDots, Inc. 无需训练, ...
- Spark+Scalar+Mysql
包:mysql-connector-java-5.1.39-bin.jar 平台:Win8.1 环境:MyEclipse2015 hadoop-2.7.3.tar.gz + winutils.exe ...
- feign接口调用异常的解决方向
1. consul: 检查调用方服务与被调用方服务是否在同一个consul; 2. swagger: 检查swagger注释是否清晰.恰当: 比如: @ApiImplicitParams(value ...
- Spring MVC Controller异常处理总结
在项目开发过程中,经常遇到服务被攻击的情况,虽然接口在设计过程中有相当多的安全措施,例如cookie校验.风控.访问熔断等相关技术保证服务的安全性,不过感觉还是有必要收集分析一下这些攻击请求者,以备为 ...
- WPF DEV dxc:ChartControl 柱状图
先上效果图: <UserControl xmlns:dxc="http://schemas.devexpress.com/winfx/2008/xaml/charts" mc ...