알고리즘
One-hot Encoding
WDmil
2024. 6. 13. 20:46
728x90
범주형 값(Categrical Value)을 이진화된 값 으로 바꿔서 표현하는것 을 말한다.
범주형 값은 예를 들어 "개", "고양이", "말" 이런 3가지 범주형 데이터가 있을 떄, 이를 개 = 1, 고양이 = 2 말 = 3 이라고 단순하게 integer Encoding으로 변환하여 표현한다.
이에 반해 One-hot Encoding을 사용하면 범주형 데이터를 개 = [1 0 0], 고양이 = [0 1 0], 말 = [0 0 1] 형태로 해당 레이블을 나타내는 인덱스만 1의 값을 가지고 나머지 부분은 0의 값을 가진 Binary Value로 표현한다.
단순한 InregerEncoding의 문제점은 머신러닝 알고리즘의 정수 값으로부터 잘못된 경향성을 학습하게 될 수도 있다.
예를들어, Integer Encoding을 사용할경우 머신러닝 알고리즘이 개 = 1 말 = 3의 평균 = 2 로 고양이라고 학습할 수도 있기 떄문,
이에 따라 보통 알고리즘을 구현할 때 타겟 데이터를 One-Hot-Encoding형태로 벡터형태로 N차원으로 만들어 표현하게 된다.
728x90