티스토리 뷰
[선형대수학]머신러닝과 딥 러닝의 핵심, 선형대수학의 역할과 중요성
[선형대수학]부분행렬과 분할행렬: 공통점과 차이점, ML/DL에의 응용
[선형대수학]역행렬과 행렬식의 성질, ML/DL과의 관계
[선형대수학]행렬의 해와 감소된 행 계단형(Reduced Row Echelon Form, RREF)
[선형대수학]벡터 공간과 기저, 차원 그리고 ML/DL
[선형대수학]선형변환과 고윳값의 이해: 머신러닝/딥러닝에서의 응용
[선형대수학]벡터 공간의 대각화와 그 응용 - 유사 행렬 및 머신러닝에서의 중요성
[선형대수학]특이값 분해(SVD): 기본부터 머신러닝/딥러닝까지의 응용
[선형대수학]실 이차 형식과 양의 정부호 행렬: 머신러닝/딥러닝에의 응용
Introduction
팩토라이제이션 머신(Factorization Machines, FM)은
기계 학습에서 다양한 특성 간의 상호작용을 모델링하는 데 사용되는 알고리즘이다.
이는 특히 추천 시스템, 자연어 처리 등에서 유용하게 쓰이며,
선형 회귀(linear regression)와 행렬 인수분해(matrix factorization)의 개념을 활용하여
특성 간 복잡한 관계를 효율적으로 계산할 수 있다.
본 게시글에서는 팩토라이제이션 머신의 정의, 특징 및 계산 방법에 대해 자세히 설명하고자 한다.
Factorization Machines
팩토라이제이션 머신은 다차원 특성 데이터 간의 상호작용을 모델링할 수 있는 범용 예측 모델이다.
이 모델은 특성의 선형 조합뿐만 아니라, 특성 간의 이차 상호작용까지 고려하여 예측 정확도를 향상시키는 것이 특징이다.
Definition
FM은 입력 벡터 xi∈Rn에 대해 예측 값을 ˆy(x)로 출력하는 모델로, 다음과 같은 수식으로 표현된다.
ˆy(x)=w0+n∑i=1wixi+n∑i=1n∑j=i+1Wijxixj
여기서, wo,wi는선형회귀의계수이며,W_{ij}는특성x_i와x_j$간의 상호작용을 나타내는 계수이다.
여기서:
- w0는 모델의 전역 편향(global bias)
- wi는 각 특성 xi의 선형 가중치
- Wij는 두 특성 xi와 xj 사이의 상호작용을 모델링하는 인수분해 가능한 가중치
이다. Wij는 특성의 상호작용을 모델링하지만, 직접적으로 모든 Wij값을 계산하는 것은 복잡도가 O(n2)로 매우 크다.
Characteristics
FM의 가장 큰 특징은 특성 간 상호작용을 효율적으로 계산할 수 있다는 점이다.
이는 W행렬을 저차원 벡터의 내적으로 표현함으로써 가능해지며, 계산 복잡도를 O(n2)에서 O(kn)으로 대폭 줄일 수 있다.
Calculation
계속해서 FM 예측모델을 이용해 계산 복잡도를 줄이는 과정을 따라가 보자.
위에 언급했듯이, FM의 예측 모델은 주어진 입력 벡터 x∈Rn에 대해 다음과 같이 정의된다.
ˆy(x)=w0+n∑i=1wixi+n∑i=1n∑j=i+1Wijxixj
여기서 행렬Wij는 저차원 벡터의 내적으로 바꿔 표현할 수 있는데,
Wij=<vi,vj>=k∑f=1vifvjf
그 근거는 W가 대칭이자 Positive Semi-definite이기 때문이다.
- 대칭 행렬(Symmetric Matrix): W=WT
- Positive Semi-definite: 모든 벡터 x에 대해 xTWx≥0, 혹은 W=VVT.이는 의도적인 사항이다.
위와 같은 조건을 가지고 계산을 이어가면 다음과 같은 결과를 얻을 수 있다.
ˆy(x)=w0+n∑i=1wixi+n∑i=1n∑j=i+1<vi,vj>xixj=w0+n∑i=1wixi+12(n∑i=1n∑j=1<vi,vj>xixj−n∑i=1<vi,vj>x2i)=w0+n∑i=1wixi+12(k∑f=1(n∑i=1vifxi)2−n∑i=1k∑f=1v2ifx2i))=w0+n∑i=1wixi+12k∑f=1((n∑i=1vifxi)2−n∑i=1v2ifx2i)
여기서 ∑kf=1(∑ni=1vifxi)2 항은 모든 특성 간의 상호작용을 포함하며,
이를 계산하는 복잡도는 각 특성에 대해 k차원 벡터를 한 번만 계산하면 되므로 O(kn)이 된다.
Conclusion
팩토라이제이션 머신(FM)은 복잡한 특성 간 상호작용을 효율적으로 모델링할 수 있는 강력한 도구이다.
이를 통해 추천 시스템, 자연어 처리 등의 다양한 분야에서 더욱 정확한 예측을 가능하게 한다.
FM의 이해와 적용은 머신러닝 모델의 성능을 극대화하는 데 있어 필수적인 요소 중 하나라 할 수 있다.
'ML+DL > Linear Algebra' 카테고리의 다른 글
[선형대수학]주성분 분석(Principal Component Analysis, PCA) (0) | 2024.02.22 |
---|---|
[선형대수학]실 이차 형식과 양의 정부호 행렬: 머신러닝/딥러닝에의 응용 (0) | 2024.02.21 |
[선형대수학]특이값 분해와 고윳값: 공통점과 차이점 (1) | 2024.02.21 |
[선형대수학]특이값 분해(SVD): 기본부터 머신러닝/딥러닝까지의 응용 (0) | 2024.02.21 |
[선형대수학]벡터 공간의 대각화와 그 응용 - 유사 행렬 및 머신러닝에서의 중요성 (0) | 2024.02.20 |
[선형대수학]선형변환과 고윳값의 이해: 머신러닝/딥러닝에서의 응용 (0) | 2024.02.19 |
- Total
- Today
- Yesterday
- 야경
- 여행
- 알고리즘
- java
- 중남미
- Backjoon
- 리스트
- 동적계획법
- 남미
- 스트림
- 면접 준비
- 유럽여행
- RX100M5
- 파이썬
- a6000
- 세모
- 칼이사
- 스프링
- 맛집
- BOJ
- 자바
- 유럽
- 기술면접
- 세계여행
- 지지
- Python
- spring
- Algorithm
- 세계일주
- 백준
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |