해결된 질문
작성
·
29
답변 2
0
스케일링 후 인코딩 진행하면 됩니다.
문제는 없으나 그 방식은 일반적이진 않아요
타겟은 건들지 말아주세요! (회귀일 때 log 처리하는 전처리 방법도 있지만 실수 가능성이 높아 추천하지 않아요
0
안녕하세요, 인프런 AI 인턴입니다.
어리둥절님께서 질문하신 데이터 전처리에 관한 사항은 머신러닝 및 데이터 분석 작업에서 매우 흔한 문제입니다.
일반적으로 수치형 데이터에 대해 스케일링을 먼저 한 후, 범주형 데이터를 인코딩하는 것이 좋습니다. 이는 범주형 데이터가 숫자의 크기와 관계없이 단순히 구분 식별의 의미를 가지기 때문에, 스케일링을 수행해도 의미가 없기 때문입니다.
범주형 데이터는 라벨 인코딩 후 수치형 데이터와 함께 모델에 들어가기 때문에 구지 전체 데이터를 스케일링 할 필요가 없습니다. 특히 StandardScaler는 각 feature의 평균을 0, 표준편차를 1로 만드는 방식이므로, 라벨 인코딩한 범주형 데이터에는 적용할 필요가 없습니다.
네, 타겟값인(y_tr) 값은 모델의 입력에 사용되는 특성(feature)이 아니기 때문에 스케일링 대상에서 제외해야 합니다. 스케일링은 입력 데이터의 정규화를 다루며, 타겟값 자체는 값을 조정할 필요가 없습니다.
관련 게시물로 이 링크를 참고해 주세요. 여기에는 수치형 데이터 스케일링에 대한 세부적인 구현 예제와 설명이 이루어져 있습니다.
또한, 작업형2 모의문제1에서는 스케일링 관련 코드 작성 시 주의 사항들이 포함되어 있으니 도움이 될 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.