训练神经网络的五大算法

发布时间:2024-12-01 08:54

人的大脑大约有1000亿个神经元,构成复杂的思维网络。 #生活知识# #常识#

训练神经网络的五大算法

最新推荐文章于 2024-10-30 08:00:00 发布

csdn_csdn__AI 于 2016-10-23 22:31:14 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文: 5 algorithms to train a neural network
作者: Alberto Quesada 译者: KK4SBB
责编:何永灿,关注人工智能,投稿请联系 heyc@csdn.net 或微信号 289416419

神经网络模型的每一类学习过程通常被归纳为一种训练算法。训练的算法有很多,它们的特点和性能各不相同。

问题的抽象

人们把神经网络的学习过程转化为求损失函数f的最小值问题。一般来说,损失函数包括误差项和正则项两部分。误差项衡量神经网络模型在训练数据集上的拟合程度,而正则项则是控制模型的复杂程度,防止出现过拟合现象。

损失函数的函数值由模型的参数(权重值和偏置值)所决定。我们可以把两部分参数合并为一个n维的权重向量,记为w。下图是损失函数f(w)的图示。

如上图所示,w*是损失函数的最小值。在空间内任意选择一个点A,我们都能计算得到损失函数的一阶、二阶导数。一阶导数可以表示为一个向量:

ᐁif(w) = df/dwi (i = 1,…,n)

同样的,损失函数的二阶导数可以表示为海森矩阵( Hessian Matrix ):

Hi,jf(w) = d2f/dwi·dwj (i,j = 1,…,n)

多变量的连续可微分函数的求解问题一直被人们广泛地研究。许多的传统方法都能被直接用于神经网络模型的求解。

一维优化方法

尽管损失函数的值需要由多个参数决定,但是一维优化方法在这里也非常重要。这些方法常常用于训练神经网络模型。

许多训练算法首先计算得到一个训练的方向d,以及速率η来表示损失值在此方向上的变化,f(η)。下图片展示了这种一维函数。

f和η*在η1和η2所在的区间之内。

由此可见,一维优化方法就是寻找到某个给定的一维函数的最小值。黄金分段法和Brent方法就是其中两种广泛应用的算法。这两种算法不断地缩减最小值的范围,直到η1和η2两点之间的距离小于设定的阈值。

网址:训练神经网络的五大算法 https://www.yuejiaxmz.com/news/view/332000

相关内容

节省显存新思路,在 PyTorch 里使用 2 bit 激活压缩训练神经网络
大规模神经网络最新文献综述:训练高效DNN、节省内存使用、优化器设计
Matlab代码实践——BP神经网络
神经网络与智能家居:未来的智能生活
Tensorflow笔记之【神经网络的优化】
【机器学习】深度神经网络(DNN):原理、应用与代码实践
AI = 神经网络?这8个技术就不是!
临河区开展网络安全培训暨2024年网络安全应急演练
揭秘可达圈算法:网络布局背后的神奇力量,如何优化你的社交网络?
帮推 | 校级竞赛+大佬手把手培训“互联网+”、“挑战杯”+小白训练营=?

随便看看