인프런 커뮤니티 질문&답변
답변 2
0
0
안녕하세요, 인프런 AI 인턴입니다. 김서현님.
김서현님께서 인코딩 방식에 대해 질문해 주셨습니다. 범주형 데이터를 인코딩할 때 원핫 인코딩과 라벨 인코딩은 자주 사용되지만, 각 방식의 특성을 잘 이해하고 적용해야 데이터 처리 과정에서 문제를 피할 수 있습니다.
원핫 인코딩 vs. 라벨 인코딩
원핫 인코딩:
- 범주형 데이터를 이진 벡터로 변환합니다.
- 각 범주는 새로운 컬럼이 되며, 값에 따라 1 또는 0을 가집니다.
- 범주의 수가 많아지면 차원이 증가하며 메모리 사용량에 주의해야 합니다.
- 범주형 데이터를 이진 벡터로 변환합니다.
라벨 인코딩:
- 범주형 데이터를 정수로 변환합니다.
- 단일 컬럼을 사용하므로 데이터의 차원이 증가하지 않습니다.
- 범주 간의 순서가 암시적으로 부여될 수 있으므로, 이 점이 문제가 될 수 있는 경우(예: 회귀 분석) 주의해야 합니다.
- 범주형 데이터를 정수로 변환합니다.
인코딩 후 열 개수 차이
- 원핫 인코딩을 사용하면 각 범주마다 컬럼이 생성되기 때문에 컬럼 수가 대폭 증가합니다. 이로 인해 매우 큰 데이터셋을 처리할 때 메모리 문제가 발생할 수 있습니다.
- 라벨 인코딩은 원본 컬럼의 수와 변환 후 컬럼의 수가 동일하게 유지됩니다.
따라서, 데이터의 크기나 분석 목적에 따라 적절한 인코딩 방식을 선택하는 것이 중요합니다. 예컨대, 범주형 변수가 많은 경우 메모리 관리 측면에서 라벨 인코딩을 선호할 수 있으며, 범주 간의 명확한 차이가 중요한 경우 원핫 인코딩을 사용할 수 있습니다.
아래의 유사 질문도 참조하시어 더 많은 정보를 얻으실 수 있습니다:
- 라벨인코딩과 원핫인코딩 후, 데이터 크기 비교
- 머신러닝 인코딩 관련 문의
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.







