AlphaGo (та інші ігрові програми, що використовують підкріплення) без людських баз даних


13

Я не фахівець з цього питання, і моє питання, мабуть, дуже наївне. Це випливає з есе для розуміння повноважень та обмежень навчання підкріплення, що використовується в програмі AlphaGo.

Програма AlphaGo була побудована, використовуючи, серед іншого (Монте-Карло розвідка дерев тощо), нейронні мережі, які навчаються з величезної бази ігор, що граються людьми, і які потім посилюються, дозволяючи грати у версії програму проти себе багато разів.

Тепер мені цікаво, що трапилося б - ми намагалися створити таку програму без людської бази даних, тобто, починаючи з базової програми Go просто знаючи правила та якийсь метод дослідження дерев, і дозволяючи грати проти себе, щоб покращити свою нейронну мережу. Чи будемо ми після багатьох ігор проти себе потрапляти в програму, здатну змагатися або перемагати найкращих гравців людини? І якщо так, то скільки ігор (на порядок) знадобиться для цього? Або навпаки, чи сходиться така програма до значно слабшого гравця?

Я припускаю, що експеримент не був зроблений, оскільки AlphaGo так недавно. Але відповідь все-таки може бути очевидною для фахівця. Інакше будь-яка освічена здогадка мене зацікавить.

Можна також задати те саме питання для «простіших» ігор. Якщо ми будемо використовувати приблизно таку саму техніку підкріплення, що використовується для AlphaGo, але без використання людської бази даних, для шахової програми, чи зможемо ми врешті отримати програму, здатну перемогти найкращих людей? А якщо так, то як швидко? Це було випробувано? Або як не для шахів, то що щодо шашок, чи ще простіших ігор?

Дуже дякую.

Відповіді:


10

Я не експерт, але схоже, що AlphaGo Zero відповідає на ваше запитання. https://deepmind.com/blog/alphago-zero-learning-scratch/

Попередні версії AlphaGo спочатку тренувалися на тисячах людських аматорських та професійних ігор, щоб навчитися грати Go. AlphaGo Zero пропускає цей крок і вчиться грати просто, граючи в ігри проти себе, починаючи від абсолютно випадкової гри. Тим самим він швидко перевершив рівень гри людини і переміг опубліковану раніше версію AlphaGo, що перемогла чемпіона, на 100 ігор до 0.


Це нещодавніше?
космос

1
Це було опубліковано 18 жовтня 2017 р.
ncasas

Було б цікаво знати результати щодо людей. Тому що однією з причин попередньо підготовленої бази даних людини є вдосконалення алгоритму MCTS щодо противників людини . Оригінальний AlphaGo був оптимізований для гри проти людей, а не інших ML. Як таке важче сказати, чи AlphaGo Zero суворо "кращий", ніж оригінальний AlphaGo, чи просто домінує в ньому в сенсі теорії ігор - наприклад, AlphaGo Zero б'є AlphaGo б'є Lee Sedol б'є AlphaGo Zero. . .
Ніл Слейтер

4
Ніл, Так, це було б цікаво. Але я не ставлю ставку ні на відсоток людських шансів проти "Альфа-нуля".
Joël

1
Мережі, попередньо навчені людськими даними, використовувались для пошуку більш ефективним, але не більш схожим на людину. Після завершення поетапного контролю навчання мережа грала проти себе. На додаток до цього (ви можете посилатися на мою відповідь нижче)Qна функцію в дереві вплинула попередня ймовірність з боку політики політики, а потім занепала через кількість відвідувань для заохочення розвідки.
Константинос

9

Це ж питання було задано автору статті AlphaGo, і його відповідь полягала в тому, що ми не знаємо, що буде, якщо AlphaGo навчиться з нуля (вони цього не перевіряли).

Однак, враховуючи складність гри, було б важким завданням навчити алгоритм з нуля без попередніх знань. Таким чином, на початку розумно починати будувати таку систему, удосконалюючи її до рівня Майстер, використовуючи знання, здобуті людьми.

