前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >每日一问之鞍点(saddle point)

每日一问之鞍点(saddle point)

作者头像
caoqi95
发布2019-03-28 11:49:50
3.6K0
发布2019-03-28 11:49:50
举报
文章被收录于专栏:caoqi95的记录日志

今天开始在 GitHub 上刷每日一题,但是很快就被一道题卡住了。题目如下所示:

结合自己的情况并针对这道问题,整理出了以下概念:

  • 什么是鞍点?
  • 什么是 Hessian 矩阵?
  • 如何证明一个点为鞍点?
  • 局部最小值和鞍点的区别?

什么是鞍点

在维基中的定义如下:

In mathematics, a saddle point or minimax point is a point on the surface of the graph of a function where the slopes (derivatives) in orthogonal directions are all zero (a critical point), but which is not a local extremum of the function.

在数学中,鞍点或极小值点是函数图形表面上的一个点,其正交方向上的斜率(导数)均为零(临界点),但不是函数的局部极值。一句话概括就是:

一个不是局部极值点的驻点称为鞍点

*驻点:函数在一点处的一阶导数为零。

如下图所示,是函数 z = x2 - y2 图像,其鞍点在 (0, 0) 位置。函数 z 的整个曲面看上去就像是一个马鞍,其在 x 轴方向向上曲,在 y 轴方向向下曲。所以这也是鞍点这个名字的由来。

附上一张吴恩达大大的画作,哈哈。

什么是 Hessian 矩阵

在维基中的定义如下:

In mathematics, the Hessian matrix or Hessian is a square matrix of second-order partial derivatives of a scalar-valued function, or scalar field. It describes the local curvature of a function of many variables.

在数学中,Hessian 矩阵是标量值函数或标量场函数的二阶偏导数的方块矩阵。它描述了许多变量函数的局部曲率,可以用于判定多元函数的极值。假设有一实数函数 f: Rn→ R ,是关于输入 x (xRn) 及输出 f(x) ∈ R 之间的关系式。如果其所有的二阶偏导数都存在,并且在该函数的领域上连续,那么 Hessian 矩阵 H 是一个 n×n 的矩阵,通常如下定义:

如何证明一个点为鞍点

Hessian 矩阵是一个凸函数,并且是正半定的。通过这一属性,我们可以测试临界点 x 是局部最大值,或者是局部最小值还是鞍点。如下所示:

  • 如果 Hx 处为正定矩阵时,则函数 fx 处有一个局部极小值;
  • 如果 Hx 处为负定矩阵时,则函数 fx 处有一个局部极大值;
  • 如果 Hx 处为不定矩阵时(即同时有正特征值和负特征值),则函数 fx 处为鞍点。

所以,一个简单标准的方法验证一个静止点是否为一个实数函数的鞍点,就是计算该函数的在该点上的 Hessian 矩阵。如果该 Hessian 矩阵为不定的,则该点为该函数的鞍点。

局部极小值和鞍点

局部极小值和鞍点的相同点是,在该点处的梯度(导数)都为零。从上面可以看出,局部极小值和鞍点的区别就在于,在该点处的 Hessian 矩阵的特性。如果 Hessian 矩阵在该点处是正定的,则为局部极小值;如果为不定的,则为鞍点。

鞍点通常是神经网络训练的困难之处。如下图所示,是一个包含两个参数的神经网络,是一个低维度的图,可以发现其存在很多的局部极小值,训练神经网络的时候,通常会陷入这些极小值中。事实上,建立的神经网络包含大量的参数,造成局部最优的困惑不是这些极小值点,而是零梯度点,通常为鞍点。

为什么说鞍点是训练神经网络的困难之处呢?因为鞍点的存在,会有一个平稳段,在该平稳段,函数的导数会长时间接近于 0,这使得神经网络的训练变得缓慢。

最后,总结到这里,大家也都知道开篇这道题目的答案了吧。

参考

[1]. Saddle point - Wikipedia

[2]. Hessian matrix - Wikipedia

[3]. 鞍点 - CSDN博客

[4]. 吴恩达 - 深度学习课程

P.S:文中有错欢迎指出,互相学习。以及欢迎关注我的公众号 :)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.12.27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是鞍点
  • 什么是 Hessian 矩阵
  • 如何证明一个点为鞍点
  • 局部极小值和鞍点
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档