본문 바로가기
Artificial Intelligence

One Hot Encoding의 의미와 필요성

by sohyunwriter 2021. 1. 19.

One Hot Encoding

-카테고리형 변수에 적용. 각 값에 대한 독립성을 부여하기 위함

-카테고리형 -> 수치형으로 변환하면서 생기는 수치형 값의 관계를 끊어줘서 독립적인 형태로 바꿈

-pandas의 get_dummies를 이용해 구현

 

 

-관련 질문

 

Q. One Hot Encoding 이란 무엇인가?

카테고리형 변수에 적용하는 전처리 방법으로, 

0과 1을 사용해 각 값을 구분하는 방식입니다.

가령 한식, 중식, 일식, 양식 4가지 카테고리형 범주가 각각 0, 1, 2, 3 으로 label encoding되어 있다고 하면 

해당 변수를 one hot encoding을 하지 않고 모델에 넣을 경우 

중식(1)+일식(2)=양식(3)으로 해석되는 등 모델이 제대로 학습되지 않게 됩니다.

이러한 문제를 막기 위해 카테고리형 범주를 각각 0, 1로만 나타애 독립적인 형태로 바꾸는데 

[1, 0, 0, 0]

[0, 1, 0, 0]

[0, 0, 1, 0]

[0, 0, 0, 1]

이런 식으로 인코딩하는 것을 말합니다.

 

Q. One Hot Encoding을 해야 하는 이유는?

카테고리형 변수는 순서형 범주가 아니기 때문에 

변수 간의 순서나 서열이 없다.

각 변수의 값에 독립성을 부여하기 위함.

728x90

댓글0