
머신러닝을 공부하면서 많이 만날 수 있는 문제 중 하나가 오버피팅이다. 오버피팅은 학습데이터를 지나치게 많이 학습시켜 학습데이터에는 딱 맞지만 테스트 데이터에는 맞지 않는 경우를 말한다. 반대로 언더피팅은 학습데이터의 양이 너무 적어 충분한 학습을 하지 못해 테스트 데이터로 예측하지 못하는 경우를 말한다. 위 그래프를 보면 파란 점들이 데이터고 노란 선이 예측값이다. 첫번째 그래프의 경우 언더피팅되어 데이터에 따른 예측값이 적절하지 않다. 두번째 그래프의 경우 적절하게 학습되어 데이터에 따른 예측값이 대체적으로 잘 맞는다. 세번째 그래프는 오버피팅되어 데이터에 너무 치중되어있어 예측값이 데이터에 따라 급격하게 변동한다. 머신러닝은 학습을 시키는 것이기 때문에 대부분 언더피팅보다는 학습을 너무 많이 시켜서..

머신러닝 명확한 답이 주어진 학습 데이터 세트를 통해 학습 테스트 데이터 세트를 통해 미지의 정답을 예측 > 사이킷런 이용 - sklearn.datasets : 데이터세트 생성 모듈 - sklearn.tree : 트리 기반 ML알고리즘 구현한 클래스 모임 - sklearn.npdel_selection : 데이터분리, 최적의 *하이퍼 파라미터 평가위한 모듈 * 하이퍼 파라미터 : 최적의 학습을 위해 직접 입력하는 파라미터 통칭 머신러닝 개요 1. 데이터 불러오기 2. 데이터 분리 : 학습데이터, 테스트 데이터 3. 모델 학습 : 학습데이터 이용, 머신러닝알고리즘(ML알고리즘) 적용 (x_train, y_train) 4. 예측 수행 : 테스트 데이터로 결과값 예측 (x_test) 5. 평가 : 예측된 결과값..