[모두의 딥러닝] Training / Test data set
📗강의노트/모두의 딥러닝

[모두의 딥러닝] Training / Test data set

728x90
반응형

Sung Kim 님의 "모두의 딥러닝" 강의노트입니다

좋은 강의 감사드립니다!

https://www.youtube.com/watch?v=mQGwjrStQgg&list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm&index=5


머신러닝 모델이 얼마나 잘 작동하는 지 알아보는 법을 배운다

Data   ->  ML Model 로 학습 

모델이 얼마나 훌륭한가 / 예측을 잘 할 수 있는가 / 

Training set을 학습하고 다시 training set을 가지고 예측을 하게 하면 model을 통한 답을 냄 -> 하지만 이는 공정하지 않은 것임 ( 100% 완벽한 답을 할 수도 있음 )
-> 매운 나쁜 방법이다!!

좋은 방법은 30%의 데이터를 잘라서 test set으로 사용하고 앞부분의 70%만 training에 사용하는 것이 좋다. Test set의 Y값은 숨겨놓고 진행한다. 

70%로 학습을 시키고 학습이 끝났을 경우 test set을 주어 답을 도출한다. 그리고 실제 값과 비교하여 성능을 평가한다. ( Y와 Y-hat을 비교하는 것 )

Training set ( 교과서 )  / test set ( 시험문제 ) 
나누어서 학습하는 것이 좋음



알파라는 Learning rate 와 람다라는 regularization 할 때 강도를 정해주는 것이 있다.
-> 모델을 만들 때 사용하는 두 가지의 “상수”

이러한 값을 튜닝할 필요가 있을 때 -> training set을 둘로 나눔
Training set을 학습하고 validation을 가지고 알파,람다를 튜닝함 ( 모의시험 하는 것 )
완료가 되면 그제서야 test set에 대입하여 진행하는 것 !

Training = 교과서
Validation = 실전 모의고사 
Test = 실전 시험

데이터 셋이 많을 때 다 넣어서 학습하기 힘들다! 그럴 때 online learning 이라는 학습방법이 있다. 

Training set이 100만개 있다고 할 때 한 번에 학습하려면 많은 것이 요구된다. 그래서 잘라서 10만개씩 학습을 시킨다. 이 때 모델이 해야할 일은 첫 번째 학습의 결과가 모델에 남아있어야한다. ( 그 이전의 것들 학습한 것 기억 )
model에 계속적으로 추가되는 것 —> online learning 
새로운 학습데이터가 들어오면  기존의 학습했던 것은 남아있고, 새로운 데이터에 대해서만 추가적으로 학습한다!

MNIST dataset 숫자 손글씨 데이터셋 : 우편번호를 자동으로 인식하기 위해서 
training 이미지와 label /  test의 이미지와 label

정확도는 실제데이터의 Y값과 모델이 예측한 값 Y-hat을 비교하여 100개 중에 10개 맞으면 10%정확도라고 말할 수 있다. 

이미지 관련에서는 95~99%를 넘고 있음!







728x90
반응형