跳过连接消除奇点一文解释了使用跳过连接来打破深度网络中的奇点,但我还没有完全理解什么是奇点。
有什么通俗易懂的解释吗?
跳过连接消除奇点一文解释了使用跳过连接来打破深度网络中的奇点,但我还没有完全理解什么是奇点。
有什么通俗易懂的解释吗?
首先,我邀请您对这个答案持保留态度(并可能提出修改建议),因为我自己并不特别熟悉奇点问题。另外,我为答案底部的所有链接道歉,由于我在这个特定交换中的声誉,我无法在整个答案中重复使用链接。
这似乎是指代数几何中的奇异点。在奇异点处,不能使用通常的方法来定义奇异对数。这与规则(即非奇异点)相反,规则(即非奇异点)可以规则地定义一个(并且只有一个)切线。
用更简单的术语,特别是关于神经网络,它指的是超曲面(例如线、平面、曲面等)上的梯度/斜率不明确的点。
在上图中,超空间是一条线。在这条线上,在 (0,0) 处有一个奇点,线与自身相交。此时,有两个斜坡(一个上升,另一个下降)。如果不应用任意规则,就无法在斜率之间进行选择,因此梯度是不明确的。
这些奇点对于深度学习中使用的一些算法来说是有问题的,例如梯度下降,它使用目标函数(例如损失函数)的导数来搜索产生最低误差的权重/参数。
对于不熟悉梯度下降的人来说,奇异点的问题可以通过下面的例子来理解:
假设上面的线代表一条路径。从右上角开始,您想要找到路径上的最低点。在任何时候,你所能知道的只是当前点的斜率。你可以自由地左转或右转,但永远不会向上移动,所以你一到谷底就会停下来。
最初向下和向左移动,您最终会到达奇点,需要选择向左或向右。因为您没有关于当前位置之外的路径的信息,所以您无法知道哪条路通向路径的底部。
如果您随机选择,您有 50% 的机会卡在路径左侧环路底部的山谷中。
你可以强加一个规则,比如“总是遵循与当前梯度最不同的梯度”,然后你会向右走,找到真正的最低点。但是,如果路径稍有不同(例如,如果它在 (0.25, 0.25) 处向上弯曲,这将很糟糕,因为正确的路径将在左侧。
在实践中,如果不深入了解目标函数的超曲面,就无法知道哪种方式更好(如果您对目标函数了解很多,则可能一开始就不需要使用机器学习)。
我发现这一点是为了回答这个问题,因此,作为理由,这里是我用来得出这个结论的过程和资源:
我翻阅了您链接的论文中的参考资料。特别相关的是Amari 等人。(2006 年),其中提到了 Hironaka 的奇点解析定理。
在介绍性段落中,维基百科页面提到了 Non-Singularity Variety 的概念,并在 Algebraic Geometry 中的奇异点上链接到此页面。
关于奇异点文章的示例类似于Amari 等人中许多图形的一维超曲面版本。(例如图 1、2、4、5 和 6),并且其中的讨论通常集中在形状会聚的点上。
我的答案是根据这个发现过程以及我对梯度下降的先验知识组成的