공부자료/Deep Learning

비지도학습 (1)

mogazi 2022. 9. 25. 02:30

  비지도 학습 (Unsupervised Learning) 

 

 

출력값 없이 입력값만으로 학습하는 방식이다.

사람의 개입 없이 컴퓨터가 알아서 입력 데이터를 학습한 뒤, 패턴과 상관관계를 인식하기 시작한다. 

 

 

 

 

군집 또는 클러스터링(Clustering)이라 불리는 작업이 대표적인 비지도 학습 문제다. 

클러스터링은 특정 기준에 따라 비슷한 데이터 샘플끼리 그룹으로 모으는 작업을 말한다. 

만들어진 그룹을 클러스터(Cluster)라고 부른다. 

 

 

 

또 다른 비지도 학습으로 차원 축소(Dimensionality Reduction)가 있다.

차원 축소는 고려 중인 변수의 개수를 줄이는 작업이다. 

 

많은 특성 중 일부는 중복되거나 작업에 아무 영향을 미치지 않을 수 있는데, 이러한 특성들을 줄여줌으로써 데이터 크기를 줄이고 학습 모델의 성능을 향상할 수 있다.  

 

 

 

 

 

 

 

 

 

 

  • K - 평균 군집화 (K - meaning clustering)

 

 

주어진 데이터셋을 이용하여 몇 개의 클러스터를 구성할지 사전에 알 수 있을 때 유용하다. 

 

 

데이터를 입력받아 소수의 그룹으로 묶는 알고리즘이다.

레이블이 없는 데이터를 입력받아 각 데이터에 레이블을 할당해서 군집화를 수행한다.

 

 

 

 

 

 

‘ K ’ 는 데이터셋에서 찾을 것으로 예상되는 클러스터(그룹) 수를 말한다.

 

‘Means’ 는 각 데이터로부터 그 데이터가 속한 클러스터의 중심까지의 평균 거리를 의미한다.  (이 값을 최소화하는 것이 목표)

 

 

 

 

1. 일단 K개의 임의의 중심점(centroid)을 배치하고

2. 각 데이터들을 가장 가까운 중심점으로 할당한다. (일종의 군집을 형성한다.)

3. 군집으로 지정된 데이터들을 기반으로 해당 군집의 중심점을 업데이트한다.

4. 2번, 3번 단계를 그래서 수렴이 될 때까지, 즉 더 이상 중심점이 업데이트 되지 않을 때까지 반복한다.

 

 

 

 

여기서 일단 k 값은 2다. 

그래서 (b)에서 일단 중심점 2개를 아무 데나 찍고, (c)에서는 각 데이터들을 두 개 점 중 가까운 곳으로 할당한다.

(d)에서는 그렇게 군집이 지정된 상태로 중심점을 업데이트 한다. 

그리고 (e)에서는 업데이트 된 중심점과 각 데이터들의 거리를 구해서 군집을 다시 할당한다.