我试图了解基于CS 224D: Deep Learning for NLP 讲义的排名损失(又名,最大边际目标函数,MarginRankingLoss ...) 。
在本说明中,成本定义如下: J = (1 + sc - s)
s= f(θ,x),sc = f(θ,xc),x是正确的输入,xc是错误的输入。
所以,s 是好事的分数,sc 是坏事的分数。
我的问题是:要更新权重,我必须得到∂J/∂θ还是∂s/∂θ?
我想我必须做 ∂J / ∂θ 来更新 θ。
因此,由于 J = 1 + sc-s,∂J / ∂θ = ∂sc / ∂θ - ∂s / ∂θ。
所以我认为应该分别得到∂sc / ∂θ和∂s / ∂θ。
然而,在讲义中,计算 ∂J / ∂s = -1 并使用该值来更新网络。
我究竟做错了什么?