SVD在神经网络中的常用应用以及原理

  1. SVD回顾

            SVD常用矩阵分解:A(m*n) = U(m*n)A(n*m)V(m*n), 在PCA中可以看到,SVD做矩阵压缩,假设压缩至K纬,只需要保留特征值最大的top即可,

            那么有:A(m*n) ~ U(m*k)A(k*k)V(k*n) = U(m*k)V(k*n)

  1. 应用: 

          SVD在神经网络中的常用应用以及原理

总结:可以看出模型的参数大大压缩而且效果基本上一样。

 

训练过程注意事项:

  1.   由于变换后的网络模型深度增加了,因此不要在变化后的网路上直接训练

  2.   首先在原始网络上进行训练(可以使用20%-40%的数据)

  3.   然后在变化后的网络上进行训练(仍然使用20%-40%的数据,这时候使用第二步的初值)

  4. 所有数据refine得最终结果