Edited at

KerasでOne-Hotエンコーディングする方法

備忘目的で書いています。

参考にしたのは=> https://github.com/fchollet/deep-learning-with-python-notebooks

1) サンプルデータをインポート

ここではMNISTをKerasからインポートします。

from keras.datasets import mnist

(train_images, train_labels) , (test_images, test_labels) = mnist.load_data()

# >print(train_labels[:3])
# [5 0 4]

2) One-hotエンコーディング

kerasに実装されたto_categoricalを使います。

[0 ~ 9]の10個の数字が存在するのでone-hot結果の次元数が10になっています。


from keras.utils import to_categorical
train_labels_onehot = to_categorical(train_labels)

#> print(train_labels_onehot[:3])
# [[0. 0. 0. 0. 0. 1. 0. 0. 0. 0.]
# [1. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
# [0. 0. 0. 0. 1. 0. 0. 0. 0. 0.]]