PYTHON
20221122 = PCA, Clustering
K.Y.PARK
2022. 11. 22. 13:19
PCA = Principal Component Analysis
이것을 사용하는 주요 목적?
1 = 데이터의 차원 축소
2 = 데이터의 시각화 및 해석
- 처음 몇개의 차원이 정보를 최대한 많이 설명할 수 있도록 자료를 새로운 방향에서 바라보도록 하는 방법
- 고차원의 데이터를 효과적으로 분석하기 위한 대표적 분석 기법으로 차원 축소, 시각화, 군집화, 압축 등에 활용
- 대표적인 주성분을 만들어 차원을 줄이는 방법이다.
- 일반적으로 주성분은 원본 특성의 개수만큼 찾을 수 있음
- Sklearn의 PCA모델을 훈련하면 자동으로 특성마다 평균값을 빼서 원점에 맞춰 준다.
Clustering
- Unsupervised Learning으로 구분한다.
- 군집화 = 유사한 속성들을 갖는 관측지들을 묶어 전체 데이터를 몇 개의 개인 군집으로 나누는 것
- 그룹핑할 Y클래스가 없다. 즉, 기준이 없다.
Clustering의 목적
1 = 각 군집에 대한 속성을 알기 위해서
2 = 관측치 클래스를 결정하기 위해서
Clustering 방법
Clustering은 데이터들을 Grouping하기 위한 기준이 필요하다. 지도학습과 같이 함수를 따로
정의 할 수 없다. 비지도학습에는 Y레이블이 없기 때문이다. 맞고 틀리고를 결정할 수 없으므로
그래서 유사도라는 개념을 사용한다.
Clustering 활용사례
고객의 구매 패턴, 가족 구성, 소비지역 등 서로 유사한 고객이나 군집들을 찾는데 사용이 된다.
이렇게 비슷한 특징을 가지는 고객들에게 맞춤 서비스나 차별화된 서비스를 제공할 수 있다.
Clustering 장점
- 유사성을 위해 여러 형태의 데이터를 적용 가능
- 분석 용이한 장점
Clustering 단점
- 초기군집수 설정이 중요하다
- 결과해석에 주의해야 함
- 자료가 혼합유협인 경우, 정의가 어려울 수 있음
Hierarchical Clustering
- 계층적 군집화
- 가까운 개체들을 하나씩 묶어나가면서 클러스터 형성
- 반복하여 1개의 군집이 되도록 한다.
- dendogram으로 표현한다
K-means Clustering
- K개 = 주어진 cluster의 개수
- k개 만큼의 random seed 선택 (데이터 세트에서 찾을 것으로 예상되는 클러스터 수)
- means는 각 데이터로부터 그 데이터가 속한 클러스터의 중심까지의 평균 거리이고 이 값을
최소화 하는것이 이 알고리즘의 목표이다.