Ordinal Encoding(序數編碼)是一種將**有序類別型變數**(ordinal categorical variables)轉換為數值型變數的編碼方法。它依據類別之間的固有順序,將每個類別分配一個整數,以保留類別間的大小或等級關係,常用於機器學習的數據預處理階段。
Ordinal Encoding的核心特點
- 將有序類別映射到整數數值,保留類別的順序信息。
- 比如:對「小」、「中」、「大」三種尺寸分別編為0、1、2。
- 允許機器學習算法(如線性迴歸、SVM)利用類別的相對順序。
- 不適合無順序的名義類別(nominal categories),因為編碼賦予了錯誤的順序關係。
- 教育程度(小學、中學、大學)
- 滿意度評分(不滿意、中立、滿意)
- 等級評價(低、中、高)
注意事項
- 需明確指定類別的順序,避免默認字母排序導致錯誤序列;
- 對於非順序類別建議使用One-Hot Encoding;
- 編碼過程中可設置處理未知類別的策略。
總結:Ordinal Encoding利用整數表示有序類別數據,保留變量的序數信息,對有序分類特徵的機器學習建模非常重要且有效。