SlideShare a Scribd company logo
1 of 10
Download to read offline
DSAC M2
데이터 전처리
데이터 전처리
전처리(preprocessing)
데이터 분석 성능을 높이고자 데이터를 수정하거나 형태를 변경하는 것
데이터 분석 유형
데이터 정제(cleaning) : 빠진 값/오류값을 체우는 것
데이터 변형 시 로그 혹은 역수를 취하여 정규분포에 맞게 구간 설정
수치가 아닌 데이터는 수치값으로
ex. 월~일을 0~6으로
혹은 수치 데이터 분포를 정규화할 수 있음
데이터 전처리
결측치(missing value) : 데이터 전처리 중 가장 중요한 과정
버리기
결측치가 있는 데이터를 버림
결측치가 있는 데이터 비중이 큰 경우 사용 불가
결측치는 입력되지 않은 것인지, 측정되지 않은 것인지를 확인해야 함
대체
평균, 0, 지정한 값 등
어떤 값으로 대체하는가에 따라 결과에 영향을 줄 수 있음
대체되었음을 나타내는 범주형 변수를 정의하면 추적에 용이
NA
전처리 단계에서 빠진 데이터를 처리하지 않음
데이터 전처리
틀린 값(Invalid value) : 잘못 입력된 값
양수 데이터에 음수 / 숫자 데이터에 문자
ex. 키(m) 데이터에 1.7(O) / 1.7m(X)
결측치는 발견이 쉬우나 틀린 값은 잘못된 값이므로 명확한 기준에 따라 프로
그램을 통해 찾아야 함
이상치(Outlier) : 데이터의 일반적인 범위를 벗어나는 값
ex. 사람의 키
2m : 드물지만 있을 수 있는 값 = 이상치
5m : 사람 키로 있을 수 없는 값 = 틀린 값
검출 : 이상치를 찾아내는 것
데이터 전처리가 아닌 분석 단계에서 시행
데이터 변환
데이터를 다른 형태로 바꾸어 사용하는 것
범주형으로 변환
수치 데이터를 구간으로 나누어 사용(10대 / 20대 등)
내신과 같이 데이터 범위는 같을 수도, 다를수도 있음
One-Hot Encoding
모든 범주를 column으로 추가
해당 범주에 속하면 1, 아니면 0으로 값 설정
컴퓨터가 범주형 데이터를 확실히 인식 가능
스케일링 : 데이터 범위를 조정
데이터 전처리
MinMaxScaler()
최소 0, 최대 1로 조정
StandardScaler()
평균 0, 표준편차 1의 데이터로 조정
유사도 계산
클러스터링 : 새 데이터가 속하는 유사도(similarity), 데이터 간의 거리(distance)
새 메일이 일반 메일과 스팸 중 어디에 가까운가?
각 데이터 간의 성격과 단위가 다르므로, 표준 스케일링 후 유사도 계산
Euclidian distance
두 점 간의 거리를 계산하는 가장 일반적 방법
2차원
n차원
dist = (X − X ) + (Y − Y )
2 1
2
2 1
2
dist = (p − q )
∑i=1
n
i i
2
유사도 계산
코사인 유사도
두 점의 각도가 작을수록(벡터가 가리키는 방향이 같을수록) 가깝다고 판단
자카드(Jaccard) 유사도
데이터 간의 공통점을 찾는 유사도
추천 시스템에 주로 사용
데이터 X,Y의 교집합 원소 수를 전체 원소 수로 나눈다.
s (x, y) =
cos ∣X∣∣Y ∣
X⋅Y
J(X, Y ) = ∣X∪Y ∣
∣X∩Y ∣
K-means : 거리 기반 클러스터링
임의 중앙점에서 최소 거리를 갖는 점들을 같은 클러스터로 정의
from sklearn.cluster import KMeans
k = KMeans(n_cluster=2).fit_predict(data)
DBSCAN : 밀도 기반 클러스터링
Density-Based Clustering of Applications with Noise
임의 데이터에서 시작하여 가까이 있는 점들을 같은 클러스터로 정의
k-means 대비 클러스터 수의 지정이 필요가 없는 장점
from sklearn.cluster import DBSCAN
dbscan = DBSCAN(eps = 0.2, min_samples = 10, metric = 'euclidian').fit_predict(data)
# eps : 거리 정의
# min_samples : 클러스터 중심 데이터가 이웃해야 하는 데이터 개수

