SlideShare a Scribd company logo
1 of 11
Download to read offline
Cluster (1)
유 은
목차
0
1. 데이터 과학에서 다루는 문제
2. 군집화 (clustering)
3. K-means clustering
데이터 과학에서 다루는 문제
1
Berry & Linoff (2011)Data Mining Techniques, WILEY
• 목표와 정답이 정해져 있는 경우
✓분류 (classification)
✓추정 (estimation)
✓예측 (prediction)
✓Machine learning으로 구분하자면, 입력 데이터와 그에 따라 기대하는 출력값이 있는
supervised learning
• 목표와 정답이 정해져 있지 않은 경우
✓연관성 규칙 (association rules)
✓군집화 (clustering)
✓Machine learning 으로 구분하자면, 입력 데이터는 있지만 데이터 내에서 구조를 찾아가
야 하는 unsupervised learning
데이터 과학에서 다루는 문제
1
• 분류 (classification)
✓항목의 속성을 바탕으로 어떤 범주(category)에 속하는지 분류
✓사전에 범주에 대한 명확한 정의가 존재(예/아니오, 치와와/머핀)
• 추정 (estimation)
✓항목의 속성을 바탕으로 점수/확률/주가 등 연속형 변수 추정
• 예측 (prediction)
✓분류/추정과 같으나 예측 시점이 되어야 정확한지 알 수 있는 경우
데이터 과학에서 다루는 문제
1
• 연관성 규칙 (association rules)
✓어떤 사건이 다른 사건과 얼마나 자주 동시에 발생하는지를 파악
✓데이터로부터 자주 발생하는 패턴 탐색
• 군집화 (clustering)
✓주어진 항목에서 속성이 유사한 항목끼리 묶어 몇 개의 범주로 구분
✓분류와 비슷하지만 나눌 항목과 개수가 미리 정해져 있지 않음
군집화(clustering)
2
• 시각화에서의 군집은 시각적으로 식별할 수 있는 패턴을 강조하는 정도
• 수업에서는 각 데이터 포인트(관측치) 간 거리에 따라서 보이지 않는 패턴을 발
견하는 k-means clustering을 다룹니다.
C4
C3
C1
C2
C0
y:
channel
engagement
(recommendations)
군집화(clustering)
2
피터 브루스, 앤드류 브루스 (2018). 데이터 과학을 위한 통계. 이준용 옮김. 한빛미디어
http://www.mit.edu/~9.54/fall14/slides/Class13.pdf
• 데이터를 클러스터(cluster)라는 그룹으로 나누며, 어떤 클러스터로 나뉠지는
정해져 있지 않다.
• 한 클러스터 안의 데이터끼리는 비슷하고 다른 클러스터의 데이터끼리는 서로
구분이 되어야 한다.
• 데이터로부터 유의미한 그룹들을 구하는 것을 목적으로 한다.
✓클러스터의 크기
✓클러스터의 개수
✓해석에 따라 좌우된다.
K-means clustering
3
피터 브루스, 앤드류 브루스 (2018). 데이터 과학을 위한 통계. 이준용 옮김. 한빛미디어
• K-means clustering은 최초로 개발된 클러스터링 기법으로, 알고리즘이 상대
적으로 간단하고 큰 데이터에도 손쉽게 사용할 수 있어 널리 사용된다.
• K개의 클러스터로 나눌 때, 각 클러스터에 포함된 데이터들의 거리 제곱합이 최
소가 되도록 한다.
• 각 클러스터의 크기가 동일하다는 보장은 없지만 클러스터끼리는 멀리 떨어지
도록 한다.
K-means clustering
3
안드레아스 뮐러, 세라 가이도 (2019) 파이썬 라이브러리를 활용한 머신러닝, 박해선 옮김, 한빛미디어
K-means clustering 알고리즘의 진행
1. 클러스터 중심(cluster center, centroid)
의 개수(K)를 지정한다.
2. 아래 과정을 반복(iteration)한다.
① 클러스터 중심을 무작위로 할당한다.
② 각 데이터 포인터를 가장 가까운 클러스터
중심에 할당한다.
③ 할당된 클러스터에 포함된 데이터들의 거리
제곱합 및 벡터 평균을 계산한다.
④ 계산을 바탕으로 클러스터 중심을 갱신한다.
3. 이전 클러스터 중심과 갱신된 클러스터
중심의 거리가 일정 미만이면 반복을 종
료하고 결과를 도출한다.
K-means clustering
3
안드레아스 뮐러, 세라 가이도 (2019) 파이썬 라이브러리를 활용한 머신러닝, 박해선 옮김, 한빛미디어
• 사이킷런(scikit-learn): 파이썬 머신러닝 라이브러리
• 분류, 회귀, 클러스터링 등 다양한 목적의 머신러닝 알고리즘을 제공한다.
• 머신러닝 교육을 위해 예제 데이터 및 전처리 기능을 제공한다.
• NumPy, SciPy 라이브러리와 연동된다.
• 텐서플로우(TensorFlow), 케라스(Keras), 파이토치(PyTorch) 등 딥러닝 전문
라이브러리들이 있으나 여전히 널리 사용된다.
End of document
유 은
eunyu1031@gmail.com

More Related Content

More from Eun Yu

Week9 data vis(5)
Week9 data vis(5)Week9 data vis(5)
Week9 data vis(5)Eun Yu
 
Week7 data vis(4)
Week7 data vis(4)Week7 data vis(4)
Week7 data vis(4)Eun Yu
 
Week6 data vis(3)
Week6 data vis(3)Week6 data vis(3)
Week6 data vis(3)Eun Yu
 
Week5 data vis(2)
Week5 data vis(2)Week5 data vis(2)
Week5 data vis(2)Eun Yu
 
Week14 wrapup
Week14 wrapupWeek14 wrapup
Week14 wrapupEun Yu
 
Week11 map
Week11 mapWeek11 map
Week11 mapEun Yu
 
Week4 data visualization
Week4 data visualization Week4 data visualization
Week4 data visualization Eun Yu
 
Week2-3 review
Week2-3 reviewWeek2-3 review
Week2-3 reviewEun Yu
 
Week1 ot
Week1 otWeek1 ot
Week1 otEun Yu
 

More from Eun Yu (9)

Week9 data vis(5)
Week9 data vis(5)Week9 data vis(5)
Week9 data vis(5)
 
Week7 data vis(4)
Week7 data vis(4)Week7 data vis(4)
Week7 data vis(4)
 
Week6 data vis(3)
Week6 data vis(3)Week6 data vis(3)
Week6 data vis(3)
 
Week5 data vis(2)
Week5 data vis(2)Week5 data vis(2)
Week5 data vis(2)
 
Week14 wrapup
Week14 wrapupWeek14 wrapup
Week14 wrapup
 
Week11 map
Week11 mapWeek11 map
Week11 map
 
Week4 data visualization
Week4 data visualization Week4 data visualization
Week4 data visualization
 
Week2-3 review
Week2-3 reviewWeek2-3 review
Week2-3 review
 
Week1 ot
Week1 otWeek1 ot
Week1 ot
 

