similarity, neighbors, and cluseters
Similarity
공통된 특징 찾기
-물건 추천, 비슷한 경우로부터 추론, clustering(비슷한 것끼리 묶기)
유사도 측정 -> via distance
거리 공식 사용하기(Euclidean Distance)
Nearest-neighbor reasoning : 가장 가까운 이웃 most similar
1) Classification using nearest neighbors
중심으로부터 가까운 k개의 데이터 찾아서 다수인 것을 따름/probablilty 도 측정 가능
2) Regression Using NN
2.1 k를 몇으로 할까?
평균 값 이용해 실제 값 예측해보기
-> k를 결정하는 단순한 정답이 없음. 여러 과정을 거쳐야 함
-k가 홀수이면 편함
-k=n이면 전체 선택하여 추측에 사용됨
cross validation 할 때 k값에 따라 정확도에 차이가 난다
2.2 모든 이웃을 같게 취급해야할까?
주변에 있는 이웃들간의 거리 차이가 많이 나는 경우 있을 수 있음
->weighted voting: 각각의 값에 비중을 주는 방식
->weighted average: 평균을 구함
가까운 값일수록 가중치(similarity weight)를 더 줌.
similarity weight: 1/Distance^2
contribution: 전체 가중치의 합이 1
1-NN: 매우 복잡, 각각 하나의 결정경계 모두 있음(overfitting 위험)
k-NN: 단순화. 해당 영역에 있는 원소는 모두 둘 중 하나라고 생각
k값이 클수록 단순화됨 (smoothing)
intelligibility: 결정 과정 설명하기 쉽다
어떻게 knowledge 생겼는지 설명하기 어렵다
효율성 판단: training 속도 매우 빠르다
예측 분류가 매우 비싸다
(linear 과 비교해 보았을 때 knn은 모든 원소와 비교해야 하니까 computing적 효율성이 낮다)
-> 학습은 쉬우나 test 속도가 오래 걸린다
Heterogeneous Attributes
데이터값 단순화하기 : 성별 0/1 분류하기
큰 숫자 normalize 하기: [0,10,100]=>[0,1]
More distance functions
Euclidean distance(유클리드)-대각이동거리 구하기
Manhattan distance(맨하튼)-직선이동거리 구하기(절댓값)
Jaccard distance-두 집합간의 유사도 측정, 교집합 많을수록 거리값이 감소한다
Cosine distance-두 벡터간의 코사인 각도 측정
내적한 결과가 클수록 (세타값 작다는 의미) 거리 감소
Clustering
target 값 필요 없음. unsupervised segmentation
grouping이 잘 되어있으면 추출, profiling 쉬움
two main clusetering
1) Hierarchical clustering
가까운 cluster끼리 merge하여 하나의 cluster가 될 때까지 반복하기
거리측정 방법 1. cluster에서 가장 가까이 있는 점끼리 거리
2. 모든 점의 중심끼리의 거리
Dendrogram-cluster간의 계층을 명확하게 보여줌(아래로 내려갈수록 cluster 개수 증가)
landscape파악하는 것이 가능함
2) k-means clustering
k: cluster의 개수 means:centroids(cluster 내부에 있는 점들의 평균)
k개의 center 고르고 모든 점을 이 중에 한곳에 속하게 하기
이후 각 cluster의 center 할당하고 수렴할 때까지 반복하기
고려해야 할 부분
1. picking initial k centroids(centroids를 어디로 해야 하는가)
여러번 할 때마다 intial centroids를 다르게 해보고 가장 잘 clustering 된 결과 고르기
(평균 지름이 짧을수록 best clustering)
2.picking the right value of k(k값을 얼마로 해야 하는가)
kmeans를 여러번 해보고 가장 잘 clustering 되는 부분 고르기(average diameter로 판단)-elbow point 주목하기
'Data Science > 데이터사이언스개론' 카테고리의 다른 글
Ch8 visualizing Model Performance (0) | 2023.06.06 |
---|---|
Ch7 Good Model (0) | 2023.06.06 |
Ch5 overfitting and its avoidance (0) | 2023.06.06 |
튜플 리스트 딕셔너리 (0) | 2023.04.24 |
Ch4 Fitting a Model to Data (0) | 2023.04.22 |