这篇谈谈我眼中推荐系统和计算广告之间的差别。
当然,限于角色和身份,我只能站在算法工程师的角度,去谈一谈两种系统的优化目标之间的差异,以及这种差异引起的一系列不同。
昨天 jsteward 问我,有一个接受若干个同类型参数的函数 template <typename U, typename T> U func(T a, T b, T c)
,现在有一个 std::vector<T> args
,希望将 std::vector<T>
当中的元素作为函数参数传进去,要怎么办。
这篇来解决这个问题。
先前我们从 LR 开始,讨论了因子分解机(FM)模型。FM 解决了稀疏数据场景下的自动特征组合问题,因而在广告、推荐等具有高维稀疏特征的领域被广泛使用。因其简单、可解释性强、效果好,FM 模型通常会被作为业务初期快速取得收益的首选。
这里将 FM 模型家族至今为止的演进做一个整理总结。
作为一个强迫症(OCD)患者,曾经我一直对随机梯度下降(Stochastic Gradient Descent)表示怀疑。毕竟,每次只选择少量样本计算梯度,这靠谱吗?强迫症患者心里泛起了浓浓的怀疑。然而经年的实践经验结合理论分析表明,强迫症患者也需要随机梯度下降。
这篇文章尝试尽可能用少的数学公式,讲一讲这个问题。