Одна горячая кодировка на уровне персонажа

1

Итак, я следил за некоторыми примерами, приведенными на этом посту: Как одно-горячее кодирование предложений на уровне символов?

И они кажутся горячим кодированием на уровне персонажа. Тем не менее, я не могу разобраться в горячем кодировании на уровне символов для строки с 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
scikit-learn

1 ответ

1
Лучший ответ

Вы можете использовать функцию одиночного кодирования, предоставляемую 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)

Результаты: Изображение 174551

  • 0
    Вы правы, это тоже работает. Большое спасибо!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню