2022 05 26
2022-05-26
Clustering vs Classification
- Classification(분류)
- 기존에 존재하는 데이터의 카테고리 관계를 파악하고, 새롭게 관측된 데이터의 카테고리를 스스로 판별하는 과정
- supervised learning의 한 종류
- 각 개체가 어떤 그룹에 들어갈까 예측하는 기법
- Clustering vs Classification
- 군집
- 각 개체의 범주가 군집의 정보를 모르는 경우
- 카테고리(라벨)이 없는 경우
- 데이터 자체의 특성에 대해 알고 싶은 경우
- 분류
- Supervised Learning vs Unsupervised Learning
- Supervised Learning
- 맞춰야 하는 값이 있는 것 (예/아니요/지표 등)
- ex 1. 어떤 학생이 대학원에 합격할지 여부 판단
- ex 2. 저 사람이 독신으로 살지 결혼할지
- ex 3. 지금 집값 7억인데, 내년에 얼마 될 것 같아?
- Classification(분류)
- 예측할 값이 Categorical 한 경우
- Binary Classification: 예/아니요
- Multi-class Classification: 여러가지 값이 될 수 있음
- SVM, Logistic Regression 등
- Regression(회귀)
- Unsupervised Learning
- 맞춰야 하는 값이 없는 것
- label 없이 이들의 특성을 종합적으로 파악해서 묶는 과정
- label이 없는 것에 대한 문제 해결
- Clustering(군집)
- 비슷한 것을 묶는 과정
- K-means, DBSCAN, SOM 등
- Association Rule(연관 규칙)
- 어떤 사건이 얼마나 자주 함께 발생하는가
- 서로 얼마나 연관되어 있는가
PCA vs LDA
- PCA
- Unsupervised Learning의 일종
- 여러 변수 간에 존재하는 상관관계를 통해 주성분을 추출 => 이로써 차원 추출
- 데이터를 축에 사영했을 때 가장 높은 분산을 가지는 데이터의 축을 찾아 그 축으로 차원 축소

- 사영 시 분산이 크다 == 원래 데이터의 분포를 잘 설명할 수 있다.
- 이렇게 찾은 주축을 첫번째 축, 이에 직각이 되는 벡터를 두번쩨 측으로 선정
- 직교하는 축에는 첫번째 축에 겹친놈들이 절때 똑같은 곳에 사영될 수 없음
- 이렇게 찾은 축들에 원본 데이터 투영하면 벡터 축의 갯수만큼 원본 데이터가 차원 축소
- 독립변수들 사이 상관 관계를 없애 숨은 latent variable 찾아내거나, noise 줄일 때 사용
- 메트릭
- PC: 기존 변수들로 이루어진 선형 벡터, 기존의 변수들 설명
- PC loadings: 기존 변수들과 PC 사이의 correlation 값, 해당 PC로 기존의 변수 얼마나 잘 설명하는 지 %로
- PC Score: 각각의 PC에 대해 재생성된 observation data
- 특징
- Assumption: 독립 변수들 사이에 관계가 linear하다고 가정
- Objective Function: X^(T)X
- Parameters: best fitting line parameter 찾기
- LDA
- Supervised Learning
- Classification과 Dimensional Reduction 까지 동시에 사용하는 알고리즘
- Classification시 클래스 내의 분산 최소로, 클래스끼리의 분산은 최대로!
- LDA를 통해 하나의 축으로 변형된 데이터들이... 같은 클래스 내에서는 그 값이 최소로, 다른 클래스에서는 그 값이 차가 크게
- 입력 데이터 세트를 저차원 공간에 투영해 차원을 축소하지만, 지도학습 분류에서 사용하기 쉽도록 개별 클래스를 분별할 수 있는 기준을 최대한 유지하며 차원 축소
- 입력 데이터의 결정 값 클래스를 최대한으로 분리할 수 있는 축
- 클래스 간 분산을 최대화, 클래스 내부 분산은 최대한 작게
- 특징
- Assumption: 조건적으로 정규 분포 따름
- Objective Function: mean separability/scatter within class
- mean separability: 클래스 간의 차이가 얼만큼 나는가?
- scatter within class: 클래스 내에 분산이 얼마정도인가?
- PCA vs LDA
- 데이터 클래스의 분산 차이 << 데이터 클래스의 평균 차이 => LDA >> PCA
- 데이터 클래스의 분산 차이 >> 데이터 클래스의 평균 차이 => PCA << LDA
- PCA는 입력 데이터의 분산이 가장 큰 축을 찾고, LDA는 입력 데이터의 결정 값 클래스를 최대한 분리할 수 있는 축을 찾음