IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 改善深层神经网络:超参数调试、正则化以及优化(一)- 深度学习的实践层面 -> 正文阅读

[人工智能]改善深层神经网络:超参数调试、正则化以及优化(一)- 深度学习的实践层面

本次学习笔记主要记录学习深度学习时的各种记录,包括吴恩达老师视频学习、花书。作者能力有限,如有错误等,望联系修改,非常感谢!


第一版???????2022-05-16????????初稿

一、训练/验证/测试集(Train/Dev/Test sets)

在这里插入图片描述
训练神经网络时,我们做出很多决策,如:
神经网络分多少层、每层含有多少个隐藏单元、学习速率、各层采用哪些激活函数。
首先要有idea,然后去编码,最后运行测试。

自然语言、视觉、语音、结构化数据(广告、搜索、安全、物流)
在这里插入图片描述
假设一训练数据,用长方形表示。
在这里插入图片描述
在训练集和测试集分布不匹配的情况下进行训练,假设要构建一个用户可以上传大量图片的应用程序,训练集是网络上抓下来的图片,测试集训练集是用户上传的图片。
要确保验证集和测试集的数据来自同一分布,测试集可没有,其目的是对最终所选定的神经网络系统做出无偏评估。
训练验证集和测试集能够加速神经网络的集成,也可以更有效的衡量算法的偏差和方差。

二、偏差/方差(Bias/Variance)

在这里插入图片描述
1.欠拟合 2.适度拟合 3.过拟合
在这里插入图片描述
在这里插入图片描述

三、机器学习基础(Basic Recipe for Machine Learning)

在这里插入图片描述
如果偏差较高,可以试着评估训练集或训练数据的性能,若真的很高无法拟合就要选择一个新网络(比如含有更多隐藏层或隐藏单元的网络或花更多时间训练网络)。
为了评估方差,查看验证集性能,能从一个性能理想的训练集推断出验证集的性能也理想不。方差高,最好解决方法采用更多数据,无法获得时,尝试通过正则化减少过拟合。

四、正则化(Regularization)

在这里插入图片描述
过拟合高方差,正则化或更多数据。
上图方法为L2正则化(更倾向)和L1正则化(L1至少不是为了压缩模型)
在这里插入图片描述
这个矩阵范数(即平方范数),被称为“弗罗贝尼乌斯范数”,用下标F表示,也可以下标2表示L2正则化但通常用F。L2范数正则化也被称为“权重衰减”

五、为什么正则化有利于预防过拟合(Why regularization reduces overfitting?)

在这里插入图片描述
代价函数J,含有参数w和b,是损失总和,添加正则项,可避免数据权值矩阵过大。
为什么压缩L2范数或弗罗贝尼乌斯范数或参数可减少过拟合?
拉姆他设置过大则权重矩阵w被设置为接近于0的值。我们尝试消除或至少减少许多隐藏单元的影响,最终网络变得简单。
直观上看像是大多隐藏单元被消除,实际上是该神经网络的所有隐藏单元依然存在。
在这里插入图片描述
如图双曲激活函数tanh,只要z非常小。根据图中w和z的公式,发现w小那么z就会小,每层几乎都是线性的,和线性函数一样。

若每层都是线性的,那么整个网络就是一个线性网络,即是一个非常深的深层网络,因具有线性激活函数的特征,最终我们只能计算线性函数。因此,它不适用于非常复杂的决策以及过度拟合数据集的非线性决策边界。

六、dropout正则化(Dropout Regularization)

在这里插入图片描述
dropout(随机失活),它复制左边的网络,遍历网络的每一层,并设置消除神经网洛中节点的概率。
设置节点概率后,删掉从该节点进出的连线,最后得到一个节点更少、规模更小的网络,然后用backdrop方法进行训练。
在这里插入图片描述
3层网络做说明:
keep-prob是一个具体数字
接下来从第三层中获取激活函数,若有50单元则意味着最后有10个单元被删除
在这里插入图片描述
测试阶段训练数据集,

七、理解dropout(Understanding Dropout)

在这里插入图片描述
dropout可以随机删除网络中的神经单元。dropout将产生收缩权重的平方范数的效果。

八、其他正则化方法(Other regularization methods)

在这里插入图片描述
扩增训练数据来解决过拟合。
在这里插入图片描述
early stopping表示提早停止训练,其主要缺点是不能独立的处理这两个问题。优点是只运行一次坡度下降,可找出w的较小值、中间值和较大值,无需尝试L2正则化超级参数λ的很多值。

机器学习包括及部分,其中一步是选择一个算法来优化代价函数,如梯度下降,还会介绍Momentum、RMSprop和Adam。

原理有时被叫做正交化(Orthogonalization)

九、归一化输入(Normalizing inputs)

在这里插入图片描述
归一化输入需要两个步骤,
1.零均值化,
2.归一化方差。
在这里插入图片描述
回想右上角代价函数,如图左为未归一化,右为归一化。

十、梯度消失/梯度爆炸(Vanishing/Exploding gradients)

在这里插入图片描述
假设训练如图极深的神经网络,此网络会含有l个w[]。用线性激活函数,忽略b,令b[L]=0。

十一、神经网络的权重初始化(Weight Initialization for Deep Networks)

在这里插入图片描述
不要b,sqrt(该层每个神经元的特征数量分之一)
relu函数则为分之二

十二、梯度的数值逼近(Numerical approximation of gradients)

在这里插入图片描述
梯度检验,作用是确保backprop正确实施。

十三、梯度检验(Gradient checking)

在这里插入图片描述
为了执行梯度检验,首先把所有参数转换成一个巨大的向量数据。
在这里插入图片描述
check后公式,分母只是用于预防这些向量太小或太大。

十四、梯度检验应用的注意事项(Gradient Checking Implementation Notes)

在这里插入图片描述
1.不要在训练中使用梯度检验,只用于调试
2.如果算法的梯度检验失败,要检查所有项,并试着找出bug
3.实施梯度检验时,注意正则化
4.不能与dropout同时使用
可以做,在随机初始化过程中,运行梯度检验,再训练网络

1


  1. 深度学习-吴恩达 ??

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-24 18:10:12  更:2022-05-24 18:13:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:40:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码