More Related Content

What's hot

Chapter 1. Introduction
Chapter 1. IntroductionChapter 1. Introduction
Chapter 1. Introductionbutest
 
Data preprocessing in Data Mining
Data preprocessing  in Data MiningData preprocessing  in Data Mining
Data preprocessing in Data MiningSamad Baseer Khan
 
Data preprocessing
Data preprocessingData preprocessing
Data preprocessingkayathri02
 
Data Mining: Mining stream time series and sequence data
Data Mining: Mining stream time series and sequence dataData Mining: Mining stream time series and sequence data
Data Mining: Mining stream time series and sequence dataDataminingTools Inc
 
Handling Missing Values for Machine Learning.pptx
Handling Missing Values for Machine Learning.pptxHandling Missing Values for Machine Learning.pptx
Handling Missing Values for Machine Learning.pptxShamimBhuiyan8
 
05 Classification And Prediction
05   Classification And Prediction05   Classification And Prediction
05 Classification And PredictionAchmad Solichin
 
バイオインフォマティクスによる遺伝子発現解析
バイオインフォマティクスによる遺伝子発現解析バイオインフォマティクスによる遺伝子発現解析
バイオインフォマティクスによる遺伝子発現解析sesejun
 
3.3 hierarchical methods
3.3 hierarchical methods3.3 hierarchical methods
3.3 hierarchical methodsKrish_ver2
 
Data Mining: Concepts and Techniques (3rd ed.) - Chapter 3 preprocessing
Data Mining:  Concepts and Techniques (3rd ed.)- Chapter 3 preprocessingData Mining:  Concepts and Techniques (3rd ed.)- Chapter 3 preprocessing
Data Mining: Concepts and Techniques (3rd ed.) - Chapter 3 preprocessingSalah Amean
 
Big Data [sorry] & Data Science: What Does a Data Scientist Do?
Big Data [sorry] & Data Science: What Does a Data Scientist Do?Big Data [sorry] & Data Science: What Does a Data Scientist Do?
Big Data [sorry] & Data Science: What Does a Data Scientist Do?Data Science London
 
全脳アーキテクチャ若手の会 機械学習勉強会 ベイジアンネットワーク
全脳アーキテクチャ若手の会 機械学習勉強会 ベイジアンネットワーク全脳アーキテクチャ若手の会 機械学習勉強会 ベイジアンネットワーク
全脳アーキテクチャ若手の会 機械学習勉強会 ベイジアンネットワークErika_Fujita
 
Capter10 cluster basic : Han & Kamber
Capter10 cluster basic : Han & KamberCapter10 cluster basic : Han & Kamber
Capter10 cluster basic : Han & KamberHouw Liong The
 
Data preparation
Data preparationData preparation
Data preparationTony Nguyen
 
Introduction to Pandas and Time Series Analysis [PyCon DE]
Introduction to Pandas and Time Series Analysis [PyCon DE]Introduction to Pandas and Time Series Analysis [PyCon DE]
Introduction to Pandas and Time Series Analysis [PyCon DE]Alexander Hendorf
 
Classification in Data Mining
Classification in Data MiningClassification in Data Mining
Classification in Data MiningRashmi Bhat
 
Outlier analysis,Chapter-12, Data Mining: Concepts and Techniques
Outlier analysis,Chapter-12, Data Mining: Concepts and TechniquesOutlier analysis,Chapter-12, Data Mining: Concepts and Techniques
Outlier analysis,Chapter-12, Data Mining: Concepts and TechniquesAshikur Rahman
 

What's hot (20)

Decision tree
Decision treeDecision tree
Decision tree
 
Chapter 1. Introduction
Chapter 1. IntroductionChapter 1. Introduction
Chapter 1. Introduction
 
Data preprocessing in Data Mining
Data preprocessing  in Data MiningData preprocessing  in Data Mining
Data preprocessing in Data Mining
 
Data preprocessing
Data preprocessingData preprocessing
Data preprocessing
 
Data Mining: Mining stream time series and sequence data
Data Mining: Mining stream time series and sequence dataData Mining: Mining stream time series and sequence data
Data Mining: Mining stream time series and sequence data
 
