tf.keras.utils.to_categorical(
y,
num_classes=None
)
簡單來說,keras.utils.to_categorical就是把類別標籤轉換爲onehot編碼。
舉個例子:
樣本 標籤
1 玫瑰花
2 康乃馨
3 百合花
然後經過one hot encoding,就會轉化爲:
玫瑰花 100
康乃馨 010
百合花 001
參數:
y
: class vector to be converted into a matrix (integers from 0 to num_classes).num_classes
: total number of classes.
返回:
A binary matrix representation of the input.
作用:
Converts a class vector (integers) to binary class matrix.
使用:
E.g. for use with categorical_crossentropy.
舉個使用的例子:
def preprocess_labels(labels, encoder=None, categorical=True):
if not encoder:
encoder = LabelEncoder()
encoder.fit(labels)
y = encoder.transform(labels).astype(np.int32)
if categorical:
y = np_utils.to_categorical(y)
return y, encoder