머신러닝

<<<머신러닝>> 과적합

미스터 한뺑 2022. 9. 7. 23:50
반응형

**과적합

  • 과대적합(overfitting)
    • 모델이 학습데이터에 필요 이상으로 적합
    • 데이터 내의 존재하는 규칙뿐만 아니라 불완전한 샘플도 학습
  • 과소적합(underfitting)
    • 모델이 학습데이터에 제대로 적합하지 못함
    • 데이터 내에 존재하는 규칙도 제대로 학습 못함.

 

 

모델을 검증을 할 때 그래프로 시각화 한 사진들이다 .우리는 Fit의 시각화를 한 그래프대로 구현을 해야한다 .

 

 

 

**실습

 

seaborn 모듈을 이용해서 데이터를 불러온다 .

 

 

불러온 데이터들이다 . 이 데이터들을  머신러닝에 검증을 하려면 스케일링을 해줘서 인공지능이 잘 학습할수 있도록 해줘야한다 . 스케일링을 실습을 해보겠다 .

 

먼저 범주형 컬럼들만 스케일링을 해주면 되는 상황이라 cols라는 변수에 컬럼명을 넣고 

데이터들을 features 변수에 넣어준다 .

 

정답값인 target도 변수에 지정을 한다.

 

인코딩을 해준다.

쨘 ! 결과는 이렇식으로 원핫인코딩으로 나왔다 .

 

여기부터 시작이다 !

 

혹시 결측치가 있나 확인을 해본 후 있으면 결측치부터 채워놓고 시작해야한다 .

age  만... 결측치가 있는걸 확인했다 .

fillna메소드로 결측칠를 채워준다.

 

 

결측치까지 채웠으면 이제 검증을 할수 있는 데이터가 완성이 된것이다. 여기서 우리는 학습데이터와 검증데이터를 나눠야한다 .

 

 

 

모델성능을 검증을 마무리 하였다 . 모델 복잡도에 따라 성능이 얼마나 차이 나는지도 검증과 정확도를 확인을 해보았다.

모델이 복잡할수록 검증은 높지만 정확성은 다소 떨어지는것을 볼수 있으며

 

복잡도를 줄일수록 검증을 떨어졌지만  정확성이랑 차이가 안나는것을 알수가 있다 .

이 값을 보면서 아무리 모델 성능이 좋아도 정확성이랑은 상관이 없는것으로 알수있다 .

 

반응형