데이터 전처리: 인코딩 – Label

ㅁ 인코딩

ㅇ 정의:
범주형 데이터를 컴퓨터가 이해할 수 있도록 숫자형으로 변환하는 과정 중 하나로, 각 범주에 고유한 정수 값을 부여하는 방식.

ㅇ 특징:
– 간단하고 직관적이며 메모리 사용량이 적음.
– 범주 간의 순서나 크기 의미가 없더라도 숫자로 변환되므로 알고리즘에 따라 잘못된 순서 관계를 학습할 수 있음.
– 주로 트리 기반 모델에서 잘 작동함.

ㅇ 적합한 경우:
– 범주형 데이터의 고유 값 개수가 적고, 순서 의미가 없는 경우.
– 의사결정나무, 랜덤포레스트, 그래디언트부스팅 등 트리 기반 모델 사용 시.

ㅇ 시험 함정:
– 선형 회귀, 로지스틱 회귀, KNN 등 거리 기반 또는 선형 모델에 Label Encoding을 적용하면 잘못된 순서 정보가 반영되어 성능 저하.
– One-Hot Encoding과 혼동하기 쉬움.

ㅇ 시험 대비 “패턴 보기” 예시:
O: “범주형 변수를 정수로 매핑하는 가장 간단한 인코딩 기법이다.”
O: “트리 기반 모델에서는 Label Encoding이 잘 작동한다.”
X: “Label Encoding은 범주 간의 순서 관계를 항상 보존해야 한다.”
X: “Label Encoding은 모든 모델에서 One-Hot Encoding보다 항상 우수하다.”

================================

ㅁ 추가 학습 내용

Label Encoding, One-Hot Encoding, Ordinal Encoding 비교 정리

Label Encoding
– 범주형 데이터를 정수 값으로 변환
– 범주 간에 순서 의미를 부여하지 않지만, 변환 결과가 숫자이므로 선형 모델에서는 순서가 있는 값으로 잘못 해석될 위험이 있음
– Scikit-learn의 LabelEncoder는 문자열뿐 아니라 숫자형 범주도 처리 가능
– 주요 메서드: fit_transform(범주를 숫자로 변환), inverse_transform(숫자를 원래 범주로 복원)

One-Hot Encoding
– 각 범주를 새로운 이진(0/1) 변수로 변환
– 순서 정보가 전혀 없는 범주형 데이터에 적합
– 차원이 늘어나는 단점이 있으나, 순서 오해 문제를 방지

Ordinal Encoding
– 범주형 데이터를 순서가 있는 정수 값으로 변환
– 범주 간 순서가 의미 있는 경우에 사용
– 순서가 없는 데이터에 적용하면 잘못된 해석 가능

시험 출제 포인트
– ‘범주형 데이터의 수치 변환’이라는 표현으로 문제 제시
– 데이터 특성과 모델 특성에 따라 적합한 인코딩 방법 선택 여부를 묻는 경우가 많음
– Label Encoding의 순서 오해 가능성과 One-Hot Encoding의 차원 증가 특징을 구분할 수 있어야 함

답글 남기기

Your email address will not be published. Required fields are marked *.

*
*