클러스터 3

[ML] 06-3 주성분 분석

차원 축소는 원본 데이터의 특성을 적은 수의 새로운 특성으로 변환하는 비지도 학습의 한 종류이다. 차원 축소는 저장 공간을 줄이고 시각화하기 쉽고 다른 알고리즘의 성능을 높일 수 있다는 장점을 갖는다. 주성분 분석은 차원 축소 알고리즘의 하나로 데이터에서 가장 분산이 큰 방향을 찾는 방법이다. 이러한 방향을 주성분이라고 부르며 주성분 분석은 원본 데이터를 주성분에 투영하여 새로운 특성을 만들 수 있다. 일반적으로 주성분은 원본 데이터에 있는 특성 개수보다 작다. PCA 클래스 PCA 클래스를 통해 과일 사진 데이터에서 주성분 분석을 수행해보자. !wget https://bit.ly/fruits_300_data -O fruits_300.npy import numpy as np fruits = np.load..

[ML] 06-2 k-평균

k-평균 알고리즘 소개 k-평균 알고리즘은 처음에 랜덤하게 클러스터 중심을 정하고 클러스터를 만든다. 그다음 클러스터의 중심을 이동하고 다시 클러스터를 만드는 식으로 반복해서 최적의 클러스터를 구성하는 알고리즘이다. 클러스터 중심은 k-평균 알고리즘이 만든 클러스터에 속한 샘플의 특성 평균값이다. 센트로이드라고 부르며 가장 가까운 클러스터 중심을 샘플의 또 다른 특성으로 사용하거나 새로운 샘플에 대한 예측으로 활용할 수 있다. 알고리즘의 작동 방식은 아래와 같다. 무작위로 k개의 클러스터 중심을 정한다. 각 샘플에서 가장 가까운 클러스터 중심을 찾아 해당 클러스터의 샘플로 지정한다. 클러스터에 속한 샘플의 평균값으로 클러스터 중심을 변경한다. 클러스터 중심에 변화가 없을 때까지 2번으로 돌아가 반복한다..

[ML] 06-1 군집 알고리즘

비지도 학습은 머신러닝의 한 종류로 훈련 데이터에 타깃이 없다. 타깃이 없기 때문에 외부의 도움 없이 스스로 유용한 무언가를 학습해야 한다. 대표적인 비지도 학습 작업으로 군집, 차원 축소 등이 있다. 과일 사진 데이터 준비 파일을 읽기 위해 코랩으로 다운로드한다. !wget https://bit.ly/fruits_300_data -O fruits_300_data.npy import numpy as np import matplotlib.pyplot as plt 넘파이에서 npy파일을 로드하기 위해 load()메서드에 파일 이름을 전달한다. fruits = np.load('fruits_300_data.npy') print(fruits.shape) 이 배열의 첫 번째 차원(300)은 샘플의 개수, 두 번째 ..