Iul*_*sca 8 artificial-intelligence backpropagation neural-network hessian-matrix
Hessian
在优化神经网络的学习过程时,任何人都可以用一种简单且不太数学的方式向我解释什么是实践中的工作方式和工作方式?
lej*_*lot 17
要了解Hessian,首先需要了解Jacobian,并了解Jacobian,你需要理解衍生物
现在,衍生物向您展示了函数本身的动态.但是你可以更进一步,如果你可以使用这种动态来找到函数的最优值,也许你可以做得更好,如果你发现这种动力学的动态,那么 - 计算二阶导数?这正是Hessian的意思,它是你函数的二阶导数矩阵.它捕捉了衍生物的动态,因此变化的变化速度(以何种方向).第一眼看上去似乎有点复杂,但如果你想一会儿就会变得非常清楚.你想走向渐变的方向,但你不知道"多远"(正确的步长是多少).所以你定义了新的,更小的优化问题,你在问"好吧,我有这个渐变,我怎么知道去哪里?" 并使用衍生物(以及衍生物的衍生物形成Hessian)类似地解决它.
您也可以用几何方式来看待这一点 - 基于梯度的优化近似于线的功能.您只需尝试在当前点找到最接近您的函数的线,因此它定义了更改方向.现在,线条非常原始,也许我们可以使用一些更复杂的形状,如....抛物线?二阶导数,粗麻布方法只是试图将抛物线(二次函数,f(x)= ax ^ 2 + bx + c)拟合到当前位置.并基于此近似 - 选择有效步骤.
有趣的是,将动量项添加到基于梯度的优化是(在充分条件下)近似基于粗糙度的优化(并且计算成本远低得多).