在507干活的第2天

额外1:总览整个神经网络的工作过程

由于今天睡得太多,脑子昏昏沉沉的,所以看新东西很费劲,于是我决定总览一下整个神经网络的工作过程。

神经网络的作用是通过输入一组数据,与预期的输出结果进行对比,然后对比以后调整中间层的权值和阈值,从而自动输出其他没有预期输出结果的数据的模型。

其中代价函数是用于对“与预期的输出结果进行对比”量化的函数。比如二次代价函数,还有交叉熵代价函数。

如何调整中间层的权值和阈值呢?就通过梯度下降法来调整。

梯度下降法指的是:针对以w和b作为函数2个自变量的代价函数,在w和b的两个方向上的偏导是它使代价函数减小所走的的步长。

走的步长是

写成向量形式是  ΔC≈∇C⋅Δv

为了保证代价函数一直在减小,所以应该令ΔC始终为负数。那么Δv=−η∇C

ΔC≈−η∇C⋅∇C=−η||∇C||2            此时的ΔC可以显而易见的看出,它一定小于0。

为了使我们的梯度下降法能够正确地运行,我们需要选择足够小的学习速率η使得上面的等式能得到很好的近似。如果不那么做,我们将会以ΔC>0结束,这显然不是一个很好的结果。与此同时,我们也不能把η变得过小,因为如果η过小,那么梯度下降算法就会变得异常缓慢。



知识点1:正则化

但是我们不愿减小网络规模,因为大的网络潜力更大。所以用另一种方法,称为正则化。

一种正则化的方法称为权重衰减(L2正则化)。数学形式如下


本质上就是加了一个权重平方的均值。

他的目的是为了让神经网络倾向于学习权值更小的部分。

对于偏置b来说,由于增加的是权重,对b求偏导的效果是一样的。所以b的学习方式不变。

对于权重w来说,由于增加了一个权重量w,学习的方式变为如下形式


在这个公式里,权值用调整。这让权值得到了衰减,所以称为权值衰减。

但是我依然不能理解为什么要学习权值更小的部分。

有一个说法是这样的:一个小权重的神经元,如果输入的有一些噪声,那么其对最终结果的影响比较小。反之,大权重的神经元,噪声对最终结果的影响比较大。

为了让我们的模型更泛化(预测准确度更高),我们需要一个简单的模型,而不是一个能完美拟合所有点的复杂模型。因为这些点的分布很有可能受到某些噪声的影响。

所以我们要减小噪声的影响,所以选择小权重的神经元。

但是这个理论的对错还是有待商榷的。因为不一定简单模型就是正确的模型。(笑)


另外:学习速率是可以随着学习而变化的,所以权值衰减的另一个意思就是权值会随着学习而越来越少。


知识点2:softmax

在计算输出结果的时候,我们不使用sigmoid函数,而是使用softmax函数。其数学形式如下


它有很多很好的特征。首先是所有的输出,总和为1。当其自变量增加,输出的激活值也随之增加。

因此,我们可以得到一个结论:从 softmax 层得到的输出可以看做是一个概率分布。

在许多问题中,我们可以很方便地将输出激活值看作是神经网络认为结果是的概率。比如,在 MNIST 分类问题中,我们可以将看作是神经网络认为这个数字是的概率估计。


知识点3:log-likelihood函数

log-likelihood函数是一个单价函数,用来搭配softmax函数的输出层。

我们可以将 softmax 输出层与 log-likelihood 代价函数的搭配,类比成 sigmoid 输出层与交叉熵代价函数的搭配。

其数学形式如下


代表一个图像是7的概率,他可以由softmax层得到。当其很大时,它接近1,那么C将会接近0.反之,它远离1,那么C就会远离0.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值