神经网络介绍

什么是神经网络

人工神经网络artificial neural network,缩写ANN,简称神经网络neural network,是一种模拟动物神经网络(动物大脑)的数学模型。可以将其理解为一个多元方程式,对任意问题进行估计或拟合。
神经网络主要由:输入层、隐藏层、输出层构成。当隐藏层只有一层时,该网络为两层神经网络,因为输入层未作任何变换,可以不看做成单独的一层。实际中,网络输入层的每个神经元代表一个特征,输出层神经元个数代表分类标签的个数。
对于二分类任务,如果采用sigmoid分类器,输出层的神经元个数为1个;如果采用softmax分类器,输出层神经元个数为2个。对于多分类任务,分类类别≥3时,输出层神经元个数与类别大小相等。一个基本的两层神经网络如下图所示:
image.png

多层神经网络

以简单的两层神经网络为例,使用上标方括号表示层数,下标表示第几个神经元。例如a1[2]表示第1层第二个神经元。
image.png

前向传播

前向传播就是从输入层到输出层,计算每一层每个神经元的激活值。以上面简单的两侧神经网络为例,从输入层开始,每个神经元输出的计算公式如下,不考虑偏置。
image.png

损失函数

神经网络中,通过损失函数来度量模型的预测值和真实值之间的差异,它是一个非负实值函数,且处处可导,损失函数越小,模型的鲁棒性也好。
在模型的训练阶段,每个批次的训练数据送入模型后,通过前向传播输出预测值,此时使用损失函数计算出预测值和真实值之间的差异,即分布偏差。得到偏差之后,通过反向传播得到权值梯度,优化函数更新权值,来降低预测值与真实值之间的损失,从而达到学习的目的。

反向传播

反向传播BP,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。该方法对网络中所有权重计算损失函数的梯度。这个梯度会反馈给最优化方法,用来更新权值以最小化损失函数。同样,以上面简单的两层神经网络为例,计算所有权值对损失函数的梯度
image.png
image.png
需要注意的一点是,影响权重的梯度因素包括损失函数的导数、激活函数的导数、节点的输入值、权重值

优化函数

经过反向传播得到各个权重参数的梯度,需要使用优化函数来更新权值,来缩短网络预测值和真实值之间的偏差,拟合真实数据分布。
下图描述了权重参数与损失值之间的关系,通过优化函数更新权重参数,使得损失值不断缩小,达到最小值。
image.png

参考链接

  • https://blog.csdn.net/red_stone1/article/details/78018269
  • https://blog.csdn.net/weixin_39910711/article/details/100775918
  • https://zhuanlan.zhihu.com/p/36564434
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值