시드니랩
[Data Mining] 10. Subspace Clustering - Transformation Based Method 본문
[Data Mining] 10. Subspace Clustering - Transformation Based Method
시드니효상 2020. 10. 27. 13:41만약 데이터의 분포가 아래와 같이 되어있으면 어떻게 처리해야 할까?
x축, y 축으로 각각 project 하더라도, 의미있는 분포가 나오지 않는다.
하지만 직관적으로 보았을때도 분명히 한 축으로는 밀집된 클러스터이다.
이런 상황을 해결하기위해, 클러스터링에 사용하는 축을 변경하는 것이 KL Transformation 이다.
◉ KL Transform
Step 1 : 각 데이터들의 평균(e)을 구한다.
Step 2 : 모든 데이터들로부터 평균(e) 만큼 뺀 데이터 셋을 생성한다. ex : (x-e, y-e) 데이터
Step 3 : 평균(e)가 중심이된 새로운 데이터 셋을 대상으로, covariance matrix를 만든다.
- 아래 그림 보충 : 데이터의 개수 N, 2D점 5개 를 갖고 생성한 covariance matrix, 통계적 방법에 따라 N-1 을 하기도 한다. (For tuning)
Step 4: Covariance Matrix의 Eigen value, Eigen vector 를 구하고, transform matrix를 만든다.
- cf : 당연한 것이지만, Eigen vector은 차원의 개수만큼 나온다.
- eigen vector로 matrix 를 만든다.
Step 5 : Step 4에서 얻은 matrix 로 각 데이터들을 변환하여 eigen vector을 기준으로 재 정의 된 좌표를 구한다.
Step 6: 2d 기준, 두개의 eigen vector e1, e2 중, 작은 eigen value를 가지는 축에 새로운 데이터들을 project 하여 subspace cluster 을 얻는다.
- 큰 eigen value를 갖는 축에 project 하면, dimesion reduction이 되며, 이는 차원을 줄이되, information loss 를 minimize 할 수 있는 방법이다.
- 작은 eigen value 를 갖는 eigen vector에 project 하면, information loss는 maximize 되며, 이를 subspace clustering 이라고 한다.
'랩 > Data Mining' 카테고리의 다른 글
[Public Dataset] 1- Gowalla, Diginetica, Last.fm, YooChose (0) | 2021.01.13 |
---|---|
[Data Mining] 11. Classification - Decision Tree (0) | 2020.10.27 |
[Data Mining] 9. Subspace Clustering - Entropy Based Method (0) | 2020.10.13 |
[Data Mining] 8. Subspace Clustering - Density Based Method (0) | 2020.10.06 |
[Data Mining] 7. Outlier Analysis (0) | 2020.10.05 |