Machine Learning Yearing - ANDREW NG

- 2 mins

Machine Learning Yearing

Machine Learning Yearing 책을 읽으며 개인적으로 받아들인 내용을 요약한 글입니다.

ML에서 어떠한 문제를 해결하기 위해 modeling - 관찰 - 수정 와 같이 일련의 과정을 반복적으로 이뤄진다. 이러한 과정에서 어떠한 모델이 더 좋을까에 대한 metric 이 필요하다.

loop

빠르게 간단한 시스템을 개발 -> 학습 -> 어떻게 동작했는지 관찰(Error analysis)

Data set

dataset을 위의 그림과 같이 나누기엔 train set이 부족하다면 K-fold cross validation(실제 머신러닝에서 모델 평가와 모델 선택을 위해 가장 널리 사용되는 기법.) 을 이용한다.

K-fold cross validation example, k=5

5-fold cv

data를 5(k)개로 나눈 다음 (각각을 fold라 부름) 첫번째 학습에는 첫번째 폴드를 validation 으로 이용하고 두번째 학습에는 두번째 폴드를 validation으로 이용하고 … 다섯(k)번째 학습에는 다섯번째 폴드를 validation으로 이용한다.

Metric

이렇게 준비한 data set으로 모델을 학습시키면 어떻 모델이 좋은가에 대한 평가지표를 metric이라 부른다. metric에는 accuracy가 많이 사용되고 그다음으로 ROC Curve와 Precision Recall Plot, F-score등이 많이 사용된다. information_theory

** 복수 지표를 가져야 할때 한개의 지표로 만들어준다

ex) 이거 있는데 까먹었ㅇ.ㅏㅓㄴㅇ라ㅓㄴㅇㄹ 다시 공부하고 올리기 미ㅓㅏㄴ

##Error analysis 맨 윗사진의 루프를 돌때 방향성을 잡는다.

  1. dev set 잘못 분류 한걸 수작업 으로 오류 분류 Error

표를 만들고 해당 오차를 해결하면 전체 성능 얼마나 좋아질지 생각해보고 방향수정

만약 dev가 너무많아 분석 어려울땐? dev set의 10%를 eyeball dev set 으로 두고 한다. 나머지 90%는 black dev set ->이걸로 파라미터 조정 이것도 수정 필요

편향과 분산

편향이 높아? -> 더깊게 모델을 만든다 -> 오버피팅주의! -> 정규화, dropout으로 막자. 분산이 높아? -> Train set 추가 (편향에 영향 안준다.)

img 뒷부분 공부해서 올리기

comments powered by Disqus
rss facebook twitter github gitlab youtube mail spotify lastfm instagram linkedin google google-plus pinterest medium vimeo stackoverflow reddit quora quora