
212
파이썬 라이브러리를 활용한 머신러닝(번역개정판)
3.4.2
비음수 행렬 분해(
NMF
)
NMF
non
-
negative
matrix
factorization
는 유용한 특성을 뽑아내기 위한 또 다른 비지도 학습 알고리즘
입니다. 이 알고리즘은
PCA
와 비슷하고 차원 축소에도 사용할 수 있습니다. [그림
3
-
10
]의
PCA
처럼 어떤 성분의 가중치 합으로 각 데이터 포인트를 나타낼 수 있습니다. 하지만
PCA
에
서는 데이터의 분산이 가장 크고 수직인 성분을 찾았다면
NMF
에서는 음수가 아닌 성분과 계
수 값을 찾습니다. 즉, 주성분과 계수가 모두
0
보다 크거나 같아야 합니다. 음수가 아닌 주성분
과 계수의 가중치 합은 음수가 되지 않으므로 당연하게 이 방식은 음수가 아닌 특성을 가진 데
이터에만 적용할 수 있습니다.
음수 아닌 가중치 합으로 데이터를 분해하는 기능은 여러 사람의 목소리가 담긴 오디오 트랙
이나 여러 악기로 이뤄진 음악처럼 독립된 소스를 추가하여(덮어써서 ) 만들어진 데이터에 특
히 유용합니다. 이럴 때
NMF
는 섞여 있는 데이터에서 원본 성분을 구분할 수 있습니다. 음수
로 된 성분이나 계수가 만드는 상쇄 효과를 이해하기 어려운
PCA
보다 대체로
NMF
의 주성분
이 해석하기 쉽습니다. 예를 들어 [그림
3
-
9
]의 고유얼굴
eigenface
은 양수와 음수 ...