ML/Recsys
[Recsys] Collaborative filtering에서 SGD vs WALS
프리랜서를꿈꾸는자
2020. 10. 19. 22:45
728x90
SGD(Stochastic gradient descent)
WALS(Weighted alternating least squares)
WALS란 어떤 방식이냐,
Fixing U and solving for V
Fixing V and solving for U
각 과정을 교차(alternating)하면서 objective function내에 square term을 최소화
각 과정은 linear system이므로 exactly하게 solved됨
objective function을 보면, Fixing U에선 V에 대한 convex, Fixing V에선 U에 대한 convex function이다. 다만, U와 V에 동시에 살피면 convex가 아니다. 즉 not jointly convex
SGD vs WALS
SGD의 장단점:
-(장점)flexible, loss가 꼭 error square형태가 아니어도 가능
-(장점)병렬계산처리 가능
-(단점)수렴 속도가 WLAS보단 느림
-(단점)unobserved data 다루기가 힘듦, negative sampling이나 gravity 사용이 필요
WLAS의 장점:
-(장점)병렬계산처리 가능
-(장점)SGD보다 빠르게 수렴
-(장점)unobserved data 다루기가 쉬움
-(단점)error square형태의 loss에 대해서만 가능
728x90