그런데 우리가 저장한 y의 값이 숫자가 아닌 문자입니다. 딥러닝에서는 계산을 위해 문자를 모두 숫자형으로 바꾸어 주어야 합니다. 이를 위해서는 다음과 같이 처리합니다.
먼저 아이리스 꽃의 종류는 ➊처럼 세 종류입니다. 그러면 ➋처럼 각각의 이름으로 세 개의 열을 만든 후 ➌처럼 자신의 이름이 일치하는 경우 1로, 나머지는 0으로 바꾸어 줍니다.
그림 12-4 | 원-핫 인코딩
이렇게 여러 개의 값으로 된 문자열을 0과 1로만 이루어진 형태로 만들어 주는 과정을 원-핫 인코딩(one-hot encoding)이라고 합니다. 원-핫 인코딩은 판다스가 제공하는 get_dummies() 함수를 사용하면 간단하게 해낼 수 있습니다.
# 원-핫 인코딩 처리를 합니다. = pd.get_dummies(y) # 원-핫 인코딩 결과를 확인합니다. print(y[0:5])
실행 결과
Iris-setosa Iris-versicolor Iris-virginica 0 1 0 0 1 1 0 0 2 1 0 0 3 1 0 0 4 1 0 0