Можно ли обучить нейронную сеть с «разделенным» выходом - PullRequest
0 голосов
/ 05 июня 2019

Можно ли считать выходные данные одной нейронной сети двумя или более наборами выходов?

Я объясню немного больше (в контексте обучения q):

Представьте, что у меня есть два агента в одной среде и каждый из них иметь различное количество выполняемых действий. Оба агента будет иметь тот же входной вектор, содержащий переменные окружения выбирать свои действия.

Вопрос:

Можно ли использовать уникальную нейронную сеть для управления обоими агентами?

Один пример:

Агент 1 имеет 3 выполнимых действия, а Агент 2 имеет только 2 выполнимых действия действия. Важно то, что агенту придется работать совместно, чтобы максимизировать вознаграждение. Могу ли я использовать 1 нейронную сеть с 5 выходов, чтобы выбрать лучшее действие для обоих агентов? словно первые 3 выхода сети будут значения Q для первого агент и 2 других будут значения Q для агента 2. Моя награда Функция всегда будет основана на глобальных результатах, каждый агент будет не имеет конкретной награды.

Возможно ли это? Потому что я ничего не говорил об этом. Если вам нужно больше точности, просто спросите.

Я также знаю, что возможное решение должно состоять в том, чтобы создать сеть с 3 * 2 выходами, и каждый выход был бы парой действий (1 действие для каждого агента), но я действительно хочу знать, сделал ли кто-то уже кого-то как я объяснил раньше или просто, если кто-то знает, что не может работать и почему.

1 Ответ

1 голос
/ 05 июня 2019

Я не знаю об этом специально для обучения с подкреплением, но нейронные сети с несколькими выходами очень распространены в литературе.

Если вы хотите, чтобы одна сеть управляла обоими агентами, возможно, стоит разделить ранние этапы сети, прежде чем разделить сеть на две отдельные ветви с несколькими слоями в каждой ветви.

В качестве примера того, как работать с несколькими выходами, вы можете проверить эту ссылку .

...