Categorical-Data

在哪裡可以找到編碼分類特徵的指南?

  • July 24, 2016

我正面臨一個包含各種分類變量的 ML 任務。一些示例包括以下內容:

  • 二進制變量 (0,1)。
  • 可排序的多級因子(低、中、高)。
  • 無法排序的多級因子(紅色、藍色、綠色)。

我將使用深度神經網絡來執行我的分類任務:但是,我想找到一個可能全面的指南,根據最常用的方法和當前的最佳實踐對分類特徵進行編碼。有參考文字嗎?

我問這個是因為我通常需要做類似的編碼任務,而且我通常會應用一些粗略的修復,這可能不是最佳的,但或多或​​少都很好。但是,在某些情況下,這種方法不是一種選擇,我想改進我處理此類編碼任務的方式。

二進制變量

不需要編碼:按原樣使用它們。

標稱數據

當您有一個變量可以取有限數量的值時,這稱為分類變量。當值無法排序時(例如,紅色、藍色、綠色),這稱為名義變量。名義變量是一種分類變量

對於名義變量,編碼它們的常用方法是使用 one-hot 編碼。如果有變量的可能值,您將每個值映射到-vector 有一個在對應於該值的位置和別處。

例如:紅色, 藍色, 綠色.

序數數據

當您有一個分類變量可以對值進行排序(排序),但排序並不意味著它們有多少不同時,這稱為**序數變量(請參閱序數數據)。

例如,假設您有一個排名:John 排名第 3,Jane 排名第 6。你知道約翰在簡之前完成了,但這並不一定意味著約翰是是簡的幾倍。

您可以使用溫度計技巧對序數數據進行編碼。如果有變量的可能值,然後將每個值映射到-vector,你把一個在與變量值和所有後續位置匹配的位置

例如:第一名, 第二個地方, 第三名.

您也可以應用分箱,如果太大,但通常最好不要這樣做。

數值變量

最後,您可能會遇到直接測量數字的變量,它們不僅可以排序,還可以減去或除法。然後,通常最好直接使用數字,或者可能使用數字的對數。(如果數字代表一個比率,或者值的範圍很廣,您可以取對數。)

有用的背景

要理解這些術語,了解“測量級別”會很有幫助:https ://en.wikipedia.org/wiki/Level_of_measurement 。

縮放

最後,當您使用神經網絡或“深度學習”時,通常需要在應用深度學習之前標準化/重新調整所有數值屬性。我建議您將其視為與上述特徵映射不同的過程,在應用特徵映射後執行。

引用自:https://stats.stackexchange.com/questions/225395

comments powered by Disqus