Python의 원 핫 인코딩: 기계 학습에서 범주형 기능 처리
원 핫 인코딩은 기계 학습에서 범주형 변수를 변환하는 데 사용되는 기술입니다. 이진 벡터로. 고유한 값이 많은 범주형 변수를 처리할 때 자주 사용됩니다.
분류에 One Hot Encoding이 필요한가요?
네, One Hot Encoding은 일반적으로 숫자 입력이 필요한 분류자를 사용할 때 필요합니다. 범주형 변수는 본질적으로 숫자형 변수가 아니므로 분류자가 이를 직접 해석할 수 없습니다. 원 핫 인코딩은 범주형 변수를 각 고유 값의 유무를 나타내는 이진 벡터로 변환합니다.
Python의 단계별 1단계 핫 인코딩
접근법 1: Pandas pd.get_dummies 사용
이 방법은 고유 값 수가 제한된 소규모 데이터 세트에 적합합니다.
import pandas as pd # Create a pandas Series with categorical data s = pd.Series(['a', 'b', 'c', 'a']) # One hot encode the Series one_hot = pd.get_dummies(s) print(one_hot)
접근법 2: Scikit 사용 -Learn
Scikit-learn의 OneHotEncoder는 인코딩 프로세스에 대해 더 많은 유연성과 제어 기능을 제공합니다.
from sklearn.preprocessing import OneHotEncoder # Create a numpy array with categorical data data = np.array([['a', 'b', 'c'], ['a', 'c', 'b']]) # Create an encoder enc = OneHotEncoder() # Fit the encoder to the data enc.fit(data) # Transform the data one_hot = enc.transform(data).toarray() print(one_hot)
인코딩 중단 문제 해결
하나의 핫 인코딩이 중단되는 코드의 세 번째 부분은 다음 이유 때문일 수 있습니다.
이러한 문제를 해결하려면 다음을 수행할 수 있습니다.
위 내용은 머신러닝 분류에 One Hot Encoding이 필수인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!