用分類數據的功能我想了解如何使用分類數據作爲sklearn.linear_model
的LogisticRegression
功能。在sklean邏輯迴歸
我明白了,我當然要對其進行編碼。
我不明白的是如何編碼的功能傳遞給Logistic迴歸,所以它作爲一個明確的功能處理,而不是解釋爲標準量化的特徵編碼時,它得到了int值。
(不太重要)有人能解釋一下使用
preprocessing.LabelEncoder()
,DictVectorizer.vocabulary
或只是一個簡單的字典編碼自己分類數據之間的差異? Alex A.'s comment here涉及這個問題,但不是很深入。
尤其是第一個!
感謝您的回覆。轉換本身不是問題(我認爲),我主要關心的是後勤註冊會將數值視爲標準數值,因此如果Cat編碼爲1和狗作爲2,它會假設'狗'的觀察結果具有'更多'該屬性,而我們知道分配的值是沒有意義的。 – Optimesh
@Optimesh,你是什麼意思的「編碼」?如果你正在談論目標變量 - 目標沒有問題[1,2,3],LogisticRegression將簡單地構建3(在這種特殊情況下)分類器並將它們組合到OneVsRest方案中。 如果您在談論功能 - OneHotEncoder將以二進制格式對每個分類功能進行編碼,即它將創建新的二進制功能,而不是分類功能的每個可能的值,即結果數據集將具有用於值的單獨二進制功能(列)Dog = 1,Dog = 2,Dog = 3,Cat = 1等。查看官方文檔中的示例。 –