经常浏览「始终」博客的读者很容易会发现,当你在浏览器中切换 tab 页到其它网页时,始终博客的页面会有一定概率「崩溃」。具体来说,tab 页上的标题会变成 ╭(°A°`)╮ 页面崩溃啦~
这样子,切换回来之后又会发现页面其实没问题,同时标题会变成 (ฅ>ω<*ฅ) 咦,又好了~
这样子。因为这个彩蛋比较有趣,所以很多朋友回点回来看一看页面发生了什么。想想还是蛮有趣的。
最近有不少朋友问到这个效果是怎么实现的。这里记录一下。
昨天 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)表示怀疑。毕竟,每次只选择少量样本计算梯度,这靠谱吗?强迫症患者心里泛起了浓浓的怀疑。然而经年的实践经验结合理论分析表明,强迫症患者也需要随机梯度下降。
这篇文章尝试尽可能用少的数学公式,讲一讲这个问题。