Я работаю над этой следующей авторегрессионной проблемой с Keras / TF:
Входы:
m примеры x 10 временные шаги (длина последовательности) x 7 функции
(каждое значение является действительным)
Выходы:
m примеры x 4 цели / "метки" (реальные значения, которые я хочу предсказать)
Пока что с помощью LSTM с плотными слоями в конце (отредактировано) . Поэтому для одного примера я даю 7 объектов в последовательности размером 10, и я просто хочу получить 4 реальных значения (я предсказываю текущие значения в соответствии с предыдущими значениями).
У меня следующий вопрос :
В чем разница между предсказаниями:
а. 1 выход с размерами м х 4
б. 4 выхода с каждым размером м х 1
Я испробовал оба метода и не вижу особой разницы, но я хочу понять, что они оба делают. Во втором случае я знаю, что могу указать разные потери и различный вес для потерь по каждой переменной, которую я хочу предсказать, но это, кажется, менее правильно, чем первый метод.
#python / Keras-TF
#a. multi output
model = Model(inputs = X_input, outputs = [Output1,Output2,Output3,Output4])
prediction = model.predict(X_test_normalized) #returns an inconvenient list of 4 [2 by 1 vectors] which in the end gives me m*4 real values as wanted
###### vs ######
#b. single output
model = Model(inputs = X_input, outputs = [Output1]) #vector of dimension 4
prediction = model.predict(X_test_normalized) #returns a m*4 matrix