머신러닝

[머신러닝] 순서없는 범주형 인코딩

전감자(◔◡◔) 2022. 11. 1. 00:32

머신러닝에서 레이블에 인코딩 해주는 방법에는 크게 두 가지가 있다. 

1. 레이블 인코딩

- LabelEncoder API 이용

fit(), transform() 
        

예> ['고양이','강아지','새']-->[0,1,2]
        

단점: 몇몇 ML 알고리즘은 변경된 숫자 [0,1,2]값을 분류라 인식하지 않고

내부적으로 0이 1보다 작기 때문에 가중치 값을 더 부여 할 수 있다. 따라서 예측성능이 떨어진다.
             

 

 


            

2. 원-핫 인코딩
    

 - OneHotEnoder API 이용

fit(), transform()
      

예> ['고양이','강아지','새'] --> 고양이는 1로 나머지 모두 0 
                                                          --> 강아지는 1로 나머지 모두 0 
                                                          --> 새는 1로 나머지 모두 0