TransH中的Hinge Loss Function
Hinge Loss Function
Hinge Loss 函数一种目标函数,有时也叫max-margin objective。
在Trans系列中,有一个
\[\max(0,f(h,r,t) + \gamma - f(h',r,t'))
\]
这样的目标函数,其中\(\gamma > 0\)。为了方便理解,先尝试对上式进行变形,令\(\Delta = f(h,r,t)-f(h',r,t')\) ,然后会有下式
\[\mathcal{L} = \max(0,\Delta + \gamma)
\]
由于
\[f(h,r,t) = ||\hat{\mathbf{h}} + \hat{\mathbf{r}}-\hat{\mathbf{t}}||_2^2
\]
为了区分正例和负例,\(f(h,r,t)\)的值应该尽可能的小,\(f(h',r,t')\)的值应该尽可能的大。
我们先看\(\Delta > 0\)的情况,此时\(\max(0,\Delta + \gamma) = \Delta +\gamma > \gamma\),此时的\(\mathcal{L}>\gamma\)。
再看看\(\Delta < 0\) 的情况,此时\(\max(0,\Delta + \gamma)\)的值需要比较\(|\Delta|\)和\(\gamma\)的大小
如果\(|\Delta| > \gamma\),那么\(\mathcal{L} = 0\)
如果\(|\Delta| < \gamma\),那么\(\mathcal{L}=\Delta + \gamma < \gamma\)
总之而言
\[\mathcal{L}=\begin{cases}
\Delta + \gamma > \gamma & \mbox{if } \Delta > 0 \\
\begin{cases}
0 & \mbox{if }\Delta < 0 \mbox{ and } |\Delta| > \gamma\\
0 < \Delta + \gamma < \gamma & \mbox{if } \Delta < 0 \mbox{ and } |\Delta| < \gamma
\end{cases}
\end{cases}
\]
可以得出的结论是,为了\(\min(\mathcal{L})\),\(\Delta < 0 \mbox{ and } |\Delta| > \gamma\) 是我们的最高理想。也就是说
\[f(h,r,t) - f(h',t,r') < -\gamma
\]
训练算法的前进目标。
夜空中最亮的星,照亮我前行