python之如何將標(biāo)簽轉(zhuǎn)化為one-hot(獨(dú)熱編碼)
將標(biāo)簽轉(zhuǎn)化為one-hot(獨(dú)熱編碼)
問題描述
在利用categorical_crossentropy作為損失函數(shù)時,需要將標(biāo)簽設(shè)定為one-hot格式,即每個標(biāo)簽的長度應(yīng)轉(zhuǎn)換為一個長度為類別數(shù)的向量,該向量除了所屬的類別位置為1之外,其他位置值為0。
from keras.utils.np_utils import to_categorical categorical_labels = to_categorical(int_labels, num_classes=None)
示例:
import numpy as np int_labels = np.array([2,1,3,5]) from keras.utils.np_utils import to_categorical categorical_labels = to_categorical(int_labels, num_classes=None) print(categorical_labels)

將矩陣X轉(zhuǎn)換為one-hot矩陣
Python中將X(假設(shè)X的大小為1*m,類別為k類)轉(zhuǎn)換為one-hot矩陣
準(zhǔn)備一個eye(k)矩陣,然后根據(jù)X將對應(yīng)的列取出來。(或者把行取出來再轉(zhuǎn)置)
def conv_to_one_hot(X,n): ? ? X = np.array(X) ? ? refer = np.eye(n) ? ? X_one_hot = refer[X] ? ? return X_one_hot.T X=[3,5,4,7] print(conv_to_one_hot(X,8))
結(jié)果為:
[[0. 0. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 0.]
[1. 0. 0. 0.]
[0. 0. 1. 0.]
[0. 1. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 1.]]
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python使用itchat實現(xiàn)手機(jī)控制電腦
這篇文章主要為大家詳細(xì)介紹了python使用itchat實現(xiàn)手機(jī)控制電腦,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-02-02
Pandas merge合并兩個DataFram的實現(xiàn)
本文主要介紹了Pandas merge合并兩個DataFram的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
Python機(jī)器學(xué)習(xí)應(yīng)用之支持向量機(jī)的分類預(yù)測篇
最近完成的一個項目用到了SVM,之前也一直有聽說支持向量機(jī),知道它是機(jī)器學(xué)習(xí)中一種非常厲害的算法。利用將近一個星期的時間學(xué)習(xí)了一下支持向量機(jī),把原理推了一遍,感覺支持向量機(jī)確實挺厲害的,這篇文章帶你了解它2022-01-01
Python?使用pip在windows命令行中安裝HDF?reader包的操作方法
HDF reader包是一個常用來將.mat類型數(shù)據(jù)導(dǎo)入到python在這里插入代碼片中使用的包,非常好用,今天介紹一下,如何在命令行中安裝這個包,需要的朋友可以參考下2022-12-12

