-
Notifications
You must be signed in to change notification settings - Fork 3
Classification
warmwall edited this page Jun 16, 2019
·
2 revisions
분류(Classification)는 데이터를 사람이 미리 label을 달아 둔 class로 나누는 방법이다. 이 때 한 데이터는 하나의 class에만 속하도록 구현할 수도 있고 여러 class에 속하도록 구현할 수 있다. 데이터가 특정 class에 속하냐/아니냐를 알고 싶을 때 쓰는 알고리즘이다.
분류를 사용하는 예는 아래와 같다.
- 사진 분류: 사진이 사람인지, 자동차인지 등등 어떤 사진에 속하는지 분류할 수 있다.
- 텍스트 분류: 텍스트의 주제 등을 분류할 수 있다.
- 음성 인식: 들어온 음성이 어떤 음절인지 분류할 수 있다.
- K-nearest neighbor classification
- 새로운 데이터가 주어지면, 트레이닝 된 데이터 중에서 가장 가까운 k개의 이웃의 정보로 새로운 데이터를 예측하는 방법.
- Lazy Model, Instance-based Learning: 모델을 별도로 학습하지 않고, 새로운 데이터와 기존 데이터의 거리를 재서 이웃을 뽑는다. (반대되는 개념: Model-based Learning)
- 분류: 가장 가까운 k개의 데이터 중, 가장 비중이 큰 label을 따라간다.
- 회귀: 가장 가까운 k개의 데이터 값의 평균값이 예측값.
하이퍼파라미터 (hyper-parameter)
- k: 탐색할 이웃 수
- 너무 작으면 지역적 특성을 과하게 반영(overfitting), 너무 크면 모델이 과하게 단순해짐(underfitting).
- 데이터의 특성에 따라 적절하게 조절해야 함.
- 거리 측정 방법: Euclidean Distance, Manhattan Distance, ...
reference