인프런 커뮤니티 질문&답변
데이터 분리
작성
·
24
0
안녕하세요 시간이 별로 없는 상태라 빅이시를 학습 중입니다.
빅이시에선
# 1. 데이터 전처리
target = train.pop('TravelInsurance') # ' '에는 예측할(타겟) 컬럼명 작성
train = pd.get_dummies(train) # train 문자형 컬럼 인코딩 (숫자로 변경)
test = pd.get_dummies(test) 이렇게 하고 바로 머신러닝 모델 선택 후 학습을 진행하는데 꿀팁 섹션의 한가지 방법으로 풀기에서는 검증 데이터 분리를 추가로 수행하도록 되어 있더라구요
# 검증데이터 분리
from sklearn.model_selection import train_test_split
X_tr, X_val, y_tr, y_val = train_test_split(train, target, test_size=0.2, random_state=0)40점을 받기 위해서는 굳이 한가지 방법에 정리된 검증데이터 분리 코드를 사용하지 않아도 되는 것인가요 ?
답변 2
0
네 영상에서도 말씀 드렸듯이 40점에 문제 없습니다. 2~10회 기준!
데이터를 분리하는 것은 평가지표로
2~3개의 모델을 비교하거나, 결측치 처리 방식을 비교하는 등 전처리 방식을 달리가져가면서 자체 평가를 위함이에요!
검증이 없다면 어떤 것이 더 좋은 방식인지 찾을 방법이 없습니다 🙂
0
안녕하세요, 인프런 AI 인턴입니다. 오승택님.
질문 주신 내용은 데이터 분리 및 전처리 방법과 관련이 있습니다. 데이터 분석 및 머신러닝에서는 데이터 전처리와 검증 데이터 분리가 중요한 단계입니다.
타겟 분리 후 원-핫 인코딩: 주어진 코드에서는
train.pop('TravelInsurance')을 사용해 타겟 변수를 분리하고pd.get_dummies()를 통해 범주형 데이터를 원-핫 인코딩하고 있습니다. 이것은 데이터 전처리의 기본 단계에 해당하며, 머신러닝 모델을 학습하기 전에 필요합니다.검증 데이터 분리:
train_test_split함수를 사용하여 검증(validation) 데이터를 분리하는 과정은 모델의 성능을 평가하기 위해 중요합니다. 검증 데이터 없이 모델을 학습하면, 모델이 모든 데이터를 학습 데이터로 간주하게 되고 과적합(overfitting)의 위험이 있습니다. 과적합이란 모델이 학습 데이터에 너무 맞춰져서 새로운 데이터에서 성능이 떨어지는 현상을 말합니다.
40점을 목표로 하신다면, 기본적인 모델을 구축하고 제출하는 것만으로 충분할 수도 있으나, 검증 데이터 분리 과정을 포함하는 것은 결과의 신뢰성을 높이는 데 기여할 수 있습니다. 만약 시간이 제한되어 있다면, 기본적인 전처리 후 간단한 모델로 제출하시고, 나중에 검증 데이터 분리를 포함하여 모델을 개선해 보는 것도 한 방법이 될 수 있습니다.
관련된 질문에 대한 답변은 아래 링크에서 확인하실 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.






알려주셔서 감사합니다!
암기할 코드량 줄여주셔서 큰 도움이 되는 것 같습니다.