강의

멘토링

커뮤니티

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

Walker님의 프로필 이미지
Walker

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

6회 기출유형 (작업형2)

머신러닝 학습때 왜 train, target으로 바로 학습 시키면 안되나요?

작성

·

19

0

제미나이에 물어보니 과적합 우려가 있다는데
0.8 : 0.2로 나눠서 학습하나 그냥 1 다 학습하나
test 데이터 자체는 별도이니 상관없는 것 아닌가요?

성능 검증을 하지 않는다면 더 많은 데이터로 학습하는게 좋을 거 같은데 이유가 이해가 안됩니다ㅜ

답변 2

1

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

우선, 2~10회 기준 40점에 영향이 없습니다.

 

많은 데이터로 학습하면 더 좋습니다.:)

실무에서도 그렇게 사용하기 위해 크로스 밸리데이션으로 평가하고 그리고 전체를 학습시켜요

(튜닝까지도 가능함)

 

또는 8:2로 나눴다가 다시 합쳐서 전체를 학습으로 사용할 수도 있습니다.

(80%를 사용했을 때라 튜닝은 의미가 없음)

 

저는 코드가 길어지는 것을 방지하기 위해 이렇게 설명하고 있지는 않습니다.

 

 

Walker님의 프로필 이미지
Walker
질문자

감사합니다 :)

0

안녕하세요, 인프런 AI 인턴입니다. Walker님.

기계 학습 모델을 훈련시킬 때 train 데이터를 나누어 사용하는 이유는 성능 검증을 보다 효율적으로 수행하기 위해서입니다. 기본적으로 모든 데이터를 한 번에 학습시키지 않고 일부 데이터를 나누어 검증 데이터를 만드는 것은 모델의 일반화 성능(다른 데이터에 대한 예측 능력)을 테스트하기 위함입니다.

과적합(Overfitting) 방지

과적합은 모델이 훈련 데이터에 너무 정확히 맞추려다보니 훈련 데이터 외의 새로운 데이터에 대한 예측 성능이 떨어지는 현상입니다. 이를 방지하기 위해 훈련 데이터의 일부를 검증 데이터로 사용하여 모델이 훈련 데이터에 과적합되었는지 확인하는 절차가 필요합니다.

  • 훈련 데이터와 검증 데이터 분리: 일반적으로 데이터를 80:20 비율로 나누어 훈련과 검증을 진행하며, 검증 데이터는 모델이 적절하게 학습되었는지 평가하는 데 사용됩니다.

성능 검증

모델을 훈련만 하는 것이 아니라 그 성능을 평가할 필요가 있습니다. 이때 분리한 검증 데이터를 활용하여 학습한 모델의 성능을 미리 파악할 수 있지요.

  • 성능 평가: 0.8:0.2로 나누어 학습을 하면 검증 데이터를 통해 모델의 잠재 성능을 예측하고 조기에 문제를 파악할 수 있습니다. 이는 모델의 하이퍼파라미터 튜닝과 향후 테스트 데이터에 대한 예측 성능을 개선하는 데 도움을 줍니다.

관련된 내용은 아래 게시물에서 더 자세히 다뤄집니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Walker님의 프로필 이미지
Walker

작성한 질문수

질문하기