20. 비지도학습

j_hyun11·2022년 1월 26일
0

FUNDAMENTAL

목록 보기
5/11

1. 비지도학습(Unsupervised Learning)

  • 지도학습과 다르게 training data로 정답(label)이 없는 데이터가 주어지는 학습방법
  • 주어진 데이터가 어떻게 구성되어 있는지 스스로 알아내는 방법
  • 아무도 정답을 알려주지 않은 채 오로지 데이터셋의 특징이나 패턴을 기반으로 모델 스스로가 판단

예시

  • 군집화(clustering)
  • 차원축소(dimensionlity reduction)
  • 생성 모델(generative model)

2. 클러스터링(1) K-means

  • 데이터X가 무엇인지에 대한 정답(label)과 y가 될 수 있는 분류 기준이 없는 비지도학습에서 클러스터링이란 명확한 분류 기준이 없는 상황에서도 데이터들을 분석하고 유사한 것들끼리 묶어 주는 대표적 알고리즘
  • k값이 주어졌을 때, k개의 기준점을 중심으로 가장 가까운 데이터들을 뭉침
  • 좌표축 위에 있는 데이터들 사이의 거리를 계산하기 위해서 "유클리드 거리"를 사용

K-mean 알고리즘의 순서

1) 원하는 k(클러스터의 수)를 결정
2) 무작위로 클러스터의 수와 같은 k개의 중심점을 선정
3) 나머지 점들과 모든 중심점 간의 유클리드 거리를 계산
-> 가장 가까운 거리에 있는 중심점의 클러스터에 속하도록 함
4) 각 K개의 클러스터의 중심점을 재조정
-> 특정 클러스터에 속하는 모든 점들의 평균값이 해당 클러스터 다음 iteration의 중심이 됨
5) 재조정된 중심점을 바탕으로 모든 점들과 새로 조정된 중심점간의 유클리드 거리를 다시 계산 -> 가장 가까운 거리를 가지는 클러스터에 해당 점을 재배정
6) 4, 5번을 반복 수행 -> 특정 iteration이상이 되면 수렴하게 됨

K-means가 적합하지 않은 경우

  • K값을 알거나 예측하기 어려운 경우에는 사용하기 어려움
  • 데이터의 분포에 따하 유클리드 거리가 멀고 밀접하게 연관되어 있는 데이터들인 경우에 클러스터링을 성공적으로 수행하지 못할 수 있음

3. 클러스터링(2) DBSCAN

  • Density Based Spatial Clustering of Applications with Noise
  • 밀도 기반의 군집 알고리즘
  • K-means알고리즘으로 해결하기 어려운 문제들을 해결할 수 있음
  • K-means알고리즘과 다르게 군집개수(K)를 미리 지정하지 않아도 됨
  • 유클리드 거리를 사용한 K-means알고리즘와 다르게 밀접하게 있는 클러스터를 군집화

DBSCAN 알고리즘 순서

1) 임의의 점 p를 설정, p를 포함한 클러스터의 반경 안에 있는 점들의 개수를 셈
2) 만약 해당 원에 minPts(클러스터를 이루는 개체의 최솟값)개 이상의 점이 포함되어 있으면 해당 점 p를 core point로 하고 원에 포함된 점들들 하나의 클러스터로 묶음
3) 해당 원에 minPts개 미만의 점이 포함되어 있으면 pass
4) 모든 점에 대해 돌아가면선 1~3번의 과정을 반복
5) 클러스터링 과정을 끝낸 후 어떤 점을 줌심으로 클러스터에 속하지 못한 점을 noise point(군집에 포함되지 못하는 점)으로 간주. 특정 군집에 속하지만 core point가 아닌 점들은 border point(군집의 중심이 되지는 못하지만, 군집에 속하는 점)이라고 함

DBSCAN 알고리즘 단점

  • 군집화할 데이터의 수가 많아질수록 K-means 알고리즘에 비해 DBSCAN의 알고리즘 수행 시간이 늘어남
  • 데이터 분포에 맞는 epsilon, minPts의 값을 지정해야 함

4. 차원 축소(1) PCA

  • 대표적인 차원 축소(Dimensionality reduction) 알고리즘
  • 데이터를 나타내는 여러 특징들 중에서 어떤 특징이 가장 그 데이터를 잘 표현하는지 알게 해주는 특징을 추출하는 용도로 사용
  • 데이터 분포의 주성분(데이터의 분산이 가장 큰 방향벡터)을 찾아주는 방법
  • 데이터들의 분산을 최대로 보존, 서로 직교하는 기저(bias)들을 찾아 고차원 공간을 저차원 공간으로 projection
  • 기존 feature 중 중요한 것을 선택하는 방식이 아닌 기존의 feature를 선형 결합하는 방식

5. 차원 축소(2) T-SNE

  • T-Stochastic Neighbor Embedding
  • 시각화에 많이 쓰이는 알고리즘
  • 기존 차원의 공간에서 가까운 점들은 차원축소된 공간에서도 가깝게 유지
  • PCA는 데이터가 가진 고유한 물리적 정보량을 보존(차원축소를 하면서 두 점 사이의 거리도 정보 손실 발생)한다면 T-SNES는 데이터들 간의 상대적 거리를 보존함(고차원에서 먼 거리의 두점은 저차원에서도 먼 거리를 유지)

0개의 댓글