編者按:數(shù)據(jù)科學(xué)家Rakshith Vasudev簡(jiǎn)要解釋了one hot編碼這一機(jī)器學(xué)習(xí)中極為常見的技術(shù)。
圖片來(lái)源:imgur
你可能在有關(guān)機(jī)器學(xué)習(xí)的很多文檔、文章、論文中接觸到“one hot編碼”這一術(shù)語(yǔ)。本文將科普這一概念,介紹one hot編碼到底是什么。
一句話概括:one hot編碼是將類別變量轉(zhuǎn)換為機(jī)器學(xué)習(xí)算法易于利用的一種形式的過(guò)程。
通過(guò)例子可能更容易理解這個(gè)概念。
假設(shè)我們有一個(gè)迷你數(shù)據(jù)集:
其中,類別值是分配給數(shù)據(jù)集中條目的數(shù)值編號(hào)。比如,如果我們?cè)跀?shù)據(jù)集中新加入一個(gè)公司,那么我們會(huì)給這家公司一個(gè)新類別值4。當(dāng)獨(dú)特的條目增加時(shí),類別值將成比例增加。
在上面的表格中,類別值從1開始,更符合日常生活中的習(xí)慣。實(shí)際項(xiàng)目中,類別值從0開始(因?yàn)榇蠖鄶?shù)計(jì)算機(jī)系統(tǒng)計(jì)數(shù)),所以,如果有N個(gè)類別,類別值為0至N-1.
sklear的LabelEncoder可以幫我們完成這一類別值分配工作。
現(xiàn)在讓我們繼續(xù)討論one hot編碼,將以上數(shù)據(jù)集one hot編碼后,我們得到的表示如下:
在我們繼續(xù)之前,你可以想一下為什么不直接提供標(biāo)簽編碼給模型訓(xùn)練就夠了?為什么需要one hot編碼?
標(biāo)簽編碼的問(wèn)題是它假定類別值越高,該類別更好。“等等,什么!”
讓我解釋一下:根據(jù)標(biāo)簽編碼的類別值,我們的迷你數(shù)據(jù)集中VW > Acura > Honda。比方說(shuō),假設(shè)模型內(nèi)部計(jì)算平均值(神經(jīng)網(wǎng)絡(luò)中有大量加權(quán)平均運(yùn)算),那么1 + 3 = 4,4 / 2 = 2. 這意味著:VW和Honda平均一下是Acura。毫無(wú)疑問(wèn),這是一個(gè)糟糕的方案。該模型的預(yù)測(cè)會(huì)有大量誤差。
我們使用one hot編碼器對(duì)類別進(jìn)行“二進(jìn)制化”操作,然后將其作為模型訓(xùn)練的特征,原因正在于此。
當(dāng)然,如果我們?cè)谠O(shè)計(jì)網(wǎng)絡(luò)的時(shí)候考慮到這點(diǎn),對(duì)標(biāo)簽編碼的類別值進(jìn)行特別處理,那就沒(méi)問(wèn)題。不過(guò),在大多數(shù)情況下,使用one hot編碼是一個(gè)更簡(jiǎn)單直接的方案。
另外,如果原本的標(biāo)簽編碼是有序的,那one hot編碼就不合適了——會(huì)丟失順序信息。
最后,我們用一個(gè)例子總結(jié)下本文:
假設(shè)“花”的特征可能的取值為daffodil(水仙)、lily(百合)、rose(玫瑰)。one hot編碼將其轉(zhuǎn)換為三個(gè)特征:is_daffodil、is_lily、is_rose,這些特征都是二進(jìn)制的。
-
編碼器
+關(guān)注
關(guān)注
45文章
3780瀏覽量
137316 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8493瀏覽量
134178 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1223瀏覽量
25304
原文標(biāo)題:什么是one hot編碼?為什么要使用one hot編碼?
文章出處:【微信號(hào):jqr_AI,微信公眾號(hào):論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
機(jī)器學(xué)習(xí)模型可解釋性的結(jié)果分析

如何通過(guò)XGBoost解釋機(jī)器學(xué)習(xí)

基于深度學(xué)習(xí)技術(shù)的智能機(jī)器人
可解釋的機(jī)器學(xué)習(xí)——打開機(jī)器學(xué)習(xí)黑匣子
機(jī)器學(xué)習(xí)的相關(guān)資料下載
詳談機(jī)器學(xué)習(xí)的決策樹模型

人工智能和機(jī)器學(xué)習(xí)技術(shù)如何解釋數(shù)據(jù)?
機(jī)器學(xué)習(xí)模型的可解釋性算法詳解

可以提高機(jī)器學(xué)習(xí)模型的可解釋性技術(shù)
編碼器在伺服的作用與常見伺服編碼器

什么是特征工程?機(jī)器學(xué)習(xí)的特征工程詳解解讀

評(píng)論