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

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

  1. Undying Учаcтник

    • Участник
    Рег.:
    31.08.2016
    Сообщения:
    858
    Симпатии:
    382
    Репутация:
    9
    Оффлайн
    С первым согласен. И из человеческого опыта известно, что в тяжелых позициях важен счет, а понимание мало полезно. И проблема не только в неточностях при защите, а еще и в том, что в худших позициях нейронка не по делу агрессивна. Это хорошо было видно в турнире по позиции из последней партии матча Карлсен - Каруана. Там кучу партий Лила проиграла белыми, когда соперник ничего не хотел, но Лила вместо того, чтобы просто стоять, сама вскрывала игру и быстро загибалась.

    А вот насчет второго так сразу не могу вспомнить партии, которые Лила бы не выиграла из-за недосчета до таблиц. Раньше Лила просто часто тупила в эндшпилях. Не видела простейшие блокады и т.п. Мне кажется это из-за того, что она при обучении не доигрывает партии до мата. Но в последних версиях вроде бы это пофиксили. Давно не замечал подобного. В эндшпилях большая проблема в том, что Лила их систематически переоценивает. И соответственно идет в ничейный эндшпиль вместо того, чтобы продолжать катать в миттельшпиле.
  2. Alhimik88 Новичок

    • Новичок
    Рег.:
    10.06.2009
    Сообщения:
    61
    Симпатии:
    22
    Репутация:
    1
    Оффлайн
    Да также косячит в эндшпилях. Это особенно заметно на оценках, когда Leela 30x пишет +6,5 в позиции, где Stockfish показывает нули. Не похоже, что доступ к таблицам себя оправдывает. Все упирается в низкую скорость перебора вариантов, и, соответственно, низкую эффективность работы с таблицами. Может недавнее решение с улучшением масштабируемости вкупе с увеличение мощностей и контроля времени поможет. Но пока в эндшпилях Leela далеко позади топовых AB движков.
  3. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    8.872
    Симпатии:
    2.061
    Репутация:
    84
    Адрес:
    Москва
    Оффлайн
    Это личная терминология автора поста, которую он считает удобной. Некоторое время назад я пытался переубедить его в пользу более общепринятой систематизации, но не преуспел :)
    Launder нравится это.
  4. Launder Новичок

    • Новичок
    Рег.:
    25.11.2016
    Сообщения:
    87
    Симпатии:
    22
    Репутация:
    1
    Оффлайн
    У меня, конечно, опыта мало, но лично мне кажется, что в том и прелесть шахмат, что понимание, и счёт, идут рука об руку... Ведь когда считаешь, что важно?:confused: Любая идея, любой микротемп, влияет на позицию в целом и нужно быстро ПОНЯТЬ, увидеть, при каких условиях, что-то может сработать. Ну, конечно, тут интуиция в помощь, но как говориться, "на глазок" можно здорово попасть:gigi:

    По-поводу эндшпилей, вопрос, у меня было впечатление, что, как раз АльфаЗироу, очень хорошо понимает, во-первых какие эндшпили ей полезны, а во-вторых очень точно умеет их реализовывать... Или мне только кажется?
    Может кто-нибудь в курсе, был ли подробный и досканальный разбор партий, первого матча, по которому действительно можно понять сильные и слабые стороны Альфы?...
    hornet нравится это.
  5. Launder Новичок

    • Новичок
    Рег.:
    25.11.2016
    Сообщения:
    87
    Симпатии:
    22
    Репутация:
    1
    Оффлайн
    Ну это, уж извините, из серии, раз мы что-то определить не можем, значит этого нет. Конечно, для человека понимание - фундаментальная вещь, без которой мы вообще не сможем играть.

    Это не особенность, это, как раз и есть "понимание". Почему Вы не ходите в стартовой позиции h2-h4? Потому, что видите, не считая, что этот ход создаёт совсем не то "поле возможностей", которое Вам нужно.
    По сути, машина понимания не имеет, но имеет костыли, разной степени эффективности, способные это понимание заменить...
  6. Crest Админ, МГ

    • Команда форума
    Рег.:
    04.02.2006
    Сообщения:
    49.645
    Симпатии:
    10.102
    Репутация:
    434
    Адрес:
    Москва, Россия
    Оффлайн
    Начинаю обсуждать новый матч в соц. сетях. Вот c такого поста:

    Салют, народы!
    Бог шахмат снова выглянул к нам с Небес.
    На этот раз Стокфиш был бит еще более эффектно, чем раньше. И партий в открытом доступе оказалось гораздо больше, чем ранее. В том числе и проигранные Богом...
    Я потихоньку смотрю партии, составляю впечатления.
    Но ряд вопросов напрашивается сходу.
    Почему АльфаЗеро опять играл со стареньким Стокфиш-8, несмотря на то, что даже самые отсталые любители шахмат используют на своих компах Стокфиш-9, а на самом деле появилась и более продвинутая программа Стокфиш-10?
    Почему устроители матча не взяли для верности старенькую Рыбку или Фриц-2? [​IMG]:)
    Почему эти матчи проводятся в закрытом режиме, без прямой трансляции? Ведь именно прямые трансляции стали нормой для всех турниров и матчей, в том числе и в компьютерном мире. Чего боялись устроители?
    Какое железо было у Стокфиша? Какие были его настройки? Какая дебютная база?
    Мы все (и даже скептик я) готовы поверить в то, что Альфазеро значительно превосходит обычные шахматные движки. Осталось всего ничего - сделать всё правильно и честно.
    Без маленьких футбольных хитростей и рекламных трюков.
  7. Polarity Новичок

    • Новичок
    Рег.:
    23.04.2018
    Сообщения:
    77
    Симпатии:
    17
    Репутация:
    0
    Оффлайн
    Ещё 15 секунд добавления на ход. Ещё нужно статью написать + пройти ревью этой статьи.
  8. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    Я думаю, у Google есть 1000 лишних ПК и 4000 лишних TPU для проведения этого матча за 6 часов
  9. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    8.872
    Симпатии:
    2.061
    Репутация:
    84
    Адрес:
    Москва
    Оффлайн
    На этот вопрос уже ответил Мэтью Лаи, один из разработчиков. Вкратце - ввиду отсутствия машины времени на январь 2018 года, когда игрались эти партии, пришлось взять самую новую версию Стокфиша на тот момент.
  10. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    Да, но все доступные 210 партий - это против Stockfish 8, не против dev-версии
  11. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    8.872
    Симпатии:
    2.061
    Репутация:
    84
    Адрес:
    Москва
    Оффлайн
    Потому что цель Гугла - не участие в спортивном соревновании, а научный эксперимент. Для которого, кстати, важно постоянство условий - поэтому раз уже начали матч с 8-й версией, то с ней и все дальнейшие измерения проделывали.
    Возможно, партии против 10-го Стокфиша играются в лабораториях ДипМайнда сейчас. Когда их (через год) опубликуют, возмущённая общественность будет вопрошать на форумах: а почему не с текущей, 12-й или 15-й версией?
    Undying, Edwards и Polarity нравится это.
  12. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    8.872
    Симпатии:
    2.061
    Репутация:
    84
    Адрес:
    Москва
    Оффлайн
    Про дебютную базу в статье точно написано. Например, в одной из серий пользовались табиями из турнира TCEC. В другой - дебютной базой Brainfish.
    Аппаратная конфигурация описана вот в этой статье, стр.20: https://deepmind.com/documents/260/alphazero_preprint.pdf
  13. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    WinPooh нравится это.
  14. wentille Учаcтник

    • Участник
    Рег.:
    31.08.2017
    Сообщения:
    400
    Симпатии:
    737
    Репутация:
    39
    Нарушения:
    3
    Оффлайн
    Вот это мне непонятно. В прошлый раз из ста партий Альфа выиграл 28, сейчас из 1000 он должен был выиграть 280 (чтобы не уронить реноме), а он выиграл 155 и шесть проиграл.
    Мне кажется, результаты снижаются.
  15. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    Погрешность измерений, разные настройки
  16. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    Кстати, здесь еще ведь слабая сетка играет (ей примерно 100 пунктов не хватает до 11248)

    Lc0 обыгрывает последнюю версию Stockfish: https://lichess.org/BDvenOqf
  17. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    8.872
    Симпатии:
    2.061
    Репутация:
    84
    Адрес:
    Москва
    Оффлайн
    Общий счёт как-то совсем не в её пользу...
  18. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    Ну так и сетка на 100 пунктов слабее, чем 11248)
    У меня пока ощущение, что на этой сети Лила даже выше своих возможностей играет (может, сказывается новая версия движка v0.19.2)
  19. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    Stockfish опять вляпался, похоже


    В итоге позиционно выиграл, но попался на вечный шах
  20. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    Что там под контролем, повезло просто))
    Stockfish 4 пешки Лиле рисовал - это просто проиграно было
  21. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    Проиграл он в миттельшпиле. Во всяком случае, Leela этот перевес видела задолго до того, как SF что-то понимать начал.

    Позиция на 72-м ходу выиграна за белых, Stockfish сам у себя ее выиграет.
    https://lichess.org/KLbZ7F6R
    pavelgttfj8 нравится это.
  22. FlashNeo Учаcтник

    • Участник
    Рег.:
    23.11.2018
    Сообщения:
    119
    Симпатии:
    82
    Репутация:
    1
    Оффлайн
    Наоборот
  23. Launder Новичок

    • Новичок
    Рег.:
    25.11.2016
    Сообщения:
    87
    Симпатии:
    22
    Репутация:
    1
    Оффлайн
    Ну вот что значит признаки? Не нужно признаков. Вот как раз признаки могут быть верными, а могут быть нет. А понимание либо есть, либо нет. Элементарный вопрос, как и на многие самоочевидные вопросы ответить достаточно сложно (кстати, вот интересно, почему).
    Приведу пример. Для самых начальных этапов изучения шахмат, иногда даются задания вида, из разряда, определите где поставлен мат? Вот как они определяют? Смотрят доску, отыскивают короля, ищут для него угрозу, и смотрят, есть ли возможность от ней уйти/закрыться/ликвидировать объект угрозы. Но откуда они взяли ИМЕННО эти признаки? Ведь, если докапаться, возможно, найти другие. А можно и не найти. Но нас это не колышет. Почему? Да потому, что мы ПОНИМАЕМ, что такое мат и это понимание даёт нам возможность отыскать признаки указывающие на данное явление.
    То есть ПРИЗНАКИ РОЖДАЮТСЯ ИЗ ПОНИМАНИЯ, а не наоборот. И вот, чем сложнее ситуация/позиция, тем сложнее сказать, какие это признаки могут быть. Более того, понимание тоже бывает не полным, это взгляд, точка зрения, где какие-то контуры мы видим и понимаем (что они означают) ясно, а что-то видим не чётко и у нас есть только представление, что это может быть (и на что может повлиять).
    Я хочу сказать, что то, что мы можем дать машине, исходит из нашего собственного понимания, а вот откуда берётся понимание, и вообще, что оно означает - вопрос не то что не простой, в привычных нам способах описывать, те или иные явления, возможно у нас средств выразить, откуда мы это берём, практически нет. Всё вроде бы и просто и более-менее ясно, и, в тоже время, очень уж многогранно: мы просто смотрим на позицию, изучаем её, и получаем о ней некое представление. На основании чего мы перемещаемся от одного нюанса позиции, к другому - на основании той логики, которую нам удалось выявить в позиции. А как мы делаем предположения о закономерностях? на основании приблизительного рассчёта. На основании него мы может определить стоит ли нам капать в ту или иную сторону, или итак ясно, или ясно, что ничего не ясно, но пока мы это отложим. все эти решения именно что идут из понимания, представления о происходящем... смотрим - представляем - изучаем, смотрим что получилось, подводим наши представления(понимание) до некоей законченности и формируем новые вопросы... как-то так
    Вопрос сложен именно тем, что с одной стороны, вроде многое в нём достаточно очевидно, но какой-то ясной методологии, описывающей происходящии в нас процессы, позволяющие адекватно воспринимать происходящее на доске, у нас нет, и только смутно ощущается, в некоторых ситуациях, в ней потребность. Пока же, когда мы видим какой-то яркий и необычный вариант, мы говорим - вот додумался же! Какой красивый и интересный план, какие интересные перспективы, наши ассоциации рулят! :sman:То есть, получается углядеть нечто, позволяет нам, буквально всё! Само изучение, даёт маяки для дальнейшего движения... Но вот каким образом даёт - самым разнообразным. На основании чего мы что-то берём, а что-то откладываем - на основании уже имеющихся представлений. Вот как раз h2-h4, первый ход, почему отбрасывается? заведомо не видим в нём смысла. а в чём видим? в захвате центра, например. каким способом? наиболее эффективным и для нас удобным, одновременно.
    то есть мы обращаемся к нашему опыту и накладываем на текущую позицию, и смотрим, что из этого получается. но опыт наш, это не записанные где-то там в дата-центре закономерности, мы, скорее, из текущей ситуации, имеет под рукой некий багаж, который позволяет быстро оценить происходящее. То есть, мы смотрим такой-то ход, и у нас сразу множество представлений, о возможных вариантах развития борьбы... И ведь эти представления - работа нашей живой мысли, происходящей здесь и сейчас, когда мы что-то полагаем значимым и перспективным, а что-то - нет, интересное - изучаем, иное - отбрасываем... (до поры до времени)
    И как, при этом, используется весь наш предыдущий опыт, как он влияет на обновления спектра "интересного" в позиции - большой вопрос, ответ на который, как мне кажется, на данный момент, имеет только самые общие представления и очертания...
  24. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    Stockfish 3-ю подряд позиционно проигрывает. Нет, он не проиграл, но стоит в плохой позиции белыми. Может, ему опять повезет, конечно, но отрицать хорошую игру Lc0/AZ в миттельшпиле нельзя.
  25. Launder Новичок

    • Новичок
    Рег.:
    25.11.2016
    Сообщения:
    87
    Симпатии:
    22
    Репутация:
    1
    Оффлайн
    Нет у них есть признаки, которые ЗАМЕНЯЮТ ИМ ПОНИМАНИЕ.
  26. Undying Учаcтник

    • Участник
    Рег.:
    31.08.2016
    Сообщения:
    858
    Симпатии:
    382
    Репутация:
    9
    Оффлайн
    У Гугла может и есть. А вот у шахматного подразделения DeepMind вряд ли.
  27. Undying Учаcтник

    • Участник
    Рег.:
    31.08.2016
    Сообщения:
    858
    Симпатии:
    382
    Репутация:
    9
    Оффлайн
    Так другой терминологии просто нет. Вы предлагали вместо этого использовать термины Альфа-Бета движок и MCTS движок. Но это не о том вообще. Уже появился Komodo MCTS использующий MCTS, но не использующий нейронку. А при желании можно и нейронку совместить с Альфа-Бета. Способ оценки позиции и выбора ходов-кандидатов (алгоритмический или нейронный) и способ построения дерева перебора (Альфа-Бета или MCTS) это ортогональные вещи.
    --- добавлено: 8 дек 2018, опубликовано: 8 дек 2018 ---
    Оптимистичная оценка объективно ничейных эндшпилей для Лилы обычное дело. Но чтобы Лила не выиграла объективно выигранный эндшпиль или проиграла объективно ничейный эндшпиль я давно не видел. Поэтому утверждение о том, что Лила далеко позади топовых AB движков в эндшпилях неверно. Оценивать она может неправильно, но ходы делает сильнейшие.
  28. FlashNeo Учаcтник

    • Участник
    Рег.:
    23.11.2018
    Сообщения:
    119
    Симпатии:
    82
    Репутация:
    1
    Оффлайн
    Да пусть попросят китайского друга с 384 потоками - нас всех и такой Сток устроит.
    На обучении Лейлы основной донатер по сыгранным партиям, Стоку провел огромное число тестов - и зажмет для такого матча?

    Но это просто нежелание проводить честное, независимое состязание.
  29. Limavr Начинающий

    • Начинающий
    Рег.:
    28.12.2017
    Сообщения:
    8
    Симпатии:
    1
    Репутация:
    0
    Оффлайн
    В прошлый раз из отобранных для пиара 100 партий, АЗ выиграл 25 (белыми) и проиграл 3 (черными). А всего из 1300 он выиграл 267б+19ч и проиграл 51ч+5б. Вот таблицы:


    [​IMG]
    [​IMG]
  30. wentille Учаcтник

    • Участник
    Рег.:
    31.08.2017
    Сообщения:
    400
    Симпатии:
    737
    Репутация:
    39
    Нарушения:
    3
    Оффлайн
    В прошлый раз для пиара отобрали 10 партий. Обо всем остальном рассказывали: всего было сыграно 100 партий и т.д.
    То, что сейчас они вспомнили еще про 1200 означает, что завтра они еще про 10 000 тысяч партий могут вспомнить.
  31. Комсюк народный модератор

    • Заслуженный
    • Ветеран
    Рег.:
    17.07.2011
    Сообщения:
    12.476
    Симпатии:
    12.667
    Репутация:
    856
    Нарушения:
    13
    Оффлайн
    не проиграла, а выиграла 3 чёрными, там все таблицы со стороны А0
    Launder нравится это.
  32. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    8.872
    Симпатии:
    2.061
    Репутация:
    84
    Адрес:
    Москва
    Оффлайн
    Так на тот момент (декабрь 2017) и было сыграно 100 партий. Следующие 1200 датированы серединой января 2018, написано же английским по белому.
  33. FlashNeo Учаcтник

    • Участник
    Рег.:
    23.11.2018
    Сообщения:
    119
    Симпатии:
    82
    Репутация:
    1
    Оффлайн
    Вообще надо сказать, что Стокфиш - это вершина костыльно-ориентированного программирования. В него добавили уже многие и многие десятки эвристик для открывшихся слабых мест, и это делает его сильнее. Только Комодо научился запирать ладьи - и хопа, держите лавину патчей с исправлением. Многие не прошли, но парочка дала прирост в ЭЛО, там +1 ЭЛО, там +2 - и так по зернышку растем. И более того, я уверен, что после изучения партий с А0 найдутся еще патчи, которые усилят Стокфиш и устранят те или иные пробелы. А А0 в начальном виде - это идеология чистого кода что ли.

    Но в реальной жизни побеждают костыли, а не чистый код. Так что за Стокфиш!
  34. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    8.872
    Симпатии:
    2.061
    Репутация:
    84
    Адрес:
    Москва
    Оффлайн
    [​IMG]
    KEV81 нравится это.
  35. sovaz1997 Учаcтник

    • Участник
    Рег.:
    30.08.2016
    Сообщения:
    549
    Симпатии:
    78
    Репутация:
    3
    Оффлайн
    FlashNeo, в Stockfish активно используется методика упрощения кода. Код Stockfish, кстати, очень чистый и хорошо документированный. Если бы там были "костыли", Stockfish уже давно бы перешёл в стадию стагнации.

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