라벨(Label) 인코딩이란?

2023.04.19 12:24 815 조회

라벨 인코딩(Label Encoding)은 카테고리 형태의 데이터(문자열, 순서 없는 숫자 등)를 머신러닝 알고리즘에서 사용하기 쉬운 형태로 변환하는 방법입니다.

머신러닝 알고리즘은 수치 데이터를 입력값으로 받기 때문에, 라벨 인코딩을 통해 문자열 형태의 데이터를 숫자 형태로 변환하여 학습에 사용합니다.

예를 들어, 다음과 같은 카테고리 형태의 데이터가 있다고 가정해봅시다.


["red", "blue", "green", "green", "red"]


라벨 인코딩을 적용하면 다음과 같이 변환됩니다.


[0, 1, 2, 2, 0] 


여기서 "red"는 0, "blue"는 1, "green"은 2로 변환되었습니다.

이렇게 변환된 데이터는 머신러닝 알고리즘에서 사용할 수 있습니다.

하지만 이 방법은 카테고리의 순서가 없는 경우에만 사용 가능합니다.


만약에 카테고리에 순서가 있는 경우라면, 순서 정보가 손실되기 때문에 다른 방법을 사용해야 합니다.

라벨 인코딩은 사이킷런(Scikit-learn) 라이브러리의 LabelEncoder를 사용하면 쉽게 구현할 수 있습니다.