1. 程式人生 > >tensorflow 相關函式 __ LabelEncoder()

tensorflow 相關函式 __ LabelEncoder()

sklearn.preprocessing.LabelEncoder():標準化標籤,將標籤值統一轉換成range(標籤值個數-1)範圍內

簡單來說 LabelEncoder 是對不連續的數字或者文字進行編號

例子:

>>> le = preprocessing.LabelEncoder()
>>> le.fit(["paris", "paris", "tokyo", "amsterdam"])
LabelEncoder()
>>> list(le.classes_)
['amsterdam', 'paris', 'tokyo']
>>> le.transform(["tokyo", "tokyo", "paris"]) 
array([2, 2, 1]...)
>>> list(le.inverse_transform([2, 2, 1]))
['tokyo', 'tokyo', 'paris']

le.fit() 對資料進行編號

le.transform() 輸入對應資料的編號

le.inverse_transform() 輸入編號,返回資料

執行le.fit()以後,其實就成了一個雙向的字典。

內部比較複雜的是.fit()的實現 : 思路是先去重,排序,後從0開始編號。

fit(y) Fit label encoder
fit_transform(y) Fit label encoder and return encoded labels
get_params([deep]) Get parameters for this estimator.
inverse_transform(y) Transform labels back to original encoding.
set_params(**params) Set the parameters of this estimator.
transform(y) Transform labels to normalized encoding.