AlphaZero. Нейронная сеть играет в шахматы

Тема в разделе "Машинное отделение", создана пользователем grizly, 6 дек 2017.

  1. Rom Старожил

    • Участник
    • Старожил
    Рег.:
    12.02.2012
    Сообщения:
    645
    Симпатии:
    276
    Репутация:
    28
    Оффлайн
    У меня сложилось впечатление, что при правильном применении NN + MCTS, программа выбирается практически из любой ямы. Может быть, только, нужно больше времени. Впрочем, реальных примеров маловато, так что пока только гипотеза.
  2. Rom Старожил

    • Участник
    • Старожил
    Рег.:
    12.02.2012
    Сообщения:
    645
    Симпатии:
    276
    Репутация:
    28
    Оффлайн
    Если я правильно помню, та сеть тренировалась только на партиях людей, поэтому она и слабее.
  3. crem Учаcтник

    • Участник
    Рег.:
    24.11.2016
    Сообщения:
    140
    Симпатии:
    203
    Репутация:
    14
    Оффлайн
    Нет, она тренировалась вначале на 160'000 партиях людей, а потом то что получилось тренировалось на 30'000'000 партиях с собой.
  4. Rom Старожил

    • Участник
    • Старожил
    Рег.:
    12.02.2012
    Сообщения:
    645
    Симпатии:
    276
    Репутация:
    28
    Оффлайн
    Ну, не знаю... Я специально просматривал публикацию Гугла на этот предмет, и не нашел ни одного упоминания о "доигрывании" после Supervised Learning.
  5. crem Учаcтник

    • Участник
    Рег.:
    24.11.2016
    Сообщения:
    140
    Симпатии:
    203
    Репутация:
    14
    Оффлайн
    https://storage.googleapis.com/deepmind-media/alphago/AlphaGoNaturePaper.pdf

  6. Rom Старожил

    • Участник
    • Старожил
    Рег.:
    12.02.2012
    Сообщения:
    645
    Симпатии:
    276
    Репутация:
    28
    Оффлайн
    Это статья не про АльфаГо Зеро, а про "простую" АльфаГо ещё 2015 года. Сравнение SL и RL Deep Mind приводили в статье об АльфаГо Зеро в октябре 2017:
    https://deepmind.com/documents/119/agz_unformatted_nature.pdf

    Вот там упоминаний о переходе с SL на RL я не могу найти. Вот это сравнение:

    Вложения:

    • SL vs. RL.JPG
      SL vs. RL.JPG
      Размер файла:
      139,4 КБ
      Просмотров:
      837
  7. Пломбир Новичок

    • Новичок
    Рег.:
    09.04.2018
    Сообщения:
    35
    Симпатии:
    25
    Репутация:
    0
    Оффлайн
    Не нашел описание настроек лилы:
    - FPU Reduction
    - Puct
    - SlowMover
    - Go Nodes Visits
    Кто знает, что это и как работает?
  8. Sergey1983 Учаcтник

    • Участник
    Рег.:
    03.04.2018
    Сообщения:
    126
    Симпатии:
    14
    Репутация:
    1
    Оффлайн
    Rom, Crem как я понимаю при изменении версии движка тюнинг нужно перезапускать?
  9. crem Учаcтник

    • Участник
    Рег.:
    24.11.2016
    Сообщения:
    140
    Симпатии:
    203
    Репутация:
    14
    Оффлайн
    Надо было только когда размер сети поменялся (с 6x64 на 10x128), а так с каждой версией не надо.

    FPU Reduction — (first play urgency) при выборе какую ветку дерева расширить, уменьшает оценку веток, в которых ещё не были. Идея в том, чтобы меньше заглядывать в поддеревья, которые изначально кажутся плохими, чтобы сэкономить время для более глубокого рассмотрения хороших поддеревьев. Для Leela Zero (Go) это подняло уровень игры. Для шахмат то помогает, то нет, поэтому сейчас по умолчанию отключено. Для корневого узла такое не делается в любом случае.

    Сpuct — (polynomial upper confidence trees) это коэффициент из поиска методом монте-карло, показывает насколько быстро при исследовании поддеревьев дерева оценка value head становится более важной чем оценка policy head. Чем меньше значение, тем раньше. Большое значение способствует более широким деревьям, низкое — более глубоким.

    SlowMover — это код, скопированный из Stockfish. Чем больше, тем дольше он думает над ходом (но за часами в любом случае следит).

    Go Nodes Visits — если включено, то при использовании uci команды "uci nodes 10000" (посчитать 10000 узлов), в число этих 10000 будет включены также узлы, которые уже есть в кэше. Иначе только новые узлы.
    Alhimik88, svoitsl, Rom и ещё 1-му нравится это.
  10. Sergey1983 Учаcтник

    • Участник
    Рег.:
    03.04.2018
    Сообщения:
    126
    Симпатии:
    14
    Репутация:
    1
    Оффлайн
    Турнир в ChessMasters Гастингс рейтинг 2400+, присутствуют такие персонажи как Карпов и Капабланка,v0.7 GPU, сеть 159, Nps ~3000, Geforce Gtx 1080

    Вложения:

    Rom нравится это.
  11. Rom Старожил

    • Участник
    • Старожил
    Рег.:
    12.02.2012
    Сообщения:
    645
    Симпатии:
    276
    Репутация:
    28
    Оффлайн
    Может лучше создать турнир против персонажей с фиксированными рейтингами? А то неизвестно как играет тот же "Карпов" сотоварищи.
  12. Sergey1983 Учаcтник

    • Участник
    Рег.:
    03.04.2018
    Сообщения:
    126
    Симпатии:
    14
    Репутация:
    1
    Оффлайн
    Rom, результат скорее всего будет аналогичен Вене, у самых сильных персонажей как я понял не проставлен рейтинг.
  13. Rom Старожил

    • Участник
    • Старожил
    Рег.:
    12.02.2012
    Сообщения:
    645
    Симпатии:
    276
    Репутация:
    28
    Оффлайн
    Я имею ввиду Квини, Фридрих, сам Чессмастер и др. А те у которых не проставлен рейтинг могут быть слабее. Рейтинг у них потому и не проставлен, потому что это тематические персонажи и играют они бог весть как.
  14. Sergey1983 Учаcтник

    • Участник
    Рег.:
    03.04.2018
    Сообщения:
    126
    Симпатии:
    14
    Репутация:
    1
    Оффлайн
    Рейтинг турнира как я писал 2400 и выше, это тоже о чём-то говорит.
  15. Rom Старожил

    • Участник
    • Старожил
    Рег.:
    12.02.2012
    Сообщения:
    645
    Симпатии:
    276
    Репутация:
    28
    Оффлайн
    Персонажам типа "Карпова", "Капабланки" и другим выставлены условные рейтинги - ровно 2700 или ровно 2800. Это видно в настройках. Значит они не тестировались толком.
  16. Sergey1983 Учаcтник

    • Участник
    Рег.:
    03.04.2018
    Сообщения:
    126
    Симпатии:
    14
    Репутация:
    1
    Оффлайн
    Rom, у меня турниры дело настроения, но как нибудь сделаю
  17. Rom Старожил

    • Участник
    • Старожил
    Рег.:
    12.02.2012
    Сообщения:
    645
    Симпатии:
    276
    Репутация:
    28
    Оффлайн
    Ещё один турнир в Чессмастере.
    Соперники у Лилы почти топ-игроки, с рейтингами от 2500 до 2650. Тем не менее она выигрывает! На двух тредах CPU, при скорости всего 70 поз/сек!
    Контроль 40 минут на партию. Сеть 160:

    w160  R2500-2650.jpg

    Больше всего мне понравилась партия против Джинкс:

    Sergey1983 и svoitsl нравится это.
  18. Пломбир Новичок

    • Новичок
    Рег.:
    09.04.2018
    Сообщения:
    35
    Симпатии:
    25
    Репутация:
    0
    Оффлайн
    Да, у меня Лила на длинных контролях сегодня в клочья рвала Stockfish 17 уровня (40 минут на игру). Но блиц ей не дается - даже 5+3 проигрывает почти все. Отлично играет дебют, но дальше зевает на большой глубине или слишком переоценивает эндшпиль. CPU core i5 3GHz, 3 потока, 2GB кеша.
    Насколько я помню, AlphaZero тоже на коротких контролях хуже играла.
  19. svoitsl Учаcтник

    • Участник
    Рег.:
    06.01.2018
    Сообщения:
    374
    Симпатии:
    91
    Репутация:
    7
    Оффлайн
    Только из за довольно не плохой производительности 4 TPU эти короткие контроли заканчивались уже блицем, и судя по их картинке уже начиная с 1 с на ход A0 уже выигрывала, в нашем случае это можно ожидать при 1 мин на ход
  20. Пломбир Новичок

    • Новичок
    Рег.:
    09.04.2018
    Сообщения:
    35
    Симпатии:
    25
    Репутация:
    0
    Оффлайн
    В списке пользователей, которые участвуют в обучении сети, на первом месте стоит "Google Colab" с 52 тысячами игр в сутки O_o Что это? Мощности гугла как-то присоединили? Официально?
  21. svoitsl Учаcтник

    • Участник
    Рег.:
    06.01.2018
    Сообщения:
    374
    Симпатии:
    91
    Репутация:
    7
    Оффлайн
    так ведь все хорошо описано, присоединяйтесь
  22. crem Учаcтник

    • Участник
    Рег.:
    24.11.2016
    Сообщения:
    140
    Симпатии:
    203
    Репутация:
    14
    Оффлайн
    У гугла есть проект Colab, который позволяет бесплатно использовать GPU для исследовательских целей.
    Любой может настроить себе такой аккаунт для генерации тренировочных игр, инструкция тут: https://github.com/glinscott/leela-...-Tesla-K80-GPU-for-free-(Google-Colaboratory)

    В инструкции "Google Colab" — это имя пользователя по умолчанию, которое можно сменить, но часто народ не меняет.

    Гугл в курсе, что так делают и не против, но просит, чтобы один человек не заводил более одного Google Colab аккаунта.
    Пломбир нравится это.
  23. svoitsl Учаcтник

    • Участник
    Рег.:
    06.01.2018
    Сообщения:
    374
    Симпатии:
    91
    Репутация:
    7
    Оффлайн
    Но я что то не понял где это делать, менять аккаунт, пришлось использовать "метод научного тыка" - он и на сей раз осечки не дал :)
    Гугл застрянет на строке с именем, надо его отредактировать через меню зайти в ноутбук
  24. svoitsl Учаcтник

    • Участник
    Рег.:
    06.01.2018
    Сообщения:
    374
    Симпатии:
    91
    Репутация:
    7
    Оффлайн
    Кажется понятно почему регресс, многие обучают с помощью версии 0.6.... вот отсюда и регресс.
    Непонятно правда другое, почему такое неправильное обучение заносится в сеть?
  25. Sergey1983 Учаcтник

    • Участник
    Рег.:
    03.04.2018
    Сообщения:
    126
    Симпатии:
    14
    Репутация:
    1
    Оффлайн
    Поначалу то ведь был прогресс(с тех пор как вышла v0.7),значит регресс не из за этого, тем более что часть людей должна была перейти на v0.7.
  26. svoitsl Учаcтник

    • Участник
    Рег.:
    06.01.2018
    Сообщения:
    374
    Симпатии:
    91
    Репутация:
    7
    Оффлайн
    так и есть, почти все перешли на 0.7, остались только те, вносил маленький вклад в обучение, но вот пришел один с 0.6 заняв второе место по числу партий и возможно исказил результат. Но почему сеть принимает игры от 0.6 ? Это пока не понятно.
  27. crem Учаcтник

    • Участник
    Рег.:
    24.11.2016
    Сообщения:
    140
    Симпатии:
    203
    Репутация:
    14
    Оффлайн
    Забыли отключить. Где-то час назад починили.
    (Когда отключали, сделали чтобы нельзя было пользоваться client.exe 0.7, но lczero.exe 0.6 запущенный через client.exe 0.7 всё ещё мог работать)

    А тем временем LcZero обыгрывает гроссмейстера на личессе: https://lichess.org/@/LeelaChessOfficial/tv
  28. Sergey1983 Учаcтник

    • Участник
    Рег.:
    03.04.2018
    Сообщения:
    126
    Симпатии:
    14
    Репутация:
    1
    Оффлайн
    То есть партии от v0.6 сайт больше не будет принимать?
  29. crem Учаcтник

    • Участник
    Рег.:
    24.11.2016
    Сообщения:
    140
    Симпатии:
    203
    Репутация:
    14
    Оффлайн
    Да, уже должен не принимать.
  30. Boroda Новичок

    • Новичок
    Рег.:
    12.01.2018
    Сообщения:
    62
    Симпатии:
    8
    Репутация:
    0
    Оффлайн
    А какой рейтинг у гросса?
  31. Boroda Новичок

    • Новичок
    Рег.:
    12.01.2018
    Сообщения:
    62
    Симпатии:
    8
    Репутация:
    0
    Оффлайн
    Забавно, как в последней результативной партии, сначала Лила теряет ферзя, затем ферзя зевает гросс)).
  32. admd Заблокирован

    • Новичок
    • Заблокирован
    Рег.:
    14.06.2017
    Сообщения:
    71
    Симпатии:
    30
    Репутация:
    5
    Нарушения:
    30
    Оффлайн
    Пингвин все-таки выиграл 1 партию у Leela с контролем 15 секунд на партию.
    Причем LeelaChessOfficial просто просмотрела тактику 2 раза:
    https://lichess.org/jCcbfpB8/black#137
    На личессе так же есть исходная (необученная) версия Leela https://lichess.org/@/leela-chess
    и средней силы версия, с которой можно играть - https://lichess.org/@/LeelaChess
  33. nn Заблокирован

    • Участник
    • Заблокирован
    • Старожил
    Рег.:
    25.03.2007
    Сообщения:
    1.459
    Симпатии:
    3.109
    Репутация:
    124
    Нарушения:
    31
    Оффлайн
    Leela играет в старом романтическом атакующем стиле, как играли раньше Морфи и Андерсен. Например, в одной из партий со мной

    Rom, sovaz1997 и Пломбир нравится это.
  34. crem Учаcтник

    • Участник
    Рег.:
    24.11.2016
    Сообщения:
    140
    Симпатии:
    203
    Репутация:
    14
    Оффлайн
    Уже не против. :)
    Домашние компы разработчиков перестают успевать тренировать, поэтому решили, что без покупки отдельного компьютера для тренировки не обойтись.
    Задонатить можно тут: gofundme.com/leela-chess-zero
    svoitsl нравится это.
  35. Sergey1983 Учаcтник

    • Участник
    Рег.:
    03.04.2018
    Сообщения:
    126
    Симпатии:
    14
    Репутация:
    1
    Оффлайн
    Сделал турнир в ChessMasters LcZero и пять топ игроков, на GPU(GTX 1080), сеть 187, 40 минут на игру, Nps ~3000.

    Вложения:

    admd и Rom нравится это.

Поделиться этой страницей