Я работал с набором инструментов для нейронных сетей Matlab. Здесь я использую сеть NARX. У меня есть набор данных, состоящий из цен на объект, а также количества объекта, приобретенного за определенный период времени. По существу, эта сеть выполняет одношаговое предсказание, которое математически определяется следующим образом:
y(t)= f (y(t −1),y(t −2),...,y(t −ny),x(t −1),x(t −2),...,x(t −nx))
Здесь y(t) — цена в момент времени t, а x — сумма. Таким образом, входными функциями, которые я использую, являются цена и количество, а целью является цена в момент времени t+1. Предположим, у меня есть 100 записей таких транзакций, и каждая транзакция состоит из цены и суммы. Тогда по существу моя нейронная сеть может предсказать цену 101-й транзакции. Это отлично работает для одношаговых прогнозов. Однако, если я хочу сделать многошаговые прогнозы, скажем, я хочу предсказать 10 транзакций вперед (110-я транзакция), тогда я предполагаю, что я делаю одношаговый прогноз цены, а затем возвращаю его обратно в нейронную сеть. Я продолжаю делать это, пока не достигну 110-го предсказания. Однако в этом сценарии, после того как я предскажу 101-ю цену, я могу передать эту цену в нейронную сеть, чтобы предсказать 102-ю цену, однако я не знаю сумму объекта при 101-й транзакции. Как мне это сделать? Я думал о том, чтобы установить в качестве целей цены транзакций, которые на 10 транзакций опережают текущую, чтобы, когда я предсказывал 101-ю транзакцию, я, по сути, предсказывал цену 110-й транзакции. Является ли это жизнеспособным решением, или я делаю это совершенно неправильно. Заранее благодарю за любую помощь