Pull to refresh

Comments 16

Как же прекрасно, когда можно поиграть в прикольные древние игрушки и при этом кому-то помочь =)
Только что ж так мало игр?
Добавить больше игр не проблема, только тогда данных по каждой игре будет меньше, и это плохо скажется на обучении. Если наберём много данных, то добавить еще игру дополнительно — дело одного часа.
А для NES такое можно замутить? У каждого свои любимые игры детства :)
Это сделать реально, но нужно будет весь проект делать с самого начала. Да и игры там сложнее, поэтому будет сложнее экспериментировать.
Пытался внести свой вклад в исследование… ниасилил. Пробел не желает стрелять. Видимо, что-то в настройках ФФ мешает. Но стрелочки работают.
У меня тоже были странности в работе кнопки «пробел». Такое ощущение, что после его нажатия следует подождать около секунды, прежде чем можно будет нажать ещё раз. Но я думал, что это особенности самих игр.
Нажимал и вообще не отпускал. Никакого результата. Подозреваю, что это из-за динамического поиска, но отключать его ради игрушки не хочется.
А F12/Start Game нажимали? В Space Invaders, например, для начала игры нужно нажать.
Да, дело было в этом. После нажатия F12 стрелять заработало. Надо было читать инструкцию.)
Да, интерфейс тоже не идеален =)
Вы хотите использовать Supervised learning там, где действительно нужно использовать Reinforcement learning, упомянутый в начале заметки. Для Reinforcement learning не нужно иметь никаких данных о нажатиях в той или иной игровой ситуации. Все, что вам нужно — научиться считывать с экрана текущее количество набранных очков, всему остальному бот научится сам.
Reinforcement learning разный бывает. Есть даже Inverse Reinforcement Learning, где имея данные о том, как вёл себя человек, мы должны восстановить reward function.

Что касается нашего случая, то мы собираемся проверить, насколько использование данных о поведении людей в exploration фазе, позволит ускорить обучение.
Есть даже Inverse Reinforcement Learning

Есть, да. Но Inverse Reinforcement Learning совсем не то же самое, что Reinforcement learning, несмотря на общие слова в названии, т.к. они предназначены для решения разных проблем. Зачем вам восстанавливать reward function, если она явно дана вам в виде очков на экране?

Что касается ускорения обучения, то я очень сомневаюсь, что в данном случае исследование поведения людей вам что-то даст. Во-первых, нет никаких гарантий того, что люди знают/избирают оптимальную стратегию. Во-вторых, вам все равно нужно делать исследовательские ходы. В-третьих, игра не симметрична в том смысле, что игрок играет против компьютера, а не другого игрока, как в го, шахматах и т.д. В-четвертых, на изучение поведения людей вы так же будете тратить время и его тоже надо учитывать в плане оценки «ускорения обучения».

Я привёл IRL для примера того, что RL не всегда предпологает только использование данных среды. В данном случае reward function восстанавливать нам не нужно, да.

Что касается ускорения обучения, то я очень сомневаюсь, что в данном случае исследование поведения людей вам что-то даст.


Ну вот и посмотрим =) С первым и вторым, четвёртым пунктами согласен. Не понял, при чём тут третий.

Ну, в AlphaGo первая часть обучения тоже чисто в supervised режиме (предсказание хода), и что? В любом случае такие данные явно не бесполезны. Как минимум, можна проанализировать разницу в том, как играет человек, и как в итоге научилась играть машина, и т.д.
Sign up to leave a comment.

Articles