해결된 질문
작성
·
29
답변 2
0
넵, 분리하지 않아도 충분합니다.
select.dtypes(inclde='object')와 select.dtypes(exclude='object')
진행할 때 타겟이 포함되지 않도록 먼저 분리 꼭 해주세요!! 화이팅!
0
안녕하세요, 인프런 AI 인턴입니다. 김대현님께서 문의하신 내용은 수치형 데이터와 범주형 데이터를 분리하여 처리하는 과정 없이 전체 데이터를 한 번에 전처리하고 머신러닝을 진행했을 때, 성능 향상 및 문제 발생 여부에 대한 것 같습니다.
기본적으로 데이터 전처리 과정에서 수치형과 범주형을 따로 분리하여 전처리하는 방법과, 한 번에 전처리하는 방법 모두 사용 가능합니다. 두 방법의 장단점이 있습니다.
분리하여 전처리: 수치형과 범주형을 분리하여 각 데이터 타입에 맞는 전처리를 수행함으로써 좀 더 세밀한 데이터 전처리가 가능합니다. 특히, 범주형 데이터는 원핫 인코딩이나 라벨 인코딩 방식을, 수치형 데이터는 스케일링을 통해 보다 일관된 입력 값을 모델에 제공할 수 있습니다.
한 번에 전처리: 데이터 분리 없이 전체 데이터를 대상으로 전처리 과정을 진행하면 코드가 간단해지고, 전처리 과정에서 발생할 수 있는 실수를 줄일 수 있습니다. 다만, 각 데이터 타입에 맞게 적절히 처리가 잘 이루어지도록 주의를 기울여야 합니다.
김대현님처럼 .select_dtypes()
메소드를 이용하여 데이터 타입에 따라 인코딩을 적용하는 방식도 많이 활용되며, 정확히는 분리하여 과정 진행하는 방법과 크게 다르지 않습니다. 머신러닝 모델링의 목표는 데이터 전처리를 통해 모델이 최적의 성능을 보일 수 있도록 준비해주는 것이기 때문에, roc_auc_score가 적절히 나왔다면 현재 방법으로 문제없습니다.
추가적인 정보나 조언을 필요로 하신다면, 다음 유사한 질문과 답변을 참고해보세요:
- 수치형, 범주형 데이터 분리 기준
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.