Варто зазначити, що, хоча людина рухає упередженим вибором дії у вузлах дерев (станах), цей попередній показник має коефіцієнт занепаду. Це означає, що збільшені відвідування конкретного стану, зменшують силу попереднього спонукання алгоритму досліджувати.

Нинішній рівень Майстерності AlphaGo невідомий, наскільки близький чи далекий він до людського способу гри (на турнірі він робив один хід, який у людини майже нульова ймовірність виконувати! - але в рівній мірі робив також і справді погані рухи) . Можливо, на всі ці питання залишається відповісти, реально реалізуючи відповідні алгоритми тестування.

Я зобов'язаний редагувати свою відповідь так, як нещодавній документ DeepMind відповідає на ваше запитання. З усього минулого досвіду роботи з першою версією AlphaGo було багато прогресів, і це дійсно варто прочитати.


Вас вітають :)
Константинос

8

Наскільки я зрозумів алгоритм AlphaGo, він ґрунтується на простому структурі навчання для підкріплення (RL), використовуючи пошук дерев Монте-Карло для вибору найкращих дій. На вершині цього, стани та дії, охоплені алгоритмом RL - це не просто вся можлива конфігурація гри (Go має величезну складність), але базується на політичній мережі та мережі цінностей, засвоєних з реальних ігор, а потім покращено, граючи в ігри AlphaGo проти AlphaGo.

Тоді ми можемо задуматися, чи тренування з реальних ігор - це лише ярлик для економії часу або необхідний варіант для отримання такої ефективності. Я думаю, ніхто не знає відповіді, але ми могли б висловити деякі припущення. По-перше, здатність людини до сприяння хорошим рухам пояснюється набагато складнішим інтелектом, ніж проста нейронна сітка. Для настільних ігор це поєднання пам’яті, досвіду, логіки та почуттів. У цьому напрямку я не впевнений, що алгоритм AlphaGo міг би побудувати таку модель без явного дослідження величезного відсотка всієї конфігурації гри Go (що практично неможливо). Поточні дослідження зосереджуються на побудові більш складного подання такої гри, як реляційна RL або індуктивне логічне навчання. Тоді для більш простих ігор (можливо, це стосується шахів, але нічого впевненого),

Все-таки це лише думка. Але я впевнений, що ключ до відповіді на ваше запитання лежить у підході до РЛ, який на сьогоднішній день є досить простим з точки зору знання. Ми насправді не в змозі визначити, що змушує нас впоратися з цими іграми, і найкращий спосіб, який ми знайшли, поки не переможеш людину, - це грубо навчитися у нього та вдосконалити (трохи) вивчену модель за допомогою масових розрахунків.


1

Конкурентна самостійна гра без людських баз даних можлива навіть у складних, частково спостережуваних умовах. OpenAI зосереджується на цьому напрямку. Відповідно до цієї статті :

Самостійна гра гарантує, що навколишнє середовище - це завжди правильна складність для поліпшення ШІ.

Це важлива причина успіху самостійної гри.

OpenAI домігся надлюдських результатів для Dota 2 1v1, 11 серпня 2017 року обіграв Dendi 2-0 за стандартними правилами турніру.

Бот навчився грі з нуля самостійною грою, і не використовує навчання імітації чи пошук дерев. Це крок до побудови систем ШІ, які дозволяють досягти чітко визначених цілей у безладних, складних ситуаціях із залученням реальних людей.

Не лише ігри, цей напрям також є перспективним для завдань з робототехніки.

Ми виявили, що самостійна гра дає змодельованим ІС виявити такі фізичні навички, як боротьба з каченятами, підводка, підробка, удари ногою, лов і пірнання за м'ячем, не чітко створюючи навколишнє середовище з цими навичками.

На наступному кроці вони розширюють метод, щоб навчитися співпрацювати, змагатися та спілкуватися , а не обмежуватися самоіграми.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.