如何理解keras中的keras.utils.to_categorical

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

猜你喜欢

转载自blog.csdn.net/candice5566/article/details/105545412
今日推荐