我正在查看以下2个关于使用--adaptive标志时大众所做更新的演示文稿。 似乎这些是不同的。
分别使用这两个描述:
#1
#2
我的问题:
其中哪一项是正确的(或它们是否相同)?
对于数字1,似乎在分母中使用来自t + 1示例的梯度。这是怎么做到的?这是否意味着新的重量(标记为w_i)是重量,例如t + 1?
答案 0 :(得分:2)
正如您所注意到的,first presentation包含AdaGrad公式中的错误/拼写错误。公式should be w_ {i,t + 1}:= w_ {i,t} - (\ eta * g_ {i,t} / \ sqrt {sum}),其中sum = \ sum_ {t' = 1} ^ t g_ {i,t'} ^ 2。
在VowpalWabbit中,--adaptive
(对应于AdaGrad的想法)默认开启。但默认情况下,--normalized
和--invariant
也处于启用状态,这意味着除了简单的AdaGrad之外,还会应用更多技巧/改进。所有这些技巧的相互作用很复杂,没有单一的幻灯片描述所有方面,所以唯一的参考是源代码(gd.cc)。
哪些是正确的(或它们是否相同)?
我认为它们不相同,但它们是复杂代码的不同“层”。我认为second presentation的幻灯片33(您引用为#2)对应于幻灯片31(您没有引用) first presentation,但我不确定。