Я работал над моделированием некоторых явлений, включающих управление в реальном времени в среде с неотъемлемыми вознаграждениями (в частности, игра в понг-подобную игру), и это все больше похоже на то, что обучение с подкреплением само по себе не поможет в вычислительном отношении (я В настоящее время я использую нейронную сеть с обратным распространением временной разницы ).
Один из возможных дополнительных механизмов обучения состоит в том, чтобы модель также предсказывала будущее состояние среды, из которого она могла бы учиться под наблюдением, используя стандартное распространение с прямой обратной связью.
В настоящее время я думаю о синтезе этих механизмов так, чтобы входной слой передавался скрытому слою, который, в свою очередь, передавался как слою предсказания вознаграждения, так и отдельному слою предсказания состояния. При обучении этой сети я просто сначала меняю веса с помощью обучения с подкреплением, а затем снова меняю их, чтобы учесть ошибку прогнозирования состояния с помощью обратной опоры.
Итак, мой вопрос таков : есть ли какие-либо проблемы, которые вы можете предвидеть в связи с этой архитектурой? Кроме того, применялась ли ранее такая комбинация механизмов обучения, и если да, то применялась ли она аналогичным образом?
Я не уверен, что полностью понимаю ваш дизайн; возможно, вы можете уточнить, что вы хотите, чтобы ваша сеть изучала, почему TD-обучение «не работает» и что вы подразумеваете под «подкреплением» и «прогнозированием». В частности, TD-обучение представляет собой модель обучения с подкреплением, и оно вознаграждает на основе прогнозируемых (а не только наблюдаемых) результатов. Однако вы, кажется, описываете обучение с подкреплением и прогнозированием как ортогональные модели, поэтому я снова не уверен, что правильно понимаю.
В качестве общего предложения вы можете рассмотреть возможность использования сети Элмана/Джордана (например, рекуррентной нейронной сети/RNN). Вместо того, чтобы полагаться только на знание текущего состояния для предсказания следующего состояния, RNN может научиться распознавать последовательности событий. Это особенно полезно для прогнозирования будущих состояний в задаче, которая разворачивается во времени (например, [1]). Я предлагаю это в основном потому, что вы говорите, что ваша задача - это задача «управления в реальном времени», но без дополнительных знаний о вашей задаче я действительно не знаю, уместно ли это.
Что касается вашего предложения использовать два разных механизма обучения для изменения одного набора весов — у меня нет ответа, но мне это кажется нелогичным. Вы используете два разных метода оптимизации для одного набора данных. Если методы не совпадают, ваша сеть, вероятно, никогда не узнает свои веса соединений. Если они согласуются (т. е. сходятся в одном и том же ответе), то я не уверен, что вы добавляете какую-то ценность, используя два механизма обучения.
[1] Эльман (1990). Нахождение структуры во времени. Когнитивная наука, 14, 179-211. Получено с http://synapse.cs.byu.edu/~dan/678/papers/Recurrent/Elman.pdf
Артем Казначчеев
вдв
Шонни123