1.对于三类梯度下降的算法可以参考这个链接的解释https://blog.youkuaiyun.com/uestc_c2_403/article/details/74910107
2.大规模机器学习(在线学习机制)
试用这个情况的类型是:有连续的数据流(如果用户什么的很少的情况下,就不需要使用在线学习了);用户不太固定的情况(如果用户不太固定,那么对于他的推荐也是很不唯一的,需要临时变化,所以需要重新学习参数)
这个在线学习和随机梯度下降的区别:
(1)随机梯度下降,他的参数是一次次保持,然后基于上一次的参数去再进行学习的,只不过所用的样本不是唯一固定的。such as,在样本1上面学习到的参数是b,再将b这个参数作为样本2(不一定是按照顺序的,在进行随机梯度下降的时候,需要打乱一下顺序Shuffle)的初始参数,在2里面再进行更新。
(2)对于基于用户的在线学习,每一个用户的参数都需要各自进行学习,之间的参数没有依赖关系,对于不同的用户,他的参数学习是不一样的(可以理解为相互独立)。
3.减少映射(map reduce)
这个思想很重要,用来解决随机梯度下降不能解决的更大规模的问题。
其实mapreduce就是并行化的处理思想,将比较独立的数据运算分配到多个核或者线程上面进行计算,最后再合并的而思想。