深度学习记录--正则化(regularization)

什么是正则化?

正则化(regularization)是一种实用的减少方差 (variance )的方法,也即避免过度拟合

几种正则化的方法

L2正则化

又被称为权重衰减(weight dacay)

在成本函数中加上正则项:

其中

由于在w的更新过程中会递减,即权重衰减

w递减的过程,实际上是w趋近于0的过程

在这个过程中,部分单元的影响逐渐减小(可以近似看作隐藏 ),最终成为深层神经网络(类似线性回归),从最开始的右图逐渐变为左图,即从high variance --> high bias

在变化的中间存在一个just right的状态,这个状态则是最优情况

缺点:

为了搜索合适的正则化参数lambda,需要进行大量验证计算,花费时间很长

dropout(随机失活)

dropout基本原理:将神经网络中的部分单元进行随机删除/失活 (将它们的影响降至几乎不存在),让原本的神经网络样本训练规模变小

常用方法:inverted dropout(反向随机失活)

设置一个概率参数keep_prob,在例子中设置为0.8,表示有0.2的概率让单元失活

设置bool矩阵d3,将a3矩阵与d3矩阵进行矩阵乘法 运算,然后a3/=keep_prob,保持未被失活单元的数据的完整性

代码实现:

python 复制代码
import numpy as np
a3=np.random.rand(3,3)
print("before dropout : \n",a3)
keep_prob=0.8
# print(a3.shape[0],a3.shape[1])
d3=np.random.rand(a3.shape[0],a3.shape[1])<keep_prob
# print("d3 = ",d3)
a3=np.multiply(a3,d3)
a3/=keep_prob
print("after dropout : \n",a3)

运行结果:

dropout合理性的解释

dropout会压缩权重(shrink weights),完成预防过拟合的外层正则化(类似L2正则化的功能),与L2正则化不同的是,dropout对不同的应用方式,会产生不同的效果

keep_prob的数值越小,dropout的效果越显著

对于某些层,若担心过拟合,可以设置更小的keep_prob参数值,而对于其他层,若无需使用dropout,则可以设置keep_prob=1

缺点

需要进行许多验证来得出不同的keep_prob参数值

同时,因为每次迭代部分节点都会被随机移除,J函数的定义无法被明确给出,难以对递减程度进行评估与复查

数据扩增data augmentation

当无法获得充足的数据时,又需要大量的数据时,则会选择这种方法:

对原有数据进行一定的处理,产生新的数据

缺点

需要额外的算法验证,对新数据判断是否合理

early stopping

只需运行一次梯度下降,找到w的较小值,中间值和较大值

在梯度下降过程中及时停止,得到较合理的dev set error和train set error

相关推荐
余衫马1 小时前
llama.cpp:本地大模型推理的高性能 C++ 框架
c++·人工智能·llm·llama·大模型部署
deephub1 小时前
Google开源Tunix:JAX生态的LLM微调方案来了
人工智能·深度学习·google·微调·大语言模型·jax
数据与人工智能律师2 小时前
数字人民币钱包抉择:匿名自由与实名安全的法律风险评估
大数据·人工智能·python·云计算·区块链
云安全联盟大中华区2 小时前
以美为鉴:构建现代化的核能行业网络安全合规体系--为人工智能革命提供动力
人工智能·安全·web安全
沉默媛2 小时前
扩散模型-图像编辑【An Edit Friendly DDPM Noise Space: Inversion and Manipulations】
人工智能·计算机视觉·cvpr·扩散模型·图像编辑·ddpm
nju_spy2 小时前
2023 美赛C Predicting Wordle Results(上)
人工智能·机器学习·数学建模·数据挖掘·arima·时间序列预测·相关性分析
Hcoco_me2 小时前
YOLO入门教程(番外):卷积神经网络—图像卷积
深度学习·yolo·cnn
用户5191495848452 小时前
网络安全工具与社区讨论月报
人工智能·aigc
技术闲聊DD3 小时前
深度学习(1)-利用Pytorch2结合U-Net大模型实现图像降噪
pytorch·深度学习·手写体识别·u-net模型
用户5191495848453 小时前
AWS Direct Connect在菲律宾马卡蒂市推出100G扩展服务
人工智能·aigc