728x90
1. FM (Factorization Machine)
- 위의 그림은 MF에 대한 내용
- MF는 user, item, rating의 data를 이용하는 추천 시스템
- 하지만 sparse한 환경이 존재하는 상황에서는 사용하지 못함
- 이러한 한계점을 해결하기 위해 FM 이 개발되었음
- FM은 user, item, rating을 categorical 하게 분할
- categorical feature는 one-hot 형태로 표현
- 따라서 sparse한 벡터는 일반적인 경우
2. Objective Function
- 다항회귀식으로 추천시스템의 목적 함수를 나타냄
- 첫번째 식은, 각 사용자에 weight를 부여한 식
- 두번째 식은, 사용자의 row 간의 weigh를 부여한 식
- row 들간의 관계를 파악하기 위함
- 세번째 식은, b는 bias를 나타냄
- 위의 두번째식에서 weight가 두 개의 벡터의 내적으로 나타나짐
- SVD와 같은 기법으로 분해한 것이며, 벡터를 이용하여 두 사용자간의 잠재적 특성을 파악할 수 있음
3. 추가 보완점
위의 weight가 벡터로 분할되어 사용자 간의 잠재적 특성을 파악할 수 있다는 것에 대해
더 확실하게 이해하고 싶어서 참고 자료들 조사해보니
위와 같이 user_B와 user_C는 user matrix 상에서 겹치는 부분이 없기 때문에 interaction은 0이다.
하지만 실제 movie_SW와의 벡터와 서로 비교해 보면
두 사용자 user_B와 user_C는 높은 유사도를 가지고 있는 것을 확인할 수 있다.
결국 사용자 자체의 행렬을 기반으로 유사도가 판단되지 않을 수 있지만,
그들의 취향을 기반으로 비교하여 둘의 유사도를 확인할 수 있다.
References
- https://www.csie.ntu.edu.tw/~b97053/paper/Rendle2010FM.pdf
- https://techblog-history-younghunjo1.tistory.com/206
- https://hyunlee103.tistory.com/69
- https://supkoon.tistory.com/31
'AI > Machine Learning' 카테고리의 다른 글
MF (Matrix Factorization) with SGD (0) | 2023.03.05 |
---|---|
[Practical Time Series Analysis (실전 시계열 분석)] Chapter 06 시계열의 통계 모델 (0) | 2022.03.23 |
[Practical Time Series Analysis (실전 시계열 분석)] Chapter 05 시간 데이터 저장 (0) | 2022.03.23 |
[Practical Time Series Analysis (실전 시계열 분석)] Chapter 04 시계열 데이터의 시뮬레이션 (0) | 2022.03.22 |
[Practical Time Series Analysis (실전 시계열 분석)] Chapter 03 시계열의 탐색적 자료 분석 (0) | 2022.03.20 |