Program/머신러닝

머신러닝 이해하기 (2)

사막여유 2022. 6. 1. 20:35
728x90

머신 러닝 단계

 - 학습 ( Train )  : 내가 가지고있는 학습 데이터를 이용하여 모델을 학습하는 과정

 - 예측 ( Predict ) : 학습된 모델을 이용하여 새로운 데이터로부터 적절한 값을 예측하는 과정. ( 추론 )

 

 

 * 학습 레이블 - 학습 영상에 대한 정답 ( 클래스 번호 )

 

머신 러닝 학습의 목적

 

 - 미래의 새로운 데이터를 더 정확하게 예측하기 위함
   모델의 일반화 ( generalization ) 성능을 향상 시키는 방향으로 학습해야 함.

 

 

 - over fitting 을 보게되면 현재 학습해온 데이터에 비교해서 보자면 좋은 결과일 수 있지만

   노이즈까지 포함된 데이터로 새로운 학습데이터를 받게되면 오히려 좋지 않는 결과일 수 있다.

 - 따라서 보통 Balanced 나 Appropirate-fitting 처럼 중앙 이미지 까지만 학습을 시키는게 가장 적당한

  학습이다.

 

 * Overfitting

   - 학습 데이터셋을 지나치게 정확하게 구분 하도록 학습하여 모델의 일반화 성능이 떨어지게 되는 현상

   - 원인 

  • 학습 데이터 셋이 너무 적은 경우
  • 학습 데이터 셋이 전체 데이터셋의 특성/분포를 반영하지 않는 경우 ( 큰 노이즈가 낀 영상 )
  • 모델이 복잡할수록 과적합 발생확률이 높음

 

위와같은 오버피팅을 피하고자 한다면 아래와같은 방법을 사용할 수 있다.

 

Original Set 에 1000장의 사진이 있다면 800장은 학습 , 200장은 실제 데이터로 사용하는 방법

또는 600장은 학습하고 200장은 검증용 , 200장은 실제 데이터로 사용하는 방법 등등이 있다.

 

 

 

 

 

 

728x90