1-4. NMF

Advanced Mathematics for AI

Featured image

본 글은 K-MOOC의 인공지능 수학 고급(Advanced Mathematics for AI) 강의를 듣고 요약한 글입니다.

자연속의 데이터들

자연의 데이터는 대부분 음이 아닌 수 (0 또는 양수)로 주어진다.

이를 분석할 때 우리가 음수가 아니라는 조건을 이용한다면 이를 좀 더 잘 분석할 수 있을 것이다.

이런 가정을 통해 행렬분해를 진행하는 것이 비음 분해(Nonnegative Matrix Factorization, NMF)가 된다.

Nonnegative Matrix Factorization

이 때 우리는 다음과 같은 방법을 통해 NMF의 추정값AWH=A^A \approx WH = \hat{A}을 구할 수 있다.

min  D(AA^)=minf=1Fn=1Nd(afna^fn)min\;D(A|\hat{A}) = min \sum_{f=1}^{F}\sum_{n=1}^{N}d(a_{fn}|\hat{a}_{fn})

이 때 거리 함수 dd는 다음 조건을 만족해야 한다.

다음은 유명한 거리함수들이다.

Weighted Nonnegative Matrix Factorization

행렬의 위치에 따라 그 가중치를 다르게 하고 싶을 때가 있다.

어떤 영역을 더 강조하고 싶다거나 어떤 영역을 배제하고 싶다던가 할 때, 다음과 같은 가중치를 통해서 NMF를 수행할 수도 있다.

D(AA^)=f=1Fn=1Nbfnd(afna^fn)D(A|\hat{A}) = \sum_{f=1}^{F}\sum_{n=1}^{N}b_{fn}d(a_{fn}|\hat{a}_{fn})