Умное автозаполнение с tenorflow.js - PullRequest
0 голосов
/ 04 мая 2019

Можно ли создать какой-то выбор автозаполнения, который предлагает значения, основанные на предыдущих входных данных?
Допустим, у меня есть выбор аэропорта с 5k пунктов.Я хотел бы дать пользователю 5 лучших значений для выбора на основе его предыдущих предпочтений.

1 Ответ

0 голосов
/ 04 мая 2019

Подход глубокого обучения:

По сути, вам нужна модель прогнозирования на уровне слов на основе RNN.Такие модели используются при генерации текста.Вы можете обратиться к одному примеру здесь .

Эти модели специально берут слово (t) и предсказывают следующее слово (t1).Тогда, принимая t1, он предсказывает t2.Этот цикл продолжается до тех пор, пока не будет достигнуто максимальное количество слов.

Если бы мне пришлось тренировать такую ​​модель RNN в одном предложении, например

Hello world from TensorFlow

Тогда метка объектапары выглядят так:

X, Y
Hello, World
World, from
from, TensorFlow

Эти предложения можно было бы извлечь из предыдущих входных данных пользователя.

Вещи, которые вам потребуются при построении такой модели:

  1. Множество пользовательских данных.
  2. Алгоритм ранжирования, позволяющий получить N прогнозов на высшем уровне
  3. Вероятно, это графический процессор или TPU.Процессоры могут оказаться очень медленными и могут занять несколько дней.

Подход не глубокого обучения:

Вы можете воспользоваться теоремой Байеса или просто проверить, какое слово имеетнаибольшая вероятность после конкретного слова.Слово «утро» будет иметь наибольшую вероятность после слова «хорошо».

Подсказка:

  • В большинстве случаев вам также потребуется обрабатывать пользовательский пользовательслова, которые вы не можете добавить в свой словарь.Это может быть имя человека.Поэтому при сборе данных вам нужно пометить такие слова в общее слово, например.
...