Как найти инверсию нелинейной функции с помощью lstm - PullRequest
0 голосов
/ 16 мая 2019

У меня есть система, основанная на комбинации двух других функций y = f (g (x (t)).

f (x) является нелинейной и неизвестной без четкой замкнутой формы. Как бы я ни смогизучить и охарактеризовать его с помощью lstm.

Я хочу найти g (x (t)), чтобы y = f (g (x (t)) = ax (t) + b с константами a и b.

Я пытался использовать следующий подход:

  • train lstm L1, чтобы найти f (x (t))
  • создать новый lstm L2, в котором последнийслои имеют структуру, аналогичную L1, - - копируют веса из L1 в эти последние слои, делают их непереносимыми
  • поезд L2 (фактически только первые слои), так что входной сигнал равен x (t), а выходной - ax(t) + b
  • скопировать первые слои из L2 в новый lstm L3 с той же структурой. Предполагается, что L3 равен g (x (t))

Подходбыл неудачным. Обучение L1 и L2 дало хорошие результаты, однако L3 не был близок к g (x (t)). Мои вопросы - Что не так с методом выше? Любой альтернативный подход для поиска инвертораФункция se?

Спасибо!

...