728x90
반응형
행렬분해란 ?
> 다차원 매트릭스를 저차원 매트릭스로 분해하는 기법
> 대표적으로 SVD(Singular Vector Decomposition), NMF(Non - Negative Factorization) 이 있음
M개의 사용자 행과 N개의 아이템 열을 가진 평점 행렬 R
R = P*Q.T
M은 총 사용자 수
N은 총 아이템 수
K는 잠재요인의 차원 수
R은 M*N 차원의 사용자 - 아이템 평점 행렬
P는 사용자와 잠재 요인과의 관계 값을 가지는 M*K 차원의 사용자 - 잠재 요인 행렬
Q는 아이템과 잠재요인과의 관계 값을 가지는 N*K 차원의 아이템 - 잠재 요인 행렬
Q.T는 Q 매트릭스의 행과 열 값을 교환한 전치 행렬
R을 P와 Q 행렬로 분해하는 방법 ?
> 주로 SVD (Singular Value Decomposition) 방식을 이용
> SVD는 Nan 값이 없는 행렬에만 적용 가능
> Nan 값이 있는 경우에는 확률적 경사 하강법(SGD:Stochastic Gradient Descent) 이나 ALS(Alternating Least Squares) 방식 이용 SVD 활용
반응형
'IT 로그' 카테고리의 다른 글
티스토리 단축기 이용해보기 (8) | 2022.01.04 |
---|---|
이미지 인식의 꽃, CNN 학습 데이터 전처리 과정 (4) | 2021.12.29 |
잠재요인 협업 필터링의 원리를 정리해보자 (0) | 2021.12.24 |
추천시스템 공부(1) 협업필터링 - 절대 거절 못할 제안을 하지 (2) | 2021.12.23 |
머신러닝 왕초보 - 붓꽃 품종 예측 (1) | 2021.12.10 |