tf.keras.layers.TextVectorizationслой отображает текстовые функции в целочисленные последовательности, и, поскольку его можно добавить как слой модели keras, он упрощает развертывание модели в виде одного файла, который принимает строку в качестве входных данных и обрабатывает ее. Но мне нужно выполнить и обратную операцию, и я не могу найти способ сделать это. Я работаю с LSTMмоделью, которая предсказывает следующее слово из предыдущих слов. Например, моя модель должна принимать строку «Я люблю» и должна выводить возможные следующие слова, такие как «кошки», «собаки» и т. д. Я могу сделать это сопоставление строк с целым числом вручную, используя tf.keras.preprocessing.text.Tokenizerследующее:
text = "I love cats"
tokenizer = tf.keras.preprocessing.text.Tokenizer(num_words=10000, oov_token='<oov>')
tokenizer.fit_on_texts([text])
seqs = tokenizer.texts_to_sequences([text])
prediction = model.predict(seqs) # an integer
actual_prediction = tokenizer.sequences_to_texts(prediction) # now the desired string
Как я могу добиться функциональности TextVecorizationслоя в выходном слое модели, чтобы вместо получения прогноза индекса я получал строку, представленную индексом по TextVectorizationслою?
Комментариев нет:
Отправить комментарий