国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

One-hot coding(獨熱編碼)

URLOS / 2731人閱讀

摘要:介紹其實編碼方式并不難理解,位狀態(tài)寄存器來對個狀態(tài)進行編碼就是將所有狀態(tài)排列,具有哪些狀態(tài)就將狀態(tài)進行標記。缺點當類別的數量很多時,特征空間會變得非常大。在這種情況下,一般可以用主成分分析來減少維度。而且這種組合在實際中也非常有用。

在數據預處理中,為了方便模型的輸入,常常會把非數值類型量化成數值類型。
其中比較簡單的一種處理離散型數值編碼方式叫one-hot coding(獨熱編碼)

1、概念

獨熱編碼即 One-Hot 編碼,又稱一位有效編碼,其方法是使用N位狀態(tài)寄存器來對N個狀態(tài)進行編碼,每個狀態(tài)都有它獨立的寄存器位,并且在任意時候,其中只有一位有效。

2、介紹

其實編碼方式并不難理解,N位狀態(tài)寄存器來對N個狀態(tài)進行編碼就是將所有狀態(tài)排列,具有哪些狀態(tài)就將狀態(tài)進行標記。用來解決類別型數據的離散值問題

比如:

對0,1進行編碼
首先只有兩個狀態(tài)就是需要兩個狀態(tài)寄存器
編碼為:00,01

再比如,有3個特征值;

face = ["handsome","ugly"]
stature = ["tall","middle","short"]
country = ["Chinese","American,"Japan","korea"]

一共9種狀態(tài),用9位數字表示

["handsome","tall","Japan"] 表示為 101000010
["ugly","short","Japan"] 表示為 010010010
3、簡單實現

在python的第三方庫pandas中實現非常簡單,就是使用 get_dummies() 方法

def one_hot_encoder(df, nan_as_category = True):
    original_columns = list(df.columns)         # 屬性
    categorical_columns = [col for col in df.columns if df[col].dtype == "object"]
    df = pd.get_dummies(df, columns= categorical_columns, dummy_na= nan_as_category)  # 
    new_columns = [c for c in df.columns if c not in original_columns]
    return df, new_columns
    
 # 測試
data = [["handsome", "tall", "Japan"],
        ["ugly", "short", "Japan"],
        ["handsome", "middle", "Chinese"]]
df = pd.DataFrame(data,columns=["face", "stature "," country "])
df,df_cat = one_hot_encoder(df)
print(df)

結果如下:

4、特點

優(yōu)點:獨熱編碼的值只有0和1,不同的類型存儲在垂直的空間,解決了分類器不好處理屬性數據的問題,在一定程度上也起到了擴充特征的作用,特征的增加也防止了模型的過擬合。

缺點:當類別的數量很多時,特征空間會變得非常大。在這種情況下,一般可以用主成分分析(PCA)來減少維度。而且one-hot encoding+PCA這種組合在實際中也非常有用。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/42645.html

相關文章

  • 機器學習“特征編碼”的經驗分享:魚還是熊掌?

    摘要:特征編碼類型本篇,我們主要說一下分類型特征的編碼方式。下面,我們要對這個變量進行編碼,在中有現成的獨熱編碼方法,代碼如下原來的變量被拆分為兩個單獨的變量,這兩個變量就是原來的分類特征值有電梯和無電梯。 作者:xiaoyu 微信公眾號:Python數據科學 知乎:python數據分析師 showImg(https://segmentfault.com/img/remote/146000...

    trilever 評論0 收藏0
  • 機器學習“特征編碼”的經驗分享:魚還是熊掌?

    摘要:特征編碼類型本篇,我們主要說一下分類型特征的編碼方式。下面,我們要對這個變量進行編碼,在中有現成的獨熱編碼方法,代碼如下原來的變量被拆分為兩個單獨的變量,這兩個變量就是原來的分類特征值有電梯和無電梯。 作者:xiaoyu 微信公眾號:Python數據科學 知乎:python數據分析師 showImg(https://segmentfault.com/img/remote/146000...

    JinB 評論0 收藏0
  • 機器學習數據處理One-Hot編碼詳解

      大家都知道,最近人工智能是比較火熱的,那么,人工智能主要應用的就是機器學習,但是機器學習對其要求還是比較高的。在使用機器學習處理數據的時候,會經常性的用到One-Hot代碼,下面小編就具體給大家介紹下這種編碼的實現方式。  1.為什么使用one-hot編碼?  在人工智能算法中,大家難免會遇到歸類基本特征,比如說:人的性別有男人女人,國家有日本,韓國,朝鮮等。這類特征值并不是連續(xù)不斷的,反而是...

    89542767 評論0 收藏0

發(fā)表評論

0條評論

URLOS

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<