지도학습과 비지도학습의 차이
답을 알려주고 학습을 시키느냐(지도학습) 답과 특징을 알려주지 않고 학습을 시키느냐(비지도학습)
k-최근접 이웃 (k-Nearest Neighbor, kNN)
> 특징
대표적인 지도학습 알고리즘
특정 공간 내에서 입력과 제일 근접한 K개의 요소를 찾아 더 많이 일치하는 것으로 분류하는 알고리즘
유사한 특성을 가진 데이터들끼리는 거리가 가깝다고 가정하여 거리 공식을 사용해 가까운 데이터 탐색
k값 변경 가능
> 예시
k = 1
기준 데이터로부터 가장 가까이에 있는 데이터
ex) 나는 무슨색인가? 나와 가장 가까이에 있는 데이터가 파란색이면 나도 파란색
k = 3
기준 데이터로부터 가장 가까이에 있는 데이터 3개
ex) 나는 무슨색인가? 나와 가장 가까이에 있는 데이터 3개 중 과반 이상이 노란색이면 나도 노란색
> 예측률을 높일 수 있는 방법?
- k값을 홀수값으로 놓고 찾는게 좋다 (과반수를 넘길 수 있도록)
- 최적의 k값을 적용하자
kNN은 지도학습으로 기준데이터값을 알고있다. 기준데이터와 비교했을 때 정답인 경우의 k값을 적용하면 된다.
> 장단점
장점
- 구현이 쉽다
- 알고리즘을 이해하기 쉽다
- 별도의 모델 학습이 필요 없다
- 하이퍼 파라미터가 적다 (이웃의 개수k)
단점
- 예측 속도가 느리다
- 메모리를 많이 쓴다
- 노이즈 데이터에 예민하다
최적의 K 찾기 - 교차검증
> k-fold 교차검증 (k폴드 교차검증)
100의 데이터를 80은 훈련용, 20은 테스트용으로 나눈다.
훈련용 80 중에 일부를 검증용으로 나눈다.
검증용의 치우침을 예방하고자 k폴드 검증을 한다.
k = 10 >> 80개의 데이터를 10으로 나눈다.
10개의 그룹이 생기면 1번을 검증용으로 쓰고 나머지를 훈련용으로 사용하여 학습시킨다.
다음 2번그룹을 검증용으로 쓰고 나머지를 훈련용으로 사용하여 학습시킨다.
10번그룹까지 반복하여 검증용으로 학습시킨 후 평균값을 최종 검증값으로 사용한다.
선형 회귀 분석
입력으로 전달받은 값을 보고 1차함수를 만들어 모든 x값에 대한 y값을 예측한다.
분류 분석
입력으로 전달받은 값을 보고 바이너리 형태의 true false로 분류한다.
'ML&DL > study' 카테고리의 다른 글
머신러닝 알고리즘 6. 퍼셉트론 (0) | 2021.06.16 |
---|---|
머신러닝 알고리즘 5. 선형 회귀 분석 (0) | 2021.06.15 |
머신러닝 알고리즘 4. 나이브 베이즈 (0) | 2021.06.15 |
머신러닝 알고리즘 3. 의사결정 트리 (0) | 2021.06.14 |
머신러닝 알고리즘 2. 서포트 벡터머신(SVM) (0) | 2021.06.11 |