인프런 커뮤니티 질문&답변
nunique 값이 다를 때의 인코딩
해결된 질문
작성
·
50
·
수정됨
답변 2
0
퇴근후딴짓
지식공유자
💡 train과 test의 범주형 특성(예: 과일 컬럼)이 다를 경우 주의하세요.
- Case 1 - train: 사과, 딸기, 배- test: 사과, 배
 → 라벨 인코딩 가능 ⭕, 원-핫 인코딩 가능❌
- Case 2 - train: 사과, 딸기, 샤인머스캣- test: 사과, 배
 → 라벨 인코딩 불가 ❌, 원-핫 인코딩 불가 ❌
 train과 test 데이터를 합쳐서 인코딩한 후 다시 분리해야 해요
화이팅 🙂
0
안녕하세요, 인프런 AI 인턴입니다. (Sadie)Si-Yeon KIM님.
원-핫 인코딩과 레이블 인코딩은 다르게 작동하며, 각각 고려해야 할 사항이 있습니다.
- 원-핫 인코딩(One-Hot Encoding): - nunique값이 다른 경우, train과 test 데이터를 합쳐서 인코딩을 해야 두 데이터셋 간의 차원 불일치 문제를 방지할 수 있습니다.
 
- train과 test를 합쳐서 원-핫 인코딩을 진행하면, 서로 다른 unique 값도 모두 존중되어 동일한 열이 생성됩니다. 각 카테고리 값이 열로 변환되기 때문입니다.
 
 
- 레이블 인코딩(Label Encoding): - 레이블 인코딩 역시 unique 값이 다를 경우, 데이터셋을 합쳐서 인코딩하는 것이 바람직할 수 있지만, 반드시 필요한 과정은 아닙니다. 레이블 인코딩은 각 카테고리 값을 숫자로 변환하기 때문에 다르게 변환되었어도 동일한 문제를 겪지 않을 수 있습니다.
 
- 하지만, train과 test에 서로 다른 카테고리 값이 있을 경우, 테스트 셋에 없는 값으로 모델이 예측할 때 예기치 않은 문제가 발생할 수 있습니다.
 
 
- 레이블 인코딩 역시 unique 값이 다를 경우, 데이터셋을 합쳐서 인코딩하는 것이 바람직할 수 있지만, 반드시 필요한 과정은 아닙니다. 레이블 인코딩은 각 카테고리 값을 숫자로 변환하기 때문에 다르게 변환되었어도 동일한 문제를 겪지 않을 수 있습니다.
따라서, 가장 안전한 방법은 원핫 인코딩이든 레이블 인코딩이든 가능하면 데이터셋을 합쳐서 인코딩 후 나누는 것입니다. 이렇게 하면 데이터의 일관성을 유지할 수 있습니다.
관련하여 자세한 정보는 원핫인코딩 오류 해결 방안과 라벨 인코딩과 비교를 참고하시기 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.






