完成了机器学习基础的学习,笔者还分享了基于矩阵分解的CTR模型供参考
矩阵分解进阶:FM、FFM
矩阵分解与深度学习:DeepFM、xDeepFM
矩阵分解与特征交叉:Wide & Deep、Deep & Cross Network
矩阵分解(Matrix Factorization)
![image-20210510000251264](https://tva1.sinaimg.cn/large/008i3skNly1gqcme6zm83j31b20b4482.jpg)
对于数据集 D \mathcal D D ,该假设函数的基于平方误差的误差测量为:
E in ( { w m } , { v n } ) = 1 ∑ m = 1 M ∣ D m ∣ ∑ user n rated movie m ( r n m − w m T v n ) 2 E_{\text {in }}\left(\left\{\mathbf{w}_{m}\right\},\left\{\mathbf{v}_{n}\right\}\right)=\frac{1}{\sum_{m=1}^{M}\left|\mathcal{D}_{m}\right|} \sum_{\text {user } n \text { rated movie } m}\left(r_{n m}-\mathbf{w}_{m}^{T} \mathbf{v}_{n}\right)^{2} Ein ({
wm},{
vn})=∑m=1M∣Dm∣1user n rated movie m∑(rnm−wmTvn)2
那么现在就要根据数据集 D \mathcal D D进行 v n \mathbf { v } _ { n } vn和 w m \mathbf { w } _ { m } wm的学习来保证误差最小:
min W , V E in ( { w m } , { v n } ) ∝ ∑ usern rated movie m ( r n m − w m T v n ) 2 = ∑ m = 1 M ( ∑ ( x n , r n m ) ∈ D m ( r n m − w m T v n ) 2 ) = ∑ n = 1 N ( ∑ ( x n , r n m ) ∈ D m ( r n m − v n T w m ) 2 ) \begin{aligned} \min _{\mathrm{W}, \mathrm{V}} E_{\text {in }}\left(\left\{\mathbf{w}_{m}\right\},\left\{\mathbf{v}_{n}\right\}\right) & \propto \sum_{\text {usern rated movie } m}\left(r_{n m}-\mathbf{w}_{m}^{T} \mathbf{v}_{n}\right)^{2} \\ &=\sum_{m=1}^{M}\left(\sum_{\left(\mathbf{x}_{n}, r_{n m}\right) \in \mathcal{D}_{m}}\left(r_{n m}-\mathbf{w}_{m}^{T} \mathbf{v}_{n}\right)^{2}\right) \\ &=\sum_{n=1}^{N}\left(\sum_{\left(\mathbf{x}_{n}, r_{n m}\right) \in \mathcal{D}_{m}}\left(r_{n m}-\mathbf{v}_{n}^{T} \mathbf{w}_{m}\right)^{2}\right) \end{aligned}