[MIT] Data Science - 12. Clustering
Data Science, ML/MIT- Introduction to Data Science

[MIT] Data Science - 12. Clustering

Introduction to Computational Thinking and Data Science
(6.0002, Fall 2016)

 

Introduction to Computational Thinking and Data Science

6.0002 is the continuation of 6.0001 Introduction to Computer Science and Programming in Python and is intended for students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in sol

ocw.mit.edu

MIT 공대의 "Introduction to Computational Thinking and Data Science"(6.0002, Fall 2016) 강의 정리 자료

MIT6_0002F16_lec12.pdf
1.80MB

핵심 키워드

  • 군집화(Clustering)
  • 위계적 군집화(Hierarchical clustering)
  • K 평균 군집화(K-means clustering)

학습 내용

군집화(Clustering)

  • 군집화는 최적화 문제
    • 지도 학습도 최적화 문제.  군집화는 지도 학습보다 더 간단한 형태
    • 변이성(variability)
      • 군집의 평균과 군집에 포함된 각 샘플 사이의 거리를 모두 합한 것의 제곱
    • 비유사성(dissimilarity)
      • 모든 변이성을 더하고 크기로 나눔
    • 정규화의 장점과 단점
      • 정규화 : 큰 군집에 대한 패널티
      • 정규화를 하지 않으면 크기가 크고 분산이 높은 군집에 더 높은 패널티를 줄 수 있음
    • 목표 함수
      • 각 군집들은 서로 최소한 거리를 가져야 함
      • 제약 조건 : 군집의 개수를 제한

위계적 군집화(Hierarchical clustering)

  • 각 샘플을 각각의 군집에 할당
    • 그리고 가장 비슷한 두 개의 군집을 찾음
    • 그리고 이 둘을 하나의 군집으로 합침
    • 이제 군집의 수가 N개에서 N-1개
    • 이 과정을 계속 반복!
      • 특정 부분에서 반복을 멈출 수 있음
  • 덴드로그램을 만들 수 있음
    • ⇒ 각 단계에서 어떤 것들이 합쳐졌는지 보여줌
  • 신경 써야하는 것
    • 거리의 정의
      • 어떤 것을 측정하냐에 따라 다양한 대답이 나올 수 있음
    • 단일 연결(Single linkage)
      • 한 쌍의 군집 사이의 거리
      • 한 군집에 포함된 샘프과 다른 군집에 포함된 샘플 사이의 최소 거리
    • 완전 연결(Complete-linkage)
      • 두 군집 사이의 거리를 각 샘플간의 최대 거리라고 정의
    • 평균 연결
      • 한 집단과 다른 집단 사이의 모든 요소 간의 평균 거리를 두 집단 사이의 거리라고 정의
  • 단점
    • 너무 결정론적
    • 주어진 연결 방법에 대해 항상 같은 결과
    • 무작위적인 결과는 만들어지지 않음
    • 이 결과가 최적의 결과가 아닐 수 있음
    • 매우 느림 

 

K 평균 군집화(K-means clustering)

  • K : 필요한 군집의 개수
  • 초기 상태에서 K개의 샘플을 무작위로 선택
    • 그리고 K개의 군집을 생성할 때 각 샘플을 각 가까운 중심에 할당
    • 그리고 K개의 새로운 중심을 계산
    • 각 군집에 포함된 샘플들의 평균을 이용
    • 중심이 안바뀔때까지 계속 반복!
    • 중심이 안바뀌면 converge
  • 단점
    • K를 잘못 설정하면 무의미한 결과가 나올 수 있음
    • 이미 알고 있는 지식(도메인 지식)으로 K를 설정
    • 다양한 K를 시도하고 결과의 품질을 확인하며 K를 찾기
    • 각 결과는 초기 방법에 따라 다름 ⇒ 샘플링, 반복 횟수에 따라 다름

yield

  • 반복문
  • 내장 함수라 쉽게 사용 가능

Z Scaling

  • 평균 0 표준편차는 항상 1
  • 보간법을 사용하기도 함
    • 가장 작은 값을 0, 큰 값 1으로 하고 선형 보간!
  • 스케일링하면 모델이 차이가날 수 있음
  • 데이터를 다룰 때 생각을 많이해야 하는 이유
    • 값 넣고 정답 얻기까지 기다릴 수 없음. 미리 생각하고 행동!

 

 

실습 코드

 

MIT_Reference_code.zip

 

drive.google.com

 

728x90