我试着用元音来理解基本的学习者。我了解在线梯度下降和特征哈希。我试图理解它所使用的适应性和规范化特性。我理解这些特性的意义(为了改变学习速度,甚至是特性),我希望了解它们是如何被编程成元音的。有人能分享这些特性的伪代码吗?或者在代码库中向我指出它们?
发布于 2020-06-08 17:54:32
您不会发现gd.cc特别容易阅读。它是为吞吐量而设计的。既然这么说了..。
自适应算法是在adagrad的基础上进行的,它试图调整每个特征的有效学习速率。为了实现这一点,它累积了每个特性( https://github.com/VowpalWabbit/vowpal_wabbit/blob/aa88627c9e9ffed6c0eea165ff85b04f0a22c0b7/vowpalwabbit/gd.cc#L502 )的平方梯度之和。
规范化是基于维度分析的论点。它试图调整权重以匹配特征标度。为了实现这一点,它为每个特性( https://github.com/VowpalWabbit/vowpal_wabbit/blob/aa88627c9e9ffed6c0eea165ff85b04f0a22c0b7/vowpalwabbit/gd.cc#L507 )保留了迄今为止所看到的最大绝对值。
最后,您应该尝试--coin,这是一个新的基础学习者在大众可以获得更好的结果与默认设置。
https://stackoverflow.com/questions/61921342
复制相似问题