首页 > 代码库 > [翻译博文]线性隐层单元并不存在

[翻译博文]线性隐层单元并不存在

译自:Don‘t Interpret Linear Hidden Units, they do not exist!

http://building-babylon.net/2016/10/19/dont-interpret-linear-hidden-units-they-dont-exist/ 

已经训练好了模型,很自然的想到该如何理解该模型。数据点最大化隐层单元的激活函数,将数据点输入特征视为指示哪个单元来重组。下面是对隐层单元的误解:

  • 隐层没有非线性单元;
  • 层间权重无约束;
  • 采用(随机)梯度下降或类似算法训练模型;

 

在这样的情形下,我们需要将隐式的特征空间视为一个整体。

 

考虑对矩阵技术分享的分解,固定维度技术分享,将技术分享分解为矩阵的乘积技术分享。 模型的参数是一对具有合适维度的矩阵技术分享,输入向量x通过隐层后的像为技术分享。从隐层单元的激活函数的角度来看,技术分享固定了隐层特征空间的坐标系统,用来度量沿着每个坐标轴的向量的位移。若技术分享对应选定的坐标系统的单位向量,则内积技术分享沿着每个坐标轴所产生的位移可以分别用技术分享来度量。

下面,我们要证明:若技术分享是对隐层特征空间的任意旋转变换,那么模型参数技术分享技术分享一样可能会导致给定矩阵X的分解,而发生的概率仅仅取决于梯度下降的随机初始化。因此,隐层激活函数也有可能用技术分享来定义。隐层单元激活函数技术分享技术分享确实不同。既然技术分享是正交变换,那么技术分享。模型参数(即技术分享技术分享)的不确定性与坐标系统方向(即技术分享技术分享)的不确定性是一样的。选择坐标基是完全任意的,所以隐层单元的激活函数也是无意义的。

更一般化的情形,当技术分享是一个隐层特征空间的正交变换时,上面的证明也是成立,例如技术分享是旋转与反射的组合。

 

上述思想并不新鲜,因为Szegedy等人曾经采用实验验证隐层单元的解释。我们逐步来展示他们关于word2vec的陈述。

 

Their statement about word2vec...word representations, where the various directions in the vector space representing the words are shown to give rise to a surprisingly rich semantic encoding of relations and analogs. At the same time, the vector representations are stable up to a rotation of space, so the individual units of the vector representations are unlikely to contain semantic information.

 

 

给定矩阵技术分享以及维度技术分享,矩阵分解的任务就是要学到技术分享技术分享两个矩阵,使得其乘积能尽可能逼近原始的矩阵技术分享 参数空间由矩阵技术分享技术分享中所有的元素构成。

parameter vector: 技术分享

换个角度来讲,隐层的特征空间是技术分享维空间,包含了技术分享技术分享的列向量构成。

 

采用梯度下降训练矩阵分解模型时,通常需要使用误差函数的梯度(优化目标的梯度)来重复更新模型参数。 例如,误差函数可以是如下形式:

技术分享

值得注意的是,这种误差函数并不直接依赖于技术分享技术分享,而是只依赖于两者的乘积技术分享,也就是说乘积技术分享与矩阵技术分享的近似程度。由于误差函数仅依赖于输入和输出,所以这一点对任何形式的误差函数都成立。

 

隐层特征空间的正交变换:空间的正交变换是由通过原点的超平面的旋转与反射变换组成。在矩阵中,正交变换定义为一个矩阵与其转置的乘积为单位矩阵。利用这个性质,可以很容易证明:隐层特征空间的正交变换,也就是参数空间各列上的正交变换。技术分享技术分享分别对应隐层特征空间的正交变换群与参数空间的正交变换群,这两个群是同态的。

群同态(Group Homorphism):技术分享 

 

梯度等高线:参数空间上的块对角矩阵形式的正交变换的效果是特征空间对矩阵A与B左乘以正交变换矩阵P,这个效果用数学语言描述为:技术分享。 

技术分享

因此,我们技术分享技术分享可以说产生对原始矩阵X相同的近似。从而可以得到技术分享。隐层特征空间的正交变换技术分享描绘出了参数空间中技术分享的等高线。现在,梯度向量总是垂直于等高线,在梯度下降过程中,需要访问的参数空间的点序列保留了初始化时设置的隐层特征空间的方向。所以,如果技术分享的梯度下降起始于技术分享,收敛到参数技术分享,你可能更期望收敛到技术分享,那么需要做的就是重新做一遍梯度下降,只不过初始值设置为技术分享。由此看来,我们的矩阵分解模型所学到的矩阵技术分享只是有隐层特征空间的正交变换决定,等价于同时的列变换。


上述陈述在随机梯度下降场景下仍旧是成立的,其中误差函数并非固定的,而是由不断变化的小任务来定义。 这样的误差函数仍旧不依赖于隐层单元的值,所以梯度向量仍旧是垂直于由隐层特征空间的正交变换描绘的登高线。随机梯度下降过程中的更新仍旧是保留了初始化时隐层特征空间的方向。

 

未完待续 

[翻译博文]线性隐层单元并不存在