글쓰기

스마트인재개발원/파이썬

[21.06.30] 머신러닝 이론2

RSpring41 2021. 6. 30. 14:09

▶ 머신러닝 - 기계학습

1. 설명

  - 데이터 기반 학습

  - 인공지능의 한 분야. 컴퓨터가 학습할 수 있도록 알고리즘, 기술 개발

  - 통계, 데이터 마이닝, 컴퓨터 통계

 

2. 종류 

- 지도학습 : 데이터 + 답을 이용해서 규칙을 찾는다                                                                                       

- 비지도학습 : 데이터만 가지고 규칙을 찾는다.

- 강화학습 : 결과에 따라 점수 부여

- 이진 분류, 다중 분류(숫자)

 

 

▶ 지도학습

1. 분류 : 미리 정의된 정답 중 예측

-> 입력 ( 속성), 출력 -> 클래스 값

 

2. 회귀 :  연속적인 숫자 예측

예측값의 작은 차이가 주요하지 않다.

 

 

 

▶ 머신러닝 단계

1. 닭 볶음탕(문제 정의)

2. 데이터 수진(닭 볶음탕)

3. 데이터 전처리 (재료 손질)

4. DEA(탐색전 데이터 분석, 시각화)

5.  모델(알고리즘 `=. 머신) 선택, 하이퍼 파라미터 조정

6. 학습

7. 평가

8. 예측

 

 

▶ 전체 데이터를 7 : 3 정도로 나누어 학습데이터, 검증데이터로 분리하여 사용한다

 

 

 

▶ 일반화, 과대적합, 과소적합 

 

일반화(Generalization) : 훈련세트로 학습한 모델이 테스트 세트에 대해 정확히 예측하도록 하는것.

과대적합(Overfitting) : 훈련 세트에 너무 맞추어져 있어 테스트 세트의 성증저하

과소적합(Underfitting) : 훈련 세트를 충분히 반영하지 못해 훈련 세트, 테스트 세트에서 모두 서능이 저하

---> 일반화 성능이 최대화 되는 모델을 찾는 것이 목표

 

해결방법 

- 주어진 훈련데이터의 다양성이 보장되어야 한다. 다양한 데이터 포인트를 골고루 나타내야 한다.

- 일반적으로 데이터 양이 많으면 일반화에 도움이 된다.

- 하지만 편중된 데이터를 많이 모으는 것은 도움이 되지 않는다.

- 규제을 통해 모델의 복잡도를 적정선으로 설정한다.

 

▶ KNN(K-Nearest Neighbors)

< k 최근접 이웃 알고리즘 >

- 새로운 포인트와 가장 가까운 훈련 데이터셋의 데이터 포인트를 찾아 예측

- k값에 따라서 가까운 이웃의 수가 결정

- 분류와 회귀에 모두 사용가능

 

k값이 작을 수록 모델의 복잡도가 상대적으로 증가(noise값에 민감)

반대로 k값이 커지면 복잡도가 낮아진다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

▶ 

 

 

▶ 

 

▶ 

 

▶ 

 

▶ 

 

▶