Week12 cluster(1)

  • 2. 목차 0 1. 데이터 과학에서 다루는 문제 2. 군집화 (clustering) 3. K-means clustering
  • 3. 데이터 과학에서 다루는 문제 1 Berry & Linoff (2011)Data Mining Techniques, WILEY • 목표와 정답이 정해져 있는 경우 ✓분류 (classification) ✓추정 (estimation) ✓예측 (prediction) ✓Machine learning으로 구분하자면, 입력 데이터와 그에 따라 기대하는 출력값이 있는 supervised learning • 목표와 정답이 정해져 있지 않은 경우 ✓연관성 규칙 (association rules) ✓군집화 (clustering) ✓Machine learning 으로 구분하자면, 입력 데이터는 있지만 데이터 내에서 구조를 찾아가 야 하는 unsupervised learning
  • 4. 데이터 과학에서 다루는 문제 1 • 분류 (classification) ✓항목의 속성을 바탕으로 어떤 범주(category)에 속하는지 분류 ✓사전에 범주에 대한 명확한 정의가 존재(예/아니오, 치와와/머핀) • 추정 (estimation) ✓항목의 속성을 바탕으로 점수/확률/주가 등 연속형 변수 추정 • 예측 (prediction) ✓분류/추정과 같으나 예측 시점이 되어야 정확한지 알 수 있는 경우
  • 5. 데이터 과학에서 다루는 문제 1 • 연관성 규칙 (association rules) ✓어떤 사건이 다른 사건과 얼마나 자주 동시에 발생하는지를 파악 ✓데이터로부터 자주 발생하는 패턴 탐색 • 군집화 (clustering) ✓주어진 항목에서 속성이 유사한 항목끼리 묶어 몇 개의 범주로 구분 ✓분류와 비슷하지만 나눌 항목과 개수가 미리 정해져 있지 않음
  • 6. 군집화(clustering) 2 • 시각화에서의 군집은 시각적으로 식별할 수 있는 패턴을 강조하는 정도 • 수업에서는 각 데이터 포인트(관측치) 간 거리에 따라서 보이지 않는 패턴을 발 견하는 k-means clustering을 다룹니다. C4 C3 C1 C2 C0 y: channel engagement (recommendations)
  • 7. 군집화(clustering) 2 피터 브루스, 앤드류 브루스 (2018). 데이터 과학을 위한 통계. 이준용 옮김. 한빛미디어 http://www.mit.edu/~9.54/fall14/slides/Class13.pdf • 데이터를 클러스터(cluster)라는 그룹으로 나누며, 어떤 클러스터로 나뉠지는 정해져 있지 않다. • 한 클러스터 안의 데이터끼리는 비슷하고 다른 클러스터의 데이터끼리는 서로 구분이 되어야 한다. • 데이터로부터 유의미한 그룹들을 구하는 것을 목적으로 한다. ✓클러스터의 크기 ✓클러스터의 개수 ✓해석에 따라 좌우된다.
  • 8. K-means clustering 3 피터 브루스, 앤드류 브루스 (2018). 데이터 과학을 위한 통계. 이준용 옮김. 한빛미디어 • K-means clustering은 최초로 개발된 클러스터링 기법으로, 알고리즘이 상대 적으로 간단하고 큰 데이터에도 손쉽게 사용할 수 있어 널리 사용된다. • K개의 클러스터로 나눌 때, 각 클러스터에 포함된 데이터들의 거리 제곱합이 최 소가 되도록 한다. • 각 클러스터의 크기가 동일하다는 보장은 없지만 클러스터끼리는 멀리 떨어지 도록 한다.
  • 9. K-means clustering 3 안드레아스 뮐러, 세라 가이도 (2019) 파이썬 라이브러리를 활용한 머신러닝, 박해선 옮김, 한빛미디어 K-means clustering 알고리즘의 진행 1. 클러스터 중심(cluster center, centroid) 의 개수(K)를 지정한다. 2. 아래 과정을 반복(iteration)한다. ① 클러스터 중심을 무작위로 할당한다. ② 각 데이터 포인터를 가장 가까운 클러스터 중심에 할당한다. ③ 할당된 클러스터에 포함된 데이터들의 거리 제곱합 및 벡터 평균을 계산한다. ④ 계산을 바탕으로 클러스터 중심을 갱신한다. 3. 이전 클러스터 중심과 갱신된 클러스터 중심의 거리가 일정 미만이면 반복을 종 료하고 결과를 도출한다.
  • 10. K-means clustering 3 안드레아스 뮐러, 세라 가이도 (2019) 파이썬 라이브러리를 활용한 머신러닝, 박해선 옮김, 한빛미디어 • 사이킷런(scikit-learn): 파이썬 머신러닝 라이브러리 • 분류, 회귀, 클러스터링 등 다양한 목적의 머신러닝 알고리즘을 제공한다. • 머신러닝 교육을 위해 예제 데이터 및 전처리 기능을 제공한다. • NumPy, SciPy 라이브러리와 연동된다. • 텐서플로우(TensorFlow), 케라스(Keras), 파이토치(PyTorch) 등 딥러닝 전문 라이브러리들이 있으나 여전히 널리 사용된다.
  • 11. End of document 유 은 eunyu1031@gmail.com