Pandas
PandasPandas
Pandas
 
Handling Missing Values for Machine Learning.pptx
Handling Missing Values for Machine Learning.pptxHandling Missing Values for Machine Learning.pptx
Handling Missing Values for Machine Learning.pptx
 
05 Classification And Prediction
05   Classification And Prediction05   Classification And Prediction
05 Classification And Prediction
 
バイオインフォマティクスによる遺伝子発現解析
バイオインフォマティクスによる遺伝子発現解析バイオインフォマティクスによる遺伝子発現解析
バイオインフォマティクスによる遺伝子発現解析
 
3.3 hierarchical methods
3.3 hierarchical methods3.3 hierarchical methods
3.3 hierarchical methods
 
Data model and entity relationship
Data model and entity relationshipData model and entity relationship
Data model and entity relationship
 
Data Mining: Concepts and Techniques (3rd ed.) - Chapter 3 preprocessing
Data Mining:  Concepts and Techniques (3rd ed.)- Chapter 3 preprocessingData Mining:  Concepts and Techniques (3rd ed.)- Chapter 3 preprocessing
Data Mining: Concepts and Techniques (3rd ed.) - Chapter 3 preprocessing
 
Big Data [sorry] & Data Science: What Does a Data Scientist Do?
Big Data [sorry] & Data Science: What Does a Data Scientist Do?Big Data [sorry] & Data Science: What Does a Data Scientist Do?
Big Data [sorry] & Data Science: What Does a Data Scientist Do?
 
全脳アーキテクチャ若手の会 機械学習勉強会 ベイジアンネットワーク
全脳アーキテクチャ若手の会 機械学習勉強会 ベイジアンネットワーク全脳アーキテクチャ若手の会 機械学習勉強会 ベイジアンネットワーク
全脳アーキテクチャ若手の会 機械学習勉強会 ベイジアンネットワーク
 
Capter10 cluster basic : Han & Kamber
Capter10 cluster basic : Han & KamberCapter10 cluster basic : Han & Kamber
Capter10 cluster basic : Han & Kamber
 
Data preparation
Data preparationData preparation
Data preparation
 
Introduction to Pandas and Time Series Analysis [PyCon DE]
Introduction to Pandas and Time Series Analysis [PyCon DE]Introduction to Pandas and Time Series Analysis [PyCon DE]
Introduction to Pandas and Time Series Analysis [PyCon DE]
 
Data Mining: Data Preprocessing
Data Mining: Data PreprocessingData Mining: Data Preprocessing
Data Mining: Data Preprocessing
 
Classification in Data Mining
Classification in Data MiningClassification in Data Mining
Classification in Data Mining
 
Outlier analysis,Chapter-12, Data Mining: Concepts and Techniques
Outlier analysis,Chapter-12, Data Mining: Concepts and TechniquesOutlier analysis,Chapter-12, Data Mining: Concepts and Techniques
Outlier analysis,Chapter-12, Data Mining: Concepts and Techniques
 

Similar to DSAC M2 #2

Week5 data vis(2)
Week5 data vis(2)Week5 data vis(2)
Week5 data vis(2)Eun Yu
 
데이터처리와 통계 기본 머신러닝
데이터처리와 통계 기본 머신러닝데이터처리와 통계 기본 머신러닝
데이터처리와 통계 기본 머신러닝Sunggon Song
 
R을 이용한 데이터 분석
R을 이용한 데이터 분석R을 이용한 데이터 분석
R을 이용한 데이터 분석simon park
 
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지Han Woo PARK
 
3.unsupervised learing
3.unsupervised learing3.unsupervised learing
3.unsupervised learingHaesun Park
 
3장 데이터 수집, 정제에서 분석까지
3장 데이터 수집, 정제에서 분석까지3장 데이터 수집, 정제에서 분석까지
3장 데이터 수집, 정제에서 분석까지Hyochan PARK
 
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic용진 조
 
From maching learning to deep learning episode2
From maching learning to deep learning episode2 From maching learning to deep learning episode2
From maching learning to deep learning episode2 Yongdae Kim
 
HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델Seong-Bok Lee
 
