Структура RNN и LSTM не позволит вам сделать это напрямую, и это причина того, почему - Функция активации для RNN: h (t) = Tanh (W * h (t-1) + U * x (t) + Bias) Обратите внимание, что W, U и Bias одинаковы - независимо от того, сколько временных интервалов вы используете для RNN. Поэтому, учитывая некоторый X-вектор, выходной сигнал будет функцией p1 * X1 + p2 * X2 и т. Д., Где X1 - это X в вашем примере, а X2 - Y.
Однако - чтобы обнаружить изменение скорости - вам нужен другой расчет. Изменение скорости указывает, что между временными интервалами 1 и 2 и между временными интервалами 2 и 3 было пройдено различное расстояние: SQRT ((X1 (t) -X1 (t-1)) ^ 2 + (X2 (т) -X2 (т-1)) ^ 2). Это означает, что вам нужна функция активации, которая каким-то образом учитывает X1 * X1 - и это невозможно в RNN или LSTM.
Однако вы можете достичь того, что вам нужно, косвенно, используя пользовательские функция активации, которая вычисляет пройденное расстояние за последний период времени. Взгляните на эту ссылку . Используя вашу пользовательскую функцию активации, вы можете вставить вектор X1 (t), X2 (t), X1 (t-1), X2 (t-1) и рассчитать расстояние D. При t = 1 вы можете использовать 0 как X1 (t = 0) и X2 (t = 0).
Ваша пользовательская функция активации должна выглядеть следующим образом: D = (X1 (t) - X1 (t-1)) ^ 2 + (X2 (t) -X2 (t-1)) ^ 2. Таким образом, если скорость одинакова между таймфреймами, вы будете подавать RNN с постоянными значениями D, поэтому вы ожидаете, что RNN достигнет весов, которые будут имитировать функцию D (t) - D (t-1).