Model Performance Analytics


교과서 열심히 읽어라

Over-fitting the data

unknown한 instance는 overfitting될 가능성이 굉장히 높다.


Over-fitting

expense of generalization : 너무 두루뭉실 해져버리기 때문에 문제가 된다.

generalization을 희생하고 specific한 것을 취하는 방법도 있다.

 

대다수는 조금씩 오버피팅 하는 경우이다.

 

열심히 노력하면 패턴을 찾아낼 것이다. 그러나 우리는 좀더 정확히 예측가능한 모델을 원한다.

 

Ex)

테이블 모델이란 것이 있다. Charm problem 에 있는 고객들을 과거데이터에서 찾아내서 feature vector로 모아놨다.

과거데이터를 봤을 때 그 안에서 Charm problem을 맞출 확률은 100%이다. Training 데이터를 memorize 한 것일 뿐이다.

우리가 배우고자 하는 특성이 있는 테이블은 맞는데 과연 이 테이블이 일반화가 될 수 있을까?

우리가 보지못한 고객들의 feature vector를 가져왔을 때 그것들을 우리가 생각한대로 예측할 수 있는 힘이 있을까?

왜 이것이 Generalize 될 수 없는 모델이고 어떤 문제가 있는지 답변해주기. 112p 12'

 


Fitting Graph

 

Fitting Graph는 어떤 모델의 복잡성과 함수 측면에서의 정확성을 이야기해 줄 수 있다.

훈련데이터와 Holdout의 차이점 :

모든 데이터를 훈련하는데 쓰면 우리가 보지 못한 데이터를 남겨두지 않은 것이다.

전체 주어진 데이터의 일정 정도를 남겨놓는 것이 Holdout 데이터이거 그것을 남겨놓고 Testing 데이터로 쓴다.

 

노드의 개수가 많아질수록 복잡해진다.

처음에는 노드가 적기 때문에 에러가 높다.

그러나 점점 세분화되어가면서 세분화한 모델을 만들어가면서 에러율이 떨어진다.

 

Complexity가 높다는 것은 모든 variable을 사용해서 트리를 구성해버리는 것이다.

즉 모든 데이터를 암기해버렸다는 뜻이다. perfect하게 오버피팅이 되었다는 것이다.

 

Holdout데이터는 훈련 데이터처럼 에러율이 떨어지지만 점점 복잡도가 높아질수록 에러율이 높아진다.

 

왜?

훈련 데이터에 specific하게 맞춰서 모델을 만들어 버렸기 때문에 unknown 데이터를 구분할 수 없게 되었기 때문이다.

 

그래서 Prunning(가지치기)를 통해 영양가 있는 데이터들만 모을 수 있게 한다.


테이블의 싸이즈가 커지면 커질수록 Training 데이터의 에러율이 떨어진다.

그래서 끝에 갔을 경우 테이블의 N이 채워지고 완벽한 암기를 하게 된다.

그러나 Holdout 데이터는 모르므로 Holdout 데이터의 에러율은 일정하다.

이것이 바로 table model의 문제이다.

 

100명중 20명의 데이터를 Holdout으로 남겨놓았을 때, 

80으로 시작해서 에러율이 떨어지고, Holdout데이터는 No churn이 된다.


Over-fitting in tree induction

holdout 데이터를 통해서 가장 generalize하기 좋은 것을 찾는데 그 지점이 Sweet spot이다.


Over-fitting in linear discriminants

복잡성이 높아진다는 것은 다른 변수들을 추가하는 것이다.

점점 노드가 많아지고 specific하게 된다.

 


Example: Classifying Flowers

 

 

 

점을 또하나 더해보면 데이터를 다르게 나눈다.

Outlier들을 커버하기 위해서 Logistic Regression은 확 바꿨다.

이럴 경우 Logistic Regression은 Overfitting 되었다고 볼 수 있다.

 

Nonlinear하게 해주면 dimesionality가 올라가고 complexity도 올라가고

그래서 perfect하게 분리하기 위한 freedom을 준것이다. 그러나 이것이 독이될 수 있다.

그래서 overfitting의 가능성이 높아질 수 있다.

 

'💡 AI > ML' 카테고리의 다른 글

꼭 알아야할 ML 용어  (0) 2021.05.09
ML W6-1 Overfitting and Its Avoidance  (0) 2021.04.05
ML W5-1 Fitting a Model to Data [OO]  (0) 2021.03.29
ML W4-1-2 Fitting a Model to Data  (0) 2021.03.22
ML W4-1-1 Supervised Segmentation  (0) 2021.03.22
복사했습니다!