Итак, я следил за некоторыми примерами, приведенными на этом посту: Как одно-горячее кодирование предложений на уровне символов?
И они кажутся горячим кодированием на уровне персонажа. Тем не менее, я не могу разобраться в горячем кодировании на уровне символов для строки с ints в ней.
например:
"hello" # h=7, e=4 l=11 o=14
было бы:
[[0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
Я смог добиться этого с помощью должности, упомянутой выше. Но кто-то сможет мне помочь в горячем кодировании:
"Hello0311"
Любая помощь и руководство заслуживают высокой оценки
Вы можете использовать функцию одиночного кодирования, предоставляемую Keras напрямую. Что-то вроде этого:
import numpy as np
from keras.utils import np_utils
y_train_label = [7,4,11,11,14]
y_train_label_onehot = np_utils.to_categorical(y_train_label)
print('one_hot:',y_train_label_onehot)
Результаты: