Блог компании RUVDS.com
Игры и игровые приставки
Машинное обучение
Комментарии 21
0

Скорее, для одной игры нужны боты с разной спецификой.
В том же покемоне один бот решает задачу передвижения.
Второй бот — боёвка.
И ещё один, чтобы управлять ими всеми.
Если возникает принципиально новая ситуация, в которой остальные пасуют, создаем нового бота и начинаем тренировать его.

0
Но пока, могу вас заверить, существуют задачи, которые мы решаем лучше машин, включая игры, в которые многие из нас играли в детстве.
А также Quake. :-)

Кроме того, на пути прогресса ИИ стоят не только чисто алгоритмические проблемы. Вот недавно мы все следили за противостоянием «кремниевых» и «белковых» в Dota 2. Там интересно не только то, что люди довольно быстро нашли подход к OpenAI и стали уверенно обыгрывать ботов, пользуясь их слабой игрой в лейте, но и колоссальная разница в энергозатратах:
Для обучения OpenAI в режиме 5х5 постоянно используется 128 тысяч процессорных ядер Google Cloud. Но и это еще не вся мякотка. Так как в обучении бота OpenAI используется машинное зрение (о котором мы поговорим чуть позже), в этой чудовищной конфигурации фигурирует еще 256 GPU P100 NVIDIA
… против мозга человека, потребляющего 25 Вт. Недавно была тут хорошая статья о проблемах существующих аппаратных архитектур для решения задач МО и ИИ, которая, к сожалению, почему-то не снискала должной популярности и внимания читателей.
+3
О, вот тут вы не правы. Давайте сравнивать полные затраты на обучение тогда. Сколько поколений людей сменилось, чтобы текущий игрок смог обыграть кластер? Сколько ресурсов он потратил на своё обучение/развитие?
0
Мысль интересная, но с поколениями вы, пожалуй, слегка загнули. Если и проводить такую параллель и пытаться оценить полное время обучения человека, то это 15-20 лет, за которые из младенца вырастает будущий чемпион доты. ;-) Генетическая программа у него уже есть, этого вполне достаточно; даже нет особой необходимости в предварительном изучении накопленных другими игроками знаний об игре — человек вполне успешно осиливает игры методом тыка. В некотором смысле RL-алгоритмы ботов занимаются этим же, но результаты пока намного скромнее.
+1
Если и проводить такую параллель и пытаться оценить полное время обучения человека, то это 15-20 лет, за которые из младенца вырастает будущий чемпион доты

Сейчас есть тема, как быстро получать приемлимый результат в задачах машинного обучения:
1. взять готовую сеть, которую обучали на имаджнете при помощи оборудования, сопоставимого по мощности с тем, что использовали OpenAI
2. зафиксировать все слои кроме нескольких выходных
3. обучить эти несколько слоев на своем датасете на скромном железе.
То есть, если уже потрачено X процессорной мощности на общую задачу, то чтобы дообучить на свою специализированную, достаточно условного 0.00001X. С мозгом тот же прикол. Сотни тысяч лет эволюции — это Х, решающий ряд общих задач, и заложенный в каждом исправном мозге. 0.00001X — это опыт конкретного игрока. А машине надо проглотить 1.00001Х за один присест)
0
Можно провести такой мысленный эксперемент — перемешать выходную картинку случайной, но фиксированой функцией — никакой человек, даже за 15-20 лет, не научится адекватно играть — он не будет ничего видеть. А для AI разницы, вообще, не будет.
0

Зависит от того, какой уровень шума даст случайна картинка. Если невысокий — то и человек научится, если высокий — то и сама сеть не сможет вытащить данные.

+1
Я имею в ввиду не случайный шум, а перевод картинки без потери информации в новую форму. Научить человека читать QR коды проблематично, а для сетки приципиальной разницы нет. Потому что, сетка обучается с нуля, а мы нет.
+1
danfe:
против мозга человека, потребляющего 25 Вт

против пяти мозгов, а не одного мозга :)
К тому же нейронку вроде обучали только сутки на этих мощностях, а люди тратят на это годы и неизвестно, что дороже — аренда этих мощностей на сутки или годы выращивания балбесов, которые не умеют ничего, кроме как играть :)
Новые подходы в машинном обучении могут ускорить процесс в десятки-сотни и даже тысячи раз, а мозг геймеров уже давно работает почти на пределе.

Вся статья напоминает старые заголовки «Почему машина может нечеловечески хорошо играть в шахматы, но не в Go?», которые уже неактуальны.
Уверен, что уже на текущей технической базе можно обучить машину, которая сможет «нечеловечески хорошо играть в Pokemon», просто это никому не нужно.
DeepMind уже перестала устраивать состязания между своим детищем AlphaGo и людьми, чтобы это не напоминало «избиение младенцев».
OpenAI напротив не мелочится, а хочет захватить последний оплот человечества с помошью превосходства в Dota 2. После того как им это удастся, останется очень мало людей, верящих в то что человек всегда сможет справиться с какой-нибудь задачей лучше компьютера.

При победе в Pokemon не будет такой зрелищности как при победе в Dota 2.

PS: справедливости ради нужно добавить, что конечно сам по себе AI не скоро достигнет такого уровня, что сможет в любой задаче превосходить человека. За этим превосходством ещё долго будут стоять люди, которые будут обучать компьютер решать задачи лучше людей.
0
Новые подходы в машинном обучении могут ускорить процесс в десятки-сотни и даже тысячи раз
Конечно, алгоритмы, в т.ч. численные (вычисления пониженной точности и т.п.) будут совершенствоваться, но качественный прорыв имхо потребует такого же качественного прорыва в аппаратной реализации, потому как уже сейчас энергозатраты на то, чтобы просто более-менее играть в доту, выглядят довольно дикими. Впрочем, новые подходы нужны в любом случае; я вообще довольно скептически отношусь к нейросетям — мне кажется, это лишь некий промежуточный этап (например, их довольно просто ввести в заблуждение, а еще они не понимают, что такое оптические иллюзии, и не умеют создавать новые).
OpenAI напротив не мелочится, а хочет захватить последний оплот человечества с помощью превосходства в Dota 2. После того как им это удастся, останется очень мало людей, верящих в то, что человек всегда сможет справиться с какой-нибудь задачей лучше компьютера.
Эх, мне вот интереснее посмотреть, когда и как ИИ научится обыгрывать топ-игроков в Quake. :-)
0
А почему именно Quake?
Он же больше заточен на реакцию и четкость движения, чем на планирование и взаимодействия, чем Дота. Т.е., как я вижу ситуацию, у ИИ тут наоборот изначальное преимущество. (Вообще тут вспоминаются ранние боты в CS, которые моментально стреляли в голову когда ты попадал им в область видимости)
-1
Не сочтите за грубость, просто чтобы не цитировать себя же, — почитайте мои комментарии (можно тупо по Ctrl-F/G, они все, по сути, один большой комментарий) к этому и этому топикам; там я постарался объяснить, почему мне кажется, что сложная Дота — более «удобный», что ли, орешек для ИИ, чем Quake, хотя последний (и тут вы правы) намного проще.
0

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

-1
Ну да, обсуждали: нифига не рвут (только перестреливают), и гандикап нужно давать небольшой. Все существующие квачные боты — тупые и предсказуемые, даже относительно продвинутые, типа спитеров или 3zb2. Да это и не ИИ на самом деле: все их абилки (тайминг итемов, умение доджиться, делать некоторые триксы и специфические прыжки) заложены в них изначально, в т.ч. знание карты (AAS/вейпоинты), они ничему не учатся сами.
0
Ну да, обсуждали: нифига не рвут (только перестреливают)

Ну так можно на все заявить — не рвут, а перечто-то там.

-1
Перестреливают = лучше стреляют, а не выигрывают. У лучших игроков accuracy не превышает 50% (в реальности ниже из-за спама, 25% RL/RG, 35% LG — обычное дело). Даже если бот будет попадать вообще всё (т.е. все хитсканы, от ракет и банок можно увернуться), ему можно просто не давать брать рельсу.

Окей, в QW идеально попадающий бот, пожалуй, действительно будет непобедим, но мы же про Q2/Q3. В любом случае, существующие боты это не ИИ. Лучшее достижении ИИ в кваке на сегодня — умение кое-как играть в недо-CTF на плоских сгенерированных «картах» а-ля Wolf3D.
Впрочем, я начинаю повторяться, всё уже перетёрто в прошлых топиках.
0
К тому же нейронку вроде обучали только сутки на этих мощностях, а люди тратят на это годы и неизвестно, что дороже — аренда этих мощностей на сутки или годы выращивания балбесов, которые не умеют ничего, кроме как играть :)

Два года его обучали, а не сутки :)
плюс к этому кожаные мешки выполняли роль тренера, так что нельзя говорить что сам ИИ не использовал преимущества миллионов лет эволюции

0
Давайте тогда посмотрим на то, что мозгу нужно не просто двигать персонажей, но вести огромную работу по перемещению конечностей, вести расчет задержек между входным и выходным сигналом, координировать дыхание и т.д.
В целом, там одного только движения рук достаточно, поскольку используются сложнейшие алгоритмы для позиционирования, согласно входных сигналов.
О пределах работы мозга тоже весьма сомнительное заявление. Потому, что там задействовуются далеко не все отделы для решения этой, не сложной для мозга, задачи.
И самая не тривиальная задача — это процесс коммуникации этих пяти мозгов. И процесс принятия решений в условиях этой коммуникации.
0
Я бы еще добавил в «актив» людей миллионы лет эволюции и развития этого самого мозга.
0
Про проблемы ИИ на базе кремния говорят столько, сколько я помню самое словосочетание ИИ, а я его услышал еще в школе(лет 20 назад). Видимо у людей короткая память, или подросло новое поколение, которое не знает про проблемы, не знает основ, но радуется тому как ИИ играет в игры.
Только полноправные пользователи могут оставлять комментарии. , пожалуйста.