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

Discussion in 'Машинное отделение' started by grizly, 6 Dec 2017.

  1. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    С первым согласен. И из человеческого опыта известно, что в тяжелых позициях важен счет, а понимание мало полезно. И проблема не только в неточностях при защите, а еще и в том, что в худших позициях нейронка не по делу агрессивна. Это хорошо было видно в турнире по позиции из последней партии матча Карлсен - Каруана. Там кучу партий Лила проиграла белыми, когда соперник ничего не хотел, но Лила вместо того, чтобы просто стоять, сама вскрывала игру и быстро загибалась.

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

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

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    Это личная терминология автора поста, которую он считает удобной. Некоторое время назад я пытался переубедить его в пользу более общепринятой систематизации, но не преуспел :)
    Launder likes this.
  4. Launder Новичок

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

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

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

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

    • Команда форума
    Member Since:
    05.02.2006
    Message Count:
    57.267
    Likes Received:
    21.177
    Репутация:
    632
    Location:
    Москва, Россия
    Оффлайн
    Начинаю обсуждать новый матч в соц. сетях. Вот c такого поста:

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

    • Новичок
    Member Since:
    24.04.2018
    Message Count:
    77
    Likes Received:
    17
    Репутация:
    0
    Оффлайн
    Ещё 15 секунд добавления на ход. Ещё нужно статью написать + пройти ревью этой статьи.
  8. sovaz1997 Учаcтник

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Я думаю, у Google есть 1000 лишних ПК и 4000 лишних TPU для проведения этого матча за 6 часов
  9. WinPooh В.М.

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    На этот вопрос уже ответил Мэтью Лаи, один из разработчиков. Вкратце - ввиду отсутствия машины времени на январь 2018 года, когда игрались эти партии, пришлось взять самую новую версию Стокфиша на тот момент.
  10. sovaz1997 Учаcтник

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Да, но все доступные 210 партий - это против Stockfish 8, не против dev-версии
  11. WinPooh В.М.

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    Потому что цель Гугла - не участие в спортивном соревновании, а научный эксперимент. Для которого, кстати, важно постоянство условий - поэтому раз уже начали матч с 8-й версией, то с ней и все дальнейшие измерения проделывали.
    Возможно, партии против 10-го Стокфиша играются в лабораториях ДипМайнда сейчас. Когда их (через год) опубликуют, возмущённая общественность будет вопрошать на форумах: а почему не с текущей, 12-й или 15-й версией?
    Undying, Edwards and Polarity like this.
  12. WinPooh В.М.

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    Про дебютную базу в статье точно написано. Например, в одной из серий пользовались табиями из турнира TCEC. В другой - дебютной базой Brainfish.
    Аппаратная конфигурация описана вот в этой статье, стр.20: https://deepmind.com/documents/260/alphazero_preprint.pdf
  13. sovaz1997 Учаcтник

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    WinPooh likes this.
  14. wentille Ветеран

    • Ветеран
    Member Since:
    31.08.2017
    Message Count:
    5.242
    Likes Received:
    7.260
    Репутация:
    126
    Оффлайн
    Вот это мне непонятно. В прошлый раз из ста партий Альфа выиграл 28, сейчас из 1000 он должен был выиграть 280 (чтобы не уронить реноме), а он выиграл 155 и шесть проиграл.
    Мне кажется, результаты снижаются.
  15. sovaz1997 Учаcтник

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Погрешность измерений, разные настройки
  16. sovaz1997 Учаcтник

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Кстати, здесь еще ведь слабая сетка играет (ей примерно 100 пунктов не хватает до 11248)

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

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    Общий счёт как-то совсем не в её пользу...
  18. sovaz1997 Учаcтник

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

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Stockfish опять вляпался, похоже


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

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Что там под контролем, повезло просто))
    Stockfish 4 пешки Лиле рисовал - это просто проиграно было
  21. sovaz1997 Учаcтник

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Проиграл он в миттельшпиле. Во всяком случае, Leela этот перевес видела задолго до того, как SF что-то понимать начал.

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

    • Участник
    Member Since:
    23.11.2018
    Message Count:
    587
    Likes Received:
    309
    Репутация:
    2
    Оффлайн
    Наоборот
  23. Launder Новичок

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

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Stockfish 3-ю подряд позиционно проигрывает. Нет, он не проиграл, но стоит в плохой позиции белыми. Может, ему опять повезет, конечно, но отрицать хорошую игру Lc0/AZ в миттельшпиле нельзя.
  25. Launder Новичок

    • Новичок
    Member Since:
    25.11.2016
    Message Count:
    89
    Likes Received:
    22
    Репутация:
    1
    Оффлайн
    Нет у них есть признаки, которые ЗАМЕНЯЮТ ИМ ПОНИМАНИЕ.
  26. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    У Гугла может и есть. А вот у шахматного подразделения DeepMind вряд ли.
  27. Undying Учаcтник

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

    • Участник
    Member Since:
    23.11.2018
    Message Count:
    587
    Likes Received:
    309
    Репутация:
    2
    Оффлайн
    Да пусть попросят китайского друга с 384 потоками - нас всех и такой Сток устроит.
    На обучении Лейлы основной донатер по сыгранным партиям, Стоку провел огромное число тестов - и зажмет для такого матча?

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

    Member Since:
    29.12.2017
    Message Count:
    24
    Likes Received:
    5
    Репутация:
    0
    Оффлайн
    В прошлый раз из отобранных для пиара 100 партий, АЗ выиграл 25 (белыми) и проиграл 3 (черными). А всего из 1300 он выиграл 267б+19ч и проиграл 51ч+5б. Вот таблицы:


    [​IMG]
    [​IMG]
  30. wentille Ветеран

    • Ветеран
    Member Since:
    31.08.2017
    Message Count:
    5.242
    Likes Received:
    7.260
    Репутация:
    126
    Оффлайн
    В прошлый раз для пиара отобрали 10 партий. Обо всем остальном рассказывали: всего было сыграно 100 партий и т.д.
    То, что сейчас они вспомнили еще про 1200 означает, что завтра они еще про 10 000 тысяч партий могут вспомнить.
  31. Комсюк народный модератор

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    17.07.2011
    Message Count:
    19.250
    Likes Received:
    23.518
    Репутация:
    1.270
    Нарушения:
    27
    Оффлайн
    не проиграла, а выиграла 3 чёрными, там все таблицы со стороны А0
    Launder likes this.
  32. WinPooh В.М.

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    Так на тот момент (декабрь 2017) и было сыграно 100 партий. Следующие 1200 датированы серединой января 2018, написано же английским по белому.
  33. FlashNeo Учаcтник

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

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

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    [​IMG]
    KEV81 likes this.
  35. sovaz1997 Учаcтник

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

Share This Page