딥러닝으로 구현한 이상거래탐지시스템
딥러닝으로 구현한 이상거래탐지시스템딥러닝으로 구현한 이상거래탐지시스템
딥러닝으로 구현한 이상거래탐지시스템ChoDae
 
데이터 분석 프로세스
데이터 분석 프로세스데이터 분석 프로세스
데이터 분석 프로세스Lee Seungeun
 
Machine learning bysogood
Machine learning bysogoodMachine learning bysogood
Machine learning bysogoodS.Good Kim
 
머신러닝 프로젝트 - LSTM을 이용한 주가(KODEX200) 예측
머신러닝 프로젝트 - LSTM을 이용한 주가(KODEX200) 예측머신러닝 프로젝트 - LSTM을 이용한 주가(KODEX200) 예측
머신러닝 프로젝트 - LSTM을 이용한 주가(KODEX200) 예측PARK SUNGMIN
 
2.supervised learning(epoch#2)-1
2.supervised learning(epoch#2)-12.supervised learning(epoch#2)-1
2.supervised learning(epoch#2)-1Haesun Park
 

Similar to DSAC M2 #2 (18)

Week5 data vis(2)
Week5 data vis(2)Week5 data vis(2)
Week5 data vis(2)
 
데이터처리와 통계 기본 머신러닝
데이터처리와 통계 기본 머신러닝데이터처리와 통계 기본 머신러닝
데이터처리와 통계 기본 머신러닝
 
R을 이용한 데이터 분석
R을 이용한 데이터 분석R을 이용한 데이터 분석
R을 이용한 데이터 분석
 
07. PCA
07. PCA07. PCA
07. PCA
 
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
 
3.unsupervised learing
3.unsupervised learing3.unsupervised learing
3.unsupervised learing
 
3장 데이터 수집, 정제에서 분석까지
3장 데이터 수집, 정제에서 분석까지3장 데이터 수집, 정제에서 분석까지
3장 데이터 수집, 정제에서 분석까지
 
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
캐빈머피 머신러닝 Kevin Murphy Machine Learning Statistic
 
분석6기 4조
분석6기 4조분석6기 4조
분석6기 4조
 
From maching learning to deep learning episode2
From maching learning to deep learning episode2 From maching learning to deep learning episode2
From maching learning to deep learning episode2
 
HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델
 
딥러닝으로 구현한 이상거래탐지시스템
딥러닝으로 구현한 이상거래탐지시스템딥러닝으로 구현한 이상거래탐지시스템
딥러닝으로 구현한 이상거래탐지시스템
 
데이터 분석 프로세스
데이터 분석 프로세스데이터 분석 프로세스
데이터 분석 프로세스
 
Machine learning bysogood
Machine learning bysogoodMachine learning bysogood
Machine learning bysogood
 
[PandoraCube] 게임 데이터 분석: 클러스터링
[PandoraCube] 게임 데이터 분석: 클러스터링[PandoraCube] 게임 데이터 분석: 클러스터링
[PandoraCube] 게임 데이터 분석: 클러스터링
 
Rdatamining
Rdatamining Rdatamining
Rdatamining
 
머신러닝 프로젝트 - LSTM을 이용한 주가(KODEX200) 예측
머신러닝 프로젝트 - LSTM을 이용한 주가(KODEX200) 예측머신러닝 프로젝트 - LSTM을 이용한 주가(KODEX200) 예측
머신러닝 프로젝트 - LSTM을 이용한 주가(KODEX200) 예측
 
2.supervised learning(epoch#2)-1
2.supervised learning(epoch#2)-12.supervised learning(epoch#2)-1
2.supervised learning(epoch#2)-1
 

More from Je Hun Seo

Semiconductor Fundamentals 4.2.
Semiconductor Fundamentals 4.2.Semiconductor Fundamentals 4.2.
Semiconductor Fundamentals 4.2.Je Hun Seo
 
Semiconductor Fundamentals 4.1
Semiconductor Fundamentals 4.1Semiconductor Fundamentals 4.1
Semiconductor Fundamentals 4.1Je Hun Seo
 
Semiconductor Fundamentals 1.1
Semiconductor Fundamentals 1.1Semiconductor Fundamentals 1.1
Semiconductor Fundamentals 1.1Je Hun Seo
 
Semiconductor Fundamentals 3.4.
Semiconductor Fundamentals 3.4.Semiconductor Fundamentals 3.4.
Semiconductor Fundamentals 3.4.Je Hun Seo
 
Semiconductor Fundamentals 3.3
Semiconductor Fundamentals 3.3Semiconductor Fundamentals 3.3
Semiconductor Fundamentals 3.3Je Hun Seo
 
Semiconductor Fundamentals 3.2
Semiconductor Fundamentals 3.2Semiconductor Fundamentals 3.2
Semiconductor Fundamentals 3.2Je Hun Seo
 
Semiconductor Fundamentals 3.1
Semiconductor Fundamentals 3.1Semiconductor Fundamentals 3.1
Semiconductor Fundamentals 3.1Je Hun Seo
 
Semiconductor Fundamentals 2.3
Semiconductor Fundamentals 2.3Semiconductor Fundamentals 2.3
Semiconductor Fundamentals 2.3Je Hun Seo
 
Semiconductor Fundamentals 2.2
Semiconductor Fundamentals 2.2Semiconductor Fundamentals 2.2
Semiconductor Fundamentals 2.2Je Hun Seo
 
Semiconductor Fundamentals 2.1.
Semiconductor Fundamentals 2.1.Semiconductor Fundamentals 2.1.
Semiconductor Fundamentals 2.1.Je Hun Seo
 
Semiconductor Fundamentals 1.3
Semiconductor Fundamentals 1.3Semiconductor Fundamentals 1.3
Semiconductor Fundamentals 1.3Je Hun Seo
 
Semiconductor Fundamentals 1.2
Semiconductor Fundamentals 1.2Semiconductor Fundamentals 1.2
Semiconductor Fundamentals 1.2Je Hun Seo
 
Analyzing Time Series Data
Analyzing Time Series DataAnalyzing Time Series Data
Analyzing Time Series DataJe Hun Seo
 

More from Je Hun Seo (13)

Semiconductor Fundamentals 4.2.
Semiconductor Fundamentals 4.2.Semiconductor Fundamentals 4.2.
Semiconductor Fundamentals 4.2.
 
Semiconductor Fundamentals 4.1
Semiconductor Fundamentals 4.1Semiconductor Fundamentals 4.1
Semiconductor Fundamentals 4.1
 
Semiconductor Fundamentals 1.1
Semiconductor Fundamentals 1.1Semiconductor Fundamentals 1.1
Semiconductor Fundamentals 1.1
 
Semiconductor Fundamentals 3.4.
Semiconductor Fundamentals 3.4.Semiconductor Fundamentals 3.4.
Semiconductor Fundamentals 3.4.
 
Semiconductor Fundamentals 3.3
Semiconductor Fundamentals 3.3Semiconductor Fundamentals 3.3
Semiconductor Fundamentals 3.3
 
Semiconductor Fundamentals 3.2
Semiconductor Fundamentals 3.2Semiconductor Fundamentals 3.2
Semiconductor Fundamentals 3.2
 
Semiconductor Fundamentals 3.1
Semiconductor Fundamentals 3.1Semiconductor Fundamentals 3.1
Semiconductor Fundamentals 3.1
 
Semiconductor Fundamentals 2.3
Semiconductor Fundamentals 2.3Semiconductor Fundamentals 2.3
Semiconductor Fundamentals 2.3
 
Semiconductor Fundamentals 2.2
Semiconductor Fundamentals 2.2Semiconductor Fundamentals 2.2
Semiconductor Fundamentals 2.2
 
Semiconductor Fundamentals 2.1.
Semiconductor Fundamentals 2.1.Semiconductor Fundamentals 2.1.
Semiconductor Fundamentals 2.1.
 
Semiconductor Fundamentals 1.3
Semiconductor Fundamentals 1.3Semiconductor Fundamentals 1.3
Semiconductor Fundamentals 1.3
 
Semiconductor Fundamentals 1.2
Semiconductor Fundamentals 1.2Semiconductor Fundamentals 1.2
Semiconductor Fundamentals 1.2
 
Analyzing Time Series Data
Analyzing Time Series DataAnalyzing Time Series Data
Analyzing Time Series Data
 

DSAC M2 #2

  • 2. 데이터 전처리 전처리(preprocessing) 데이터 분석 성능을 높이고자 데이터를 수정하거나 형태를 변경하는 것 데이터 분석 유형 데이터 정제(cleaning) : 빠진 값/오류값을 체우는 것 데이터 변형 시 로그 혹은 역수를 취하여 정규분포에 맞게 구간 설정 수치가 아닌 데이터는 수치값으로 ex. 월~일을 0~6으로 혹은 수치 데이터 분포를 정규화할 수 있음
  • 3. 데이터 전처리 결측치(missing value) : 데이터 전처리 중 가장 중요한 과정 버리기 결측치가 있는 데이터를 버림 결측치가 있는 데이터 비중이 큰 경우 사용 불가 결측치는 입력되지 않은 것인지, 측정되지 않은 것인지를 확인해야 함 대체 평균, 0, 지정한 값 등 어떤 값으로 대체하는가에 따라 결과에 영향을 줄 수 있음 대체되었음을 나타내는 범주형 변수를 정의하면 추적에 용이 NA 전처리 단계에서 빠진 데이터를 처리하지 않음
  • 4. 데이터 전처리 틀린 값(Invalid value) : 잘못 입력된 값 양수 데이터에 음수 / 숫자 데이터에 문자 ex. 키(m) 데이터에 1.7(O) / 1.7m(X) 결측치는 발견이 쉬우나 틀린 값은 잘못된 값이므로 명확한 기준에 따라 프로 그램을 통해 찾아야 함 이상치(Outlier) : 데이터의 일반적인 범위를 벗어나는 값 ex. 사람의 키 2m : 드물지만 있을 수 있는 값 = 이상치 5m : 사람 키로 있을 수 없는 값 = 틀린 값 검출 : 이상치를 찾아내는 것 데이터 전처리가 아닌 분석 단계에서 시행
  • 5. 데이터 변환 데이터를 다른 형태로 바꾸어 사용하는 것 범주형으로 변환 수치 데이터를 구간으로 나누어 사용(10대 / 20대 등) 내신과 같이 데이터 범위는 같을 수도, 다를수도 있음 One-Hot Encoding 모든 범주를 column으로 추가 해당 범주에 속하면 1, 아니면 0으로 값 설정 컴퓨터가 범주형 데이터를 확실히 인식 가능 스케일링 : 데이터 범위를 조정
  • 6. 데이터 전처리 MinMaxScaler() 최소 0, 최대 1로 조정 StandardScaler() 평균 0, 표준편차 1의 데이터로 조정
  • 7. 유사도 계산 클러스터링 : 새 데이터가 속하는 유사도(similarity), 데이터 간의 거리(distance) 새 메일이 일반 메일과 스팸 중 어디에 가까운가? 각 데이터 간의 성격과 단위가 다르므로, 표준 스케일링 후 유사도 계산 Euclidian distance 두 점 간의 거리를 계산하는 가장 일반적 방법 2차원 n차원 dist = (X − X ) + (Y − Y ) 2 1 2 2 1 2 dist = (p − q ) ∑i=1 n i i 2
  • 8. 유사도 계산 코사인 유사도 두 점의 각도가 작을수록(벡터가 가리키는 방향이 같을수록) 가깝다고 판단 자카드(Jaccard) 유사도 데이터 간의 공통점을 찾는 유사도 추천 시스템에 주로 사용 데이터 X,Y의 교집합 원소 수를 전체 원소 수로 나눈다. s (x, y) = cos ∣X∣∣Y ∣ X⋅Y J(X, Y ) = ∣X∪Y ∣ ∣X∩Y ∣
  • 9. K-means : 거리 기반 클러스터링 임의 중앙점에서 최소 거리를 갖는 점들을 같은 클러스터로 정의 from sklearn.cluster import KMeans k = KMeans(n_cluster=2).fit_predict(data)
  • 10. DBSCAN : 밀도 기반 클러스터링 Density-Based Clustering of Applications with Noise 임의 데이터에서 시작하여 가까이 있는 점들을 같은 클러스터로 정의 k-means 대비 클러스터 수의 지정이 필요가 없는 장점 from sklearn.cluster import DBSCAN dbscan = DBSCAN(eps = 0.2, min_samples = 10, metric = 'euclidian').fit_predict(data) # eps : 거리 정의 # min_samples : 클러스터 중심 데이터가 이웃해야 하는 데이터 개수