본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
Unsupervised learning; 비지도 학습
정답 레이블 없이 입력 데이터만으로 데이터의 구조, 분포, 무리를 찾아내는 기계 학습 방법

비지도 학습(unsupervised learning)은 기계 학습의 한 갈래로, 사람이 붙인 정답(레이블) 없이 입력 x만으로 학습한다. 지도 학습이 입력과 정답의 짝 (x,y)에서 x→y 함수를 배우는 것과 달리, 비지도 학습은 데이터가 어떻게 생겼는지, 즉 어떤 무리로 나뉘는지, 어떤 저차원 구조 위에 놓여 있는지, 어떤 확률 분포에서 나왔는지를 찾는다. 예전에는 '자율 학습', '비교사 학습'이라고도 불렀다.

세상의 데이터는 대부분 레이블이 없다. 웹 문서, 사진, 로그, 센서 값에 사람이 일일이 정답을 다는 데에는 큰 비용이 들기 때문에, 레이블 없이 배울 수 있다는 것은 큰 장점이다. 반면 맞혀야 할 정답이 없으니 학습 결과가 잘 되었는지 판단하기 어렵다는 근본적인 한계가 있다. 통계학의 군집 분석, 분포 추정, 다변량 분석과 뿌리가 같다.

지도 학습, 자기 지도 학습과의 관계

편집 원본 편집
구분 학습 데이터 목표 예
지도 학습 입력과 사람이 붙인 정답 P(y∣x) 또는 x→y 함수 스팸 분류, 집값 예측
비지도 학습 입력만 데이터 구조, P(x) 고객 군집, 차원 축소, 이상 탐지
준지도 학습 소량의 정답 + 대량의 무레이블 데이터 지도 학습 성능 향상 일부만 레이블된 이미지 분류
자기 지도 학습 입력만, 정답은 데이터에서 자동 생성 다른 작업에 옮겨 쓸 표현 BERT의 가린 단어 맞히기, GPT의 다음 토큰 예측

자기 지도 학습은 레이블 없는 데이터를 쓴다는 점에서 비지도 학습의 한 갈래로 분류되기도 한다. 다만 학습 방식은 데이터에서 만든 가짜 정답을 맞히는 지도 학습과 같아서, 최근에는 별도의 범주로 다루는 경우가 많다. 예를 들어 이미지에 잡음을 뿌려 놓고 원본을 복원하게 하면, 레이블은 필요 없지만 실제 학습은 "잡음 낀 이미지 → 원본"이라는 지도 학습으로 이루어진다. 오늘날의 대형 언어 모델과 파운데이션 모델의 사전 학습이 이 방식이다.

생성 모델도 데이터 분포 P(x)를 학습한다는 점에서 비지도 학습의 대표적인 형태다. 변분 오토인코더, GAN, 확산 모델, 자기회귀 모델은 모두 레이블 없는 데이터로 학습할 수 있다.

작업 하는 일 대표 기법 문서
군집화 비슷한 데이터끼리 묶는다 k-평균, 계층적 군집, DBSCAN, 가우스 혼합 모델, 스펙트럴 군집 군집화, 군집 분석
차원 축소 정보를 최대한 보존하며 변수 수를 줄인다 PCA, 특이값 분해, ICA, NMF, MDS, t-SNE, UMAP, 오토인코더 차원 축소
밀도 추정 데이터가 나온 확률 분포를 추정한다 히스토그램, 커널 밀도 추정, 가우스 혼합 모델, 정규화 흐름 생성 모델
이상 탐지 대다수와 다른 드문 데이터를 찾는다 아이솔레이션 포레스트, 단일 클래스 SVM, 오토인코더 재구성 오차, LOF 이상 탐지, 이상치
연관 규칙 함께 나타나는 항목의 규칙을 찾는다 아프리오리, FP-growth 연관 규칙 분석, 아프리오리 알고리즘
토픽 모델링 문서 묶음에서 주제를 찾는다 LSA, LDA 텍스트 마이닝
표현 학습 다른 작업에 쓸 특징 벡터를 배운다 오토인코더, 제한된 볼츠만 머신, Word2Vec 워드 임베딩

레이블이 없어도 데이터 사이의 거리나 밀도를 기준으로 데이터를 몇 개의 무리로 나눌 수 있다. 비슷한 정도는 유클리드 거리, 맨해튼 거리 같은 거리나 코사인 유사도로 잰다. 자세한 내용은 군집화, 군집 분석 문서 참고.

  • k-평균(k-means): 군집 수 k를 정하고, 각 데이터를 가장 가까운 중심에 배정한 뒤 중심을 그 군집의 평균으로 옮기는 일을 반복한다. 군집 안 제곱 거리의 합 ∑j=1k∑x∈Cj‖x−μj‖2를 줄인다. 이 반복 절차는 로이드가 1957년 벨 연구소 내부 보고서로 작성하고 1982년 논문으로 발표했다.[1] 빠르고 단순하지만 k를 미리 정해야 하고, 둥글고 크기가 비슷한 군집을 가정하며, 초깃값에 따라 결과가 달라진다. 자세한 내용은 K-평균 군집화 문서 참고.
  • 계층적 군집: 가까운 군집을 차례로 합치거나(병합형) 큰 군집을 나눠(분할형) 나무 모양의 덴드로그램을 만든다. 군집 수를 미리 정하지 않아도 된다. 다만 모든 점 쌍의 거리를 다뤄야 하므로 데이터가 많아지면 계산량과 메모리 사용이 크게 늘어난다. 자세한 내용은 계층적 군집 분석 문서 참고.
  • DBSCAN: 밀도가 높은 영역을 군집으로, 밀도가 낮은 곳의 점을 잡음으로 본다. 1996년 KDD 학회에서 발표되었다.[2] 모양이 불규칙한 군집을 찾고 이상치를 걸러 낼 수 있다. 자세한 내용은 DBSCAN 문서 참고.
  • 가우스 혼합 모델(GMM): 데이터가 여러 개의 정규 분포가 섞인 분포에서 나왔다고 보고, 각 분포의 평균, 공분산, 혼합 비율을 기댓값 최대화(EM) 알고리즘으로 추정한다.[3] 각 점이 어느 군집에 속할 확률을 주는 연성 군집이다. 자세한 내용은 혼합 분포 군집 문서 참고.

고차원 데이터는 점 사이의 거리가 비슷비슷해지고 필요한 데이터 양이 기하급수적으로 늘어나는 '차원의 저주' 문제를 겪는다. 차원 축소는 데이터의 핵심 구조를 유지하며 변수 수를 줄여 잡음을 걸러 내고 계산을 줄이며 시각화를 가능하게 한다. 자세한 내용은 차원 축소 문서 참고.

  • 주성분 분석(PCA): 분산이 가장 큰 방향(공분산 행렬의 고유벡터)으로 데이터를 투영한다. 1901년 칼 피어슨이 기하학적으로,[4] 1933년 해럴드 호텔링이 '주성분'이라는 이름으로 정식화했다.[5] 계산은 특이값 분해(SVD)로 한다. 자세한 내용은 주성분 분석 문서 참고.
  • 독립 성분 분석(ICA): 섞인 신호를 통계적으로 독립인 원천 신호로 분리한다. 여러 사람의 목소리가 섞인 녹음에서 각자의 목소리를 분리하는 칵테일 파티 문제가 대표 예다.[6]
  • 비음수 행렬 분해(NMF): 데이터 행렬을 음수가 없는 두 행렬의 곱으로 나눈다. 부분의 합으로 해석하기 쉬워 텍스트와 이미지 분석에 쓴다.
  • 다차원 척도법(MDS): 점 사이의 거리를 최대한 보존하는 저차원 배치를 찾는다. 자세한 내용은 다차원 척도법 문서 참고.
  • t-SNE와 UMAP: 가까운 이웃 관계를 보존하는 비선형 방법으로, 고차원 데이터를 2~3차원에 시각화하는 데 쓴다. t-SNE는 2008년,[7] UMAP은 2018년 발표되었다.[8] 그림의 군집 사이 거리와 군집 크기는 원래 공간의 거리를 그대로 반영하지 않으므로 해석에 주의해야 한다.
  • 오토인코더: 신경망으로 입력을 저차원 잠재 벡터로 압축했다가 복원하도록 학습한다. 2006년 힌턴과 살라쿠트디노프는 깊은 오토인코더가 PCA보다 나은 저차원 표현을 만든다고 보고했다.[9] 자세한 내용은 오토인코더 문서 참고.
  • 자기 조직화 지도(SOM): 고차원 데이터를 2차원 격자에 위상 관계를 보존하며 배치하는 신경망이다. 코호넨이 1982년 발표했다.[10] 자세한 내용은 자기 조직화 지도 문서 참고.

데이터가 어떤 확률 분포 p(x)에서 나왔는지 추정한다. 이 분포를 알면 새로운 데이터가 얼마나 그럴듯한지 판단할 수 있어 이상 탐지의 기초가 되고, 분포에서 표본을 뽑으면 새 데이터를 생성할 수 있다.

  • 모수적 방법: 정규 분포나 가우스 혼합 모델처럼 분포의 형태를 정하고 모수를 최대 우도로 추정한다.
  • 비모수적 방법: 히스토그램, 각 데이터 점에 작은 커널을 얹어 더하는 커널 밀도 추정
  • 심층 생성 모델: 정규화 흐름, 자기회귀 모델은 정확한 우도를 계산할 수 있고, VAE는 우도의 하한을 최대화한다. 자세한 내용은 생성 모델 문서 참고.

정상 데이터가 대부분이고 이상 데이터는 드물거나 미리 알 수 없을 때, 정상 데이터의 분포나 구조를 배우고 그로부터 벗어난 점을 찾는다. 사기 거래, 침입, 설비 고장 탐지에 쓴다.

  • 데이터를 무작위로 잘라 나갈 때 일찍 고립되는 점을 이상으로 보는 아이솔레이션 포레스트(2008)[11]
  • 정상 데이터를 감싸는 경계를 학습하는 단일 클래스 SVM
  • 오토인코더로 복원했을 때 오차가 큰 데이터를 이상으로 보는 방법
  • 밀도 추정 모델에서 확률이 낮은 데이터를 이상으로 보는 방법

자세한 내용은 이상 탐지 문서 참고.

"기저귀를 산 사람은 맥주도 산다"처럼 함께 나타나는 항목 사이의 규칙을 찾는다. 규칙의 강도는 지지도, 신뢰도, 향상도로 잰다. 1994년 아그라왈과 스리칸트가 발표한 아프리오리 알고리즘은 빈발하지 않은 항목 집합의 상위 집합도 빈발하지 않다는 성질로 탐색 공간을 줄인다.[12] 2000년 발표된 FP-growth는 후보 집합을 만들지 않고 트리 구조로 빈발 패턴을 찾는다.[13] 자세한 내용은 연관 규칙 분석, 아프리오리 알고리즘 문서 참고.

문서 묶음에서 단어가 함께 나타나는 패턴으로 숨은 주제를 찾는다. 단어-문서 행렬(문서 단어 행렬)을 특이값 분해하는 잠재 의미 분석(LSA)과, 문서를 여러 주제의 혼합으로, 주제를 단어의 분포로 보는 확률 모델인 잠재 디리클레 할당(LDA, 2003)이 대표적이다.[14]

신경망 기반 비지도 학습

편집 원본 편집
  • 헤브 학습: 1949년 도널드 헵이 제안한 "함께 활성화되는 뉴런은 연결이 강해진다"는 원리. 정답 없이 입력의 상관관계만으로 가중치를 바꾸는 가장 오래된 비지도 학습 규칙이다. 자세한 내용은 헤비안 학습 문서 참고.
  • 홉필드 망과 볼츠만 머신: 에너지 함수를 정의하고 데이터가 낮은 에너지를 갖도록 학습한다. 제한된 볼츠만 머신을 쌓은 심층 신뢰 신경망은 2006년 딥 러닝 부흥의 출발점이 되었다. 자세한 내용은 에너지 기반 모델 문서 참고.
  • 오토인코더 계열: 잡음 제거 오토인코더, 희소 오토인코더, 변분 오토인코더
  • 생성적 적대 신경망: 생성자와 판별자의 경쟁으로 데이터 분포를 학습한다. 자세한 내용은 GAN 문서 참고.
  • 예측 기반 학습: 다음 입력이나 가려진 입력을 예측하며 배우는 방식으로, 오늘날의 자기 지도 학습으로 이어졌다. 자세한 내용은 자기 지도 학습, 예측 부호화 문서 참고.

평가의 어려움

편집 원본 편집

비지도 학습에는 맞혀야 할 정답이 없으므로 "얼마나 잘 배웠는가"를 판단하는 기준 자체가 문제가 된다. 같은 데이터에도 여러 그럴듯한 군집 구조가 있을 수 있고, 어떤 것이 옳은지는 목적에 따라 다르다.

평가 방식 내용 예
내부 지표 레이블 없이 결과 자체의 품질을 잰다. 군집 안은 촘촘하고 군집끼리는 멀리 떨어졌는지 본다. 실루엣 계수(1987),[15] 데이비스-볼딘 지수(1979),[16] 칼린스키-하라바스 지수, 군집 내 제곱합
외부 지표 평가용으로 따로 마련한 정답 레이블과 비교한다. 실제 상황에서는 정답이 없는 경우가 많다. 조정 랜드 지수(ARI), 정규화 상호 정보량(NMI), 순도
모델 선택 기준 군집 수나 성분 수를 고른다. 엘보 방법, 실루엣 계수, 정보 기준(AIC, BIC)
우도 확률 모델은 시험 데이터의 로그 우도로 비교한다. 가우스 혼합 모델, 정규화 흐름
하위 작업 성능 학습한 표현이나 군집을 실제 목적(분류, 추천, 탐지)에 써 보고 그 성능으로 판단한다. 선형 분류기 평가, 고객 세분화 후 마케팅 효과
사람의 판단 시각화나 군집 대표 사례를 보고 해석이 되는지 판단한다. 토픽 모델의 주제어 검토

그 밖의 실무상 어려움은 다음과 같다.

  • 거리 척도와 변수의 단위(스케일)에 결과가 민감하다. 표준화 여부에 따라 군집이 크게 달라진다.
  • 알고리즘이 데이터에 구조가 없어도 무언가를 찾아낸다. k-평균은 균일한 무작위 데이터도 k개로 나눈다.
  • 무작위 초기화에 따라 결과가 바뀌므로 여러 번 실행해 안정성을 확인해야 한다.
  • 고객 세분화: 구매 이력으로 고객을 무리 지어 마케팅을 다르게 한다.
  • 추천 시스템: 비슷한 사용자나 상품을 찾는다. 자세한 내용은 추천 시스템, 협업 필터링 문서 참고.
  • 이상 탐지: 금융 사기, 네트워크 침입, 설비 고장
  • 전처리: 지도 학습 전에 차원을 줄이거나 특징을 만든다.
  • 데이터 탐색과 시각화: 탐색적 데이터 분석에서 데이터의 구조를 파악한다.
  • 자연어 처리: 문서 군집화, 토픽 모델링, 단어 임베딩 학습. 자세한 내용은 텍스트 마이닝, 워드 임베딩 문서 참고.
  • 압축: 벡터 양자화, 이미지 압축
  • 생물정보학: 유전자 발현 데이터의 군집, 세포 유형 분류
  1. ↑ Stuart P. Lloyd, 〈Least squares quantization in PCM〉, IEEE Transactions on Information Theory 28(2), 129~137, 1982. doi:10.1109/TIT.1982.1056489
  2. ↑ Martin Ester, Hans-Peter Kriegel, Jörg Sander, Xiaowei Xu, 〈A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise〉, KDD-96, 1996. AAAI PDF
  3. ↑ A. P. Dempster, N. M. Laird, D. B. Rubin, 〈Maximum Likelihood from Incomplete Data via the EM Algorithm〉, Journal of the Royal Statistical Society Series B 39(1), 1~22, 1977. doi:10.1111/j.2517-6161.1977.tb01600.x
  4. ↑ Karl Pearson, 〈On lines and planes of closest fit to systems of points in space〉, Philosophical Magazine 2(11), 559~572, 1901. doi:10.1080/14786440109462720
  5. ↑ Harold Hotelling, 〈Analysis of a complex of statistical variables into principal components〉, Journal of Educational Psychology 24(6), 417~441, 1933. doi:10.1037/h0071325
  6. ↑ Anthony J. Bell, Terrence J. Sejnowski, 〈An Information-Maximization Approach to Blind Separation and Blind Deconvolution〉, Neural Computation 7(6), 1129~1159, 1995. doi:10.1162/neco.1995.7.6.1129
  7. ↑ Laurens van der Maaten, Geoffrey Hinton, 〈Visualizing Data using t-SNE〉, JMLR 9, 2579~2605, 2008. JMLR
  8. ↑ Leland McInnes, John Healy, James Melville, 〈UMAP: Uniform Manifold Approximation and Projection for Dimension Reduction〉, 2018. arXiv:1802.03426
  9. ↑ G. E. Hinton, R. R. Salakhutdinov, 〈Reducing the Dimensionality of Data with Neural Networks〉, Science 313, 504~507, 2006. doi:10.1126/science.1127647
  10. ↑ Teuvo Kohonen, 〈Self-organized formation of topologically correct feature maps〉, Biological Cybernetics 43, 59~69, 1982. doi:10.1007/BF00337288
  11. ↑ Fei Tony Liu, Kai Ming Ting, Zhi-Hua Zhou, 〈Isolation Forest〉, ICDM 2008, 413~422. doi:10.1109/ICDM.2008.17
  12. ↑ Rakesh Agrawal, Ramakrishnan Srikant, 〈Fast Algorithms for Mining Association Rules〉, VLDB 1994. VLDB PDF
  13. ↑ Jiawei Han, Jian Pei, Yiwen Yin, 〈Mining frequent patterns without candidate generation〉, SIGMOD 2000. doi:10.1145/335191.335372
  14. ↑ David M. Blei, Andrew Y. Ng, Michael I. Jordan, 〈Latent Dirichlet Allocation〉, JMLR 3, 993~1022, 2003. JMLR
  15. ↑ Peter J. Rousseeuw, 〈Silhouettes: A graphical aid to the interpretation and validation of cluster analysis〉, Journal of Computational and Applied Mathematics 20, 53~65, 1987. doi:10.1016/0377-0427(87)90125-7
  16. ↑ David L. Davies, Donald W. Bouldin, 〈A Cluster Separation Measure〉, IEEE TPAMI 1(2), 224~227, 1979. doi:10.1109/TPAMI.1979.4766909