美文网首页
神经网络入门-下

神经网络入门-下

作者: 元宝的技术日常 | 来源:发表于2020-04-26 22:31 被阅读0次

    3、目标函数

    上文中引用到“从观测数据中进行学习”,既然是学习,就应该设立个目标,来检验是否学到应学的知识、能力。放到深度学习中,就是目标函数。

    目标函数,又叫做代价函数或者损失函数。主要作用是评测此神经网络和数据是否拟合。

    举例说明,对于一组数据特征为[x1,x2,x3,x4,x5],标签值-y是1;经过神经网络后结果-y^ 为0.6,这时的目标函数就可以是y 和 y^ 差的绝对值 -- |y - y^| = 0.4。可以看出,当y^ 和 y越接近时,目标函数越小,神经网络和数据的拟合度越高。

    常见的目标函数:
    平方差损失 和 交叉熵损失。

    4、梯度下降和学习率

    上文中写到,一个神经元的计算过程,是特征和Wt进行点乘,再经过一个非线性的转换函数;整个过程中未知量只有Wt,所以想要目标函数拟合度提高,只需改变Wt中的各个参数就行。用数学推导可以解决一部分问题,像机器学习文集的推导一些算法时,最终通过公式直接可以求出最优解;但深度学习的神经元只是一个小单元,在更深更广的神经网络中,是没有办法直接推导出最优解的。那怎么办呢?

    最常见的思路就是 -- 梯度下降。

    看过很多的解释,最常见的就是把梯度下降比作下山时的过程,寻找坡度陡一些的向下的方向,走一段,再观察下,选择坡度陡一些的向下的方向,走一段,循环往复,直到走到陆地。

    个人觉得这个解释很贴切,“梯度”就是找出较陡的方向,“下降”就是顺着较陡方向向下走;放到梯度下降的数学解释中,就是通过目标函数求出当下的梯度,梯度代表的是数据增长最快的方向,取负则正是
    “坡度陡一些的向下”。所以梯度下降的过程,正是深度学习在正确学习的方向上不断进步的过程。数学的推导如下:

    梯度下降

    θ为Wt,要求的变量;α则是学习率,也被称为步长,可以用来控制下降的速度,α并不是越大越好,也不是越小越好,太大,可能下降的过程中错过的最小点,太小,下降的速度太慢,导致运算量过大,这个阿尔法是根据具体情况人为设定的。

    梯度下降常见的算法有:批量下降算法(BGD),随机下降算法(SGD)和折中的(MBGD)。这里就不一一介绍了。

    5、结语

    深度学习一般会包含这几类技术,从数据开始,经过一层又一层的网络,将这些数据背后的价值转换出来,将存储的历史数据中,剥茧抽丝,提取内在的规律,使其焕发出新的活力。

    相关文章

      网友评论

          本文标题:神经网络入门-下

          本文链接:https://www.haomeiwen.com/subject/ztjhwhtx.html