train_test_split, KFold, cross_val_score 관련 질문
430
작성한 질문수 2
앞서 다른 분이 K-fold 질문을 올려주셨는데, 이와 관련해 추가 질문이 있습니다.
1. 권철민님 말씀대로 테스트 데이터셋의 분포가 학습 데이터 세트와 다르거나 할 경우, 평균 검증 정확도에 비해 테스트 세트 정확도가 매우 낮은 경우가 발생할 것 같은데, 이런 경우에도 테스트 세트의 정확도를 기준으로 모델을 평가하나요??
2. 또다른 질문을 보니, train_test_split()과 cross_val_score()를 같이 사용하지 않는 것 같은데, scores=cross_val_score() 할 경우 test 데이터에 대한 정확도는 따로 확인하지 않는 건가요?
(GridSearchCV 사용시에만 train_test_split을 사용하나요?)
답변 1
0
안녕하십니까,
1번 질문의 답변은 조금 내용이 길기도 하고, 방금전에 다른 질문의 답변과 동일하게 답변 드릴 수 있을 것 같습니다. https://www.inflearn.com/questions/80305 참조 부탁드립니다.
2. scores=cross_val_score() 할 경우 test 데이터에 대한 정확도는 따로 확인하지 않는 건가요? 의 질문의도는 잘 이해했는데, 답변이 조금 애매할 수 있습니다.
train_test_split()은 API 이름이 train과 test를 분리하는 것으로 되어있어서 그렇지 실제로는 데이터 세트를 특정 비율로 (2등분) 분리하는 것입니다. 분리된 데이터를 편의상 학습, 테스트 데이터 세트로 부를 뿐입니다.
일반적으로 테스트 데이터는 학습 시 검증용으로 사용하지 않고, 아예 꽁꽁 감춰놓고 최종 테스트때만 성능 평가를 위해 사용합니다. 그리고 cross_val_score()는 주로 교차 검증용으로만 활용합니다. cross_val_score()를 전체 데이터(학습 + 테스트 데이터) 에 적용을 못할 이유는 없지만 일반적으로 그렇게 적용하지는 않고 아래와 같은 프로세스로 적용합니다.
가. train_test_split()로 학습/테스트 데이터 분리
나. 분리된 학습 데이터로 cross_val_score()나 GridSearchCV()로 교차 검증 수행.
다. 학습된 모델을 테스트 데이터로 테스트
GridSearchCV도 위와 마찬가지로 적용합니다.
감사합니다.
안녕하세요 열심히 수강중인 학생입니다
0
60
2
정수 인덱싱
0
68
2
넘파이 오류
0
85
2
11강 numpy의 axis 축 질문 드립니다.
0
85
2
Kaggle 에서 Santander customer satisfaction data 를 다운로드 되지가 않습니다.
0
78
2
Feature importances 를 보여주는 barplot 이 그래프로 안보여져요.
0
70
2
타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.
0
75
2
타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.
0
64
2
5강 강의 오류가 있어요.
0
84
1
실무에서 LTV 관련 모델 선택 질문입니다!
0
72
2
14강 강의 듣는중에 궁금한게 있어서 질문합니다~
0
69
3
파이썬 다운그레이 후 사이킷런 재설치
0
117
2
좋은 강의 감사합니다.
0
72
2
scoring 함수 음수값
0
67
2
6번 강의에 사이킷런, 파이썬, 아나콘다 각각 버전 일치 안 시키고 진행해도 강의 따라가 지나요?
0
100
2
분류 평가 정확도 예측
0
76
2
안녕하세요. 강의 들으면서 업무에 적용하고 싶은 수강생입니다.
0
98
1
카카오톡 채널 있나요
0
106
1
혹시 강의에서 사용하시는 ppt 받을 수 있는건가요
0
189
2
pca 스케일링 관련하여 질문드립니다.
0
100
2
주피터 대신 구글 코랩
0
172
2
강의에서 사용하는 pdf or ppt자료는 따로 없는 건가요?
0
147
2
실루엣 스코어..
0
85
2
float64 null 값 처리 방법
0
102
2





