Я пытаюсь построить модель, которая выполняет следующие действия:
Учитывая два временных ряда, взятых из одного и того же базового распределения дискретных значений (в группе конечных циклических c), возьмите их поэлементно Разница и передать его в модель.
Задача модели состоит в том, чтобы восстановить два исходных временных ряда, зная только их разницу.
Я использую кросс-энтропию в качестве потерь. Но я хочу представить отдельную потерю:
Возьмите предсказанные вероятности для категорий первой последовательности, сдвиньте их на последовательность разностей, заданных в качестве входных данных, и посмотрите на абсолютную разницу с вероятностями, предсказанными для sequence.
Как мне реализовать это в keras / tenorflow? Я уже изучил roll
и gather
, но они не дают достаточной гибкости. gather_nd
может быть работоспособным, но не уверен, что это хорошая идея?
Пока мне удалось реализовать это только с динамическими c слоями, но это ужасно медленно.
Кстати, в интересующем меня приложении две последовательности - это текст Engli sh. Я пытаюсь дешифровать палитру "Два раза" . До сих пор я достиг ~ 85% точности. Но я пытаюсь улучшить. Спасибо!