인프런 커뮤니티 질문&답변

co choi님의 프로필 이미지
co choi

작성한 질문수

캐글 Advanced 머신러닝 실전 박치기

선생님 정확도 측정에 대해서 질문있습니다..!

작성

·

139

0

선생님 항상 강의 잘 듣고있습니다..! 빅데이터 전문가가 꿈인데 하루가 다르게 배우면 배울수록 부족함을 많이 느끼고 있습니다 ㅠㅠ
다름이 아니라 Home Credit Default Risk 에서 train.csv 랑 test.csv 랑 합쳐서 학습/검증용으로 나눈다음에 모델평가 했잖아요..? 그다음 to_csv로 파일변환 한다음 캐글에 올려서 한번더 평가를 하던데 이건 위에 적은 test.csv 파일과 다른 자료로 평가를 하는건가요??  
그리고 train.csv 와 test.csv 를 합치지 않고 단순히 train.csv에서 학습/검증 용으로 나눈다음에 test.csv로 평가해도 되는게 아닌가요?? 자세한 답변 부탁드립니다 항상 감사합니다..!

답변 4

1

권 철민님의 프로필 이미지
권 철민
지식공유자

음 강의를 자세히 보시면 중간에 학습과 테스트 데이터를 분리하고 학습대이터를 다시 학습과 검증 데이터로 분리해서 성능 평가를 합니다. 테스트 데이터로는 성능 평가를 하지 않습니다. 테스트 데이터에 타겟값 없어서 성능 평가를 할 수도 없습니다. 

이후에 테스트 데이터로 예측한 결과를 캐글에 올려서 성능평가릉 합니다

1

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까, 

열심히 하고 계시니 곧 목표하시는 빅데이터 전문가가 되시리라 믿어 의심치 않습니다. 

학습과 테스트 데이터를 합친 이유는 데이터 가공을 한꺼번에 하기 위해서 입니다. 

그러니까 학습 데이터의 가공을 동일하게 테스트 데이터에도 적용해야 하는데, 그게 복잡하니까 한꺼번에 학습 데이터와 테스트 데이터를 다 합쳐서 가공한 것 입니다. 

이후에 다시 학습 데이터와 테스트 데이터를 분리하고 학습 데이터 만을 이용해서 학습과 검증용 데이터로 나눈 것입니다. 

정리하자면 학습과 테스트 데이터를 합쳐서 데이터 가공(train.csv와 test.csv를 합친 후 데이터 가공) -> 학습과 테스트 데이터 분리(다시 train.csv와 test.csv 분리. 하지만 데이터는 모두 가공됨) -> 학습 데이터를 다시 학습과 검증용 데이터로 나눈 것 입니다. 

이렇게 만들어진 학습 데이터로 모델을 학습 시킨 후에 해당 모델의 predict_proba()로 테스트 데이터를 입력하여 예측을 수행하고 이를 csv 결과 파일로 만들었습니다.

그리고 train.csv 와 test.csv 를 합치지 않고 단순히 train.csv에서 학습/검증 용으로 나눈다음에 test.csv로 평가해도 되는게 아닌가요??  

=> 그렇게 하셔도 됩니다만,  train에 적용한 데이터 가공로직을 다시 한번 test에 적용하는 불편한 작업을 하셔야 합니다. 

감사합니다. 

0

co choi님의 프로필 이미지
co choi
질문자

아 맞네요 감사합니다!

0

co choi님의 프로필 이미지
co choi
질문자

선생님 답변 감사합니다. 그런데 Home Credit Default Risk 파일을 가공해서 모델학습 후 평가를 한다음에 캐글에 한번더 평가성능 측정했잖아요 이부분이 잘 이해가 안되는게 이미 train 파일과 test 파일을 합친다음 성능 평가를 했는데 왜 한번더 캐글에 올려서 성능평가를 더하나요?? 이 부분이 잘 이해가 안됩니다 ㅠㅠ

co choi님의 프로필 이미지
co choi

작성한 질문수

질문하기