[!Important]+ Goals
인공지능의 주목분야 ' 기계학습 ' 에 대해 정확히 이해하는 것
[!info]+ Subject
- 기계학습 프로젝트와 관련된 모든 사람
- 기계학습을 체계적으로 복습하고 싶은 사람
[!abstract]+ Curriculum
1. 기계학습 개론
2. 기계학습의 흐름
3. 성능평가지표
기계학습 개론
- 딥러닝 : 생물의 신경세포의 구조를 모방한 알고리즘 " 뉴럴 네트워크 " 의 이용이 주류인, 현재 가장 높은 정확도를 얻기 쉬운 기계학습 기술
- 강화학습 : 정답 라벨도 대량의 데이터도 필요하지 않은 자율적인 기계학습
- 에이전트, 환경, 행동, 보수

기계학습의 흐름
학습 데이터를 다루는 법
홀드아웃법
훈련 데이터 + 검증 데이터
K- 분할 교차검증

- LOO (Leave-One-Out) : K 를 데이터 수로 잡고 하나씩만 빼서 검증.
- 50~100 데이터 정도
과학습
- 과학습 방지
- 정규화 : 선형회귀식에 이용 가능
- 드롭아웃 : 딥러닝에 이용 가능
- 교차검증법 : 모두 이용 가능
앙상블 학습
복수의 모델에 학습을 시켜서 모든 예측결과를 통합하는 것으로 범화성능을 높이는 기법
- 배깅 : 동시에 여러 모델을 학습시켜 평균을 취함
- 분류는 보팅
- 부스팅 : 학습 결과를 다음 모델의 학습에 반영
성능평가지표
성능평가지표
혼동행렬

Accuracy : 정답률
Accuracy=AllTP+TN
- 데이터에 치우침이 있는 경우, 직감과 먼 결과가 나올 수도 있다.
Precision : 정확도
Precision=TP+FPTP
- " 고객의 취향이 아닌 상품을 제안하고 싶지 않다 " 등의 케이스에서는 높은 정확도를 요구. 웹서비스의 추천 등에서는 가장 중요시되는 지표
Recall : 재현율
Recall=TP+FNTP
- 절대 틀리면 안 되는 경우엔, 높은 재현율이 필요. 의료검진 등에서 중요시된다.
F-measure : F 값 = 정확도와 재현율의 조화평균
F-measure=Precision×Recall2×Precision×Recall=2TP+FN+FP2TP
- 기계학습 모델을 평가할 때, 정답률과 더불어 가장 이용되는 지표.
성능평가 간단한 구현
#sk/confusion_matrix
import numpy
from sklearn.metrics import confusion_matrix
y_true = [0,0,0,1,1,1]
y_pred = [1,0,0,1,1,1]
confmat = confusion_matrix(y_true, y_pred)
print (confmat)
PR 곡선
정확도와 재현율
- 트레이드 오프 관계

PR 곡선

