위키득계정 ↗
기술

원핫 인코딩

원핫 인코딩기술
영문명
One-hot encoding
기본 표현
범주 하나당 표시 열 하나
한 범주의 벡터
한 위치가 1이고 나머지가 0
주의할 설정
미지 범주와 기준 범주 처리
원핫 인코딩은 범주마다 별도 위치를 두고 해당 범주의 위치만 1로 표시하는 표현 방법이다. 범주형 자료를 수치 입력으로 바꿀 때 사용한다. 번호를 하나 붙이는 표현과 달리 번호 사이의 크기 관계를 직접 부여하지 않는다.

세 범주 예

열의 순서를 사과·배·귤로 정하면 사과는 (1,0,0), 배는 (0,1,0), 귤은 (0,0,1)이다. 순서를 바꾸어도 같은 구분을 표현할 수 있지만 학습과 추론에서 열의 대응은 일관돼야 한다. 범주를 0,1,2라는 한 숫자로 넣는 방식과 다르다.

여러 특징의 결합

색상 3범주와 크기 2범주를 각각 인코딩해 연결하면 기본 출력은 5개 열이다. 각 특징에서 하나씩 1이므로 행 전체에는 두 개의 1이 있다. 조합 전체를 6범주 중 하나로 만드는 표현과는 다른 구조다.

기준 범주와 미지 범주

한 범주 열을 생략하면 그 기준 범주는 해당 특징에서 모두 0으로 표현된다. 알지 못하는 새 범주도 모두 0으로 처리하도록 설정하면 서로 구분하기 어려울 수 있다. 새 범주에서 오류를 낼지 별도 범주로 보낼지 사전에 정해야 한다.

차원과 학습 자료

범주 수가 많으면 열 수도 늘어나지만 대부분이 0이어서 희소 표현을 사용할 수 있다. 범주 목록은 훈련 자료에서 정하거나 사전에 고정하고 평가 때 그대로 적용해야 한다. 임베딩 층처럼 범주별 짧은 학습 벡터를 사용하는 방식과도 구분된다.

관련 문서

임베딩 층 / 희소행렬 / 로지스틱 회귀 / 완전연결 층 / 교차 검증 / 데이터 누출 (기계 학습) / 벡터