Прогнозирование элемента последовательности на основе предыдущего M и следующих N элементов - PullRequest
1 голос
/ 13 июля 2020

У меня есть массив последовательностей одинаковой длины, каждая последовательность содержит 300 чисел (M = 300). Каждый элемент в последовательности - это номер от 1 до 9:

13571398...2455 # 300 numbers
33344467...1143 # 300 numbers
...
...
...
66118859...2121 # 300 numbers

Моя задача - построить модель, которая предсказывает элемент (число) в позициях последовательности от 180 до 190 на основе первых 179 элементов и последние 110 элементов в последовательности. Другими словами, данные элементы в позициях от 0 до 179 и от 191 до 299 предсказывают элементы в последовательности в позициях от 180 до 190.

Я думаю о следующих шагах для решения этой задачи с моделью Keras BiLSTM :

  • Разделить все последовательности на наборы для обучения / проверки / тестирования
  • Обучить BiLSTM на наборе поездов для предсказания следующего числа в любом месте последовательности
  • В тестировании и проверке наборы случайным образом заменяют K элементов в позициях от 180 до 190 на 0 (число, которого нет в исходных последовательностях).
  • Используйте предварительно обученный BiLSTM для прогнозирования истинных значений элементов «0» в проверочных и тестовых наборах

Пожалуйста, помогите со следующими вопросами:

  • Как мне в этом случае представлять данные и классы для BiLSTM? Похоже, мои данные и классы - одно и то же. Оба числа 1 ... 9 - это данные и соответствующие классы для BiLSTM.
  • Какие структуры данных и кодировки в этом случае я должен создать для обучения и прогнозирования с помощью Keras BiLSTM?
  • Как оценить качество этой модели на поезде и тестовых наборах?

Любые другие идеи использования других моделей, в частности Transformers (PyTorch, Tesnsorflow), приветствуются, спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...