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

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

  1. Rooost Новичок

    • Новичок
    Рег.:
    23.08.2017
    Сообщения:
    85
    Симпатии:
    132
    Репутация:
    13
    Адрес:
    г. Хабаровск
    Оффлайн
    Ну раз вы так считаете, то всё, расходимся. А глупое шахматное сообщество, включая chess.com, chess24 и ко, пусть дальше верят в эту революцию.

    Хочу добавить, что ДипМайнд занимается созданием ИИ, а не шахматного движка. Шахматы - это лишь ещё одна платформа, где можно проверить возможности инструмента. Фабриковать результаты для них просто бессмысленно, потому что победить Стокфиш - это не самоцель.
  2. Комсюк народный модератор

    • Заслуженный
    • Ветеран
    • Заблокирован
    Рег.:
    17.07.2011
    Сообщения:
    16.452
    Симпатии:
    19.480
    Репутация:
    1.111
    Нарушения:
    124
    Оффлайн
    после Слюсарчука все на измене
  3. ШахматыЭтоДиагноз Учаcтник

    • Участник
    Рег.:
    31.03.2017
    Сообщения:
    2.463
    Симпатии:
    3.019
    Репутация:
    149
    Оффлайн
    Дело в том, что Сток и без книги 8-м ходом первыми тремя линиями предлагает только теоретические продолжения. Ход Фе1 не рассматривает вообще.
    Конечно, нет. :)
    Не обратил внимания. Но счет был больше чем 20 полуходов.
  4. 4547 Учаcтник

    • Участник
    Рег.:
    15.11.2016
    Сообщения:
    1.732
    Симпатии:
    1.693
    Репутация:
    135
    Оффлайн
    В детстве я читал книжки по ИИ. Приводился интересный пример как похожий ИИ "убил" одну пошаговую космическую стратегию. Суть его победы была в том, что соперники-игроки действовали по человеческим шаблонам - создавали стандартные флотилии с флагманом и крейсерами. ИИ после обучения на тестовых сражениях создал флот из множества мелких кораблей. Это оказалось более эффективной стратегией в той игре. После его победы правила игры видоизменили и этот ИИ вновь нашел другую "пробоину" в игре.
    Отличие от обычных программ в том, что в стокфиш и другие программы уже заложены человеком оценки позиций. Если, например, найти "дыры" - варианты где оценочная функция движка дает сбой, он будет проигрывать раз за разом. Альфазеро по идее должен сам вырабатывать критерии и оценки позициий, которые могут отличаться от общепринятых... Это достаточно любопытно.
    Любитель_ и просроченый_кмс нравится это.
  5. Rom Учаcтник

    • Участник
    Рег.:
    12.02.2012
    Сообщения:
    634
    Симпатии:
    267
    Репутация:
    27
    Оффлайн
    Существует дерево перебора на основе метода Монте-Карло. Но выбор перспективных ходов и оценка позиций на этом дереве доверена нейросети. Вот схема объясняющая как работает нейросеть (6 Мб). Она для игры Го, но в принципе особой разницы нет:
    https://applied-data.science/static/main/res/alpha_go_zero_cheat_sheet.png

    Грубо говоря, нейросеть это аппроксимация нелинейной функции, где на вход в качестве переменной мы подаём позицию которую надо оценить, в цифровом виде, а на выходе получаем оценку этой позиции и список ходов с оценкой перспективности каждого хода. Если проще, то нейросеть это огромный набор коэффициентов на которые мы перемножаем исходную позицию в несколько этапов, а как результат получаем указанные выше оценки.
    felagund08 и DraggonZ нравится это.
  6. ZenDisciple Начинающий

    • Начинающий
    Рег.:
    07.12.2017
    Сообщения:
    7
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Для качественного анализа в сложных позициях с несбалансированными и острыми позициями необходимо не менее 28-30 полуходов
  7. Комсюк народный модератор

    • Заслуженный
    • Ветеран
    • Заблокирован
    Рег.:
    17.07.2011
    Сообщения:
    16.452
    Симпатии:
    19.480
    Репутация:
    1.111
    Нарушения:
    124
    Оффлайн
    как ты думаешь, какую глубину наберёт Сток за минуту на 64-ёх ядрах?
    Как дети малые :)
    Чем вы проверяете?
    Это всё равно, что я ошибки буду искать у Карлсена без компа
    DraggonZ, Vladruss, sovaz1997 и ещё 1-му нравится это.
  8. ШахматыЭтоДиагноз Учаcтник

    • Участник
    Рег.:
    31.03.2017
    Сообщения:
    2.463
    Симпатии:
    3.019
    Репутация:
    149
    Оффлайн
    Ну, это все-таки не минута на личессе. :)
    Зададим вопрос по другому - кто-нибудь проверял качество игры Стокфиша в этом матче на похожем железе? Потому что у меня есть подозрения, что 8.Фе1 он не выберет ни на 64, ни на 640 ядрах.
  9. pavelgttfj8 Учаcтник

    • Участник
    Рег.:
    07.12.2017
    Сообщения:
    265
    Симпатии:
    77
    Репутация:
    2
    Оффлайн
    Нет конечно. Статистика тут вообще не причём. Работает это так: Есть некая базовая нейросеть АльфаЗеро. Её можно натравить на го, шашки, шахматы, на что угодно. Далее она начинает "писать" программу под ту игру, которую ей дали, зная только правила. Без учителя, самостоятельно. Как она это делает, никто не знает. Точнее знает только приблизительно - методами машинного обучения. Код получившийся "программы" никто разобрать не может. Потому что зеро её написала. И вот уже этот продукт, эта "программа" и играет в шахматы. На обучение нужно минимум на 2-3 порядка больше мощности чем на машину, которая, собственно, будет играть.
    Никаких альфа-бета отсечений или метода монте-карло там нет, там совершенно другие принципы. Только слои нейронов, нейроны, связи между ними и их веса. Такая архитектура универсальна, она может повторить любой алгоритм, но создает именно тот, который наиболее эффективен для конкретной игры. Он очень много понимает, гораздо более интеллектуален чем примитивное альфа-бета отсечение.
    Конечно нет, эти тупые движки хоть вечность будут думать на самом мощном железе, всё равно не отыщут правильный ход. Вы это сами прекрасно знаете. Алгоритмы не те. Не могут мыслить абстракциями, например "закрытая позиция", "открытая позиция", "пешечная цепь", а нейросети прекрасно могут. Они закрытые пешечные цепи решат, сразу поняв что это ничья, и крепости разрушат и этюды решат.
    tesla, DraggonZ и Комсюк нравится это.
  10. Mustitz Заслуженный

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    30.09.2006
    Сообщения:
    3.401
    Симпатии:
    885
    Репутация:
    26
    Адрес:
    Киев
    Оффлайн
    Железо разное. Не сложно купить 10 компьютеров и объединить их в одну вычислительную сеть. Можно ли запустить Stockfish на всех сразу? Думаю, никто таким не занимался. Был кластер рыбки, но в этом направлении ничего не слышно. Или совсем просто купить несколько GPU, на каждой которой 2000 вычислителей. Никто же их не использует? Потому что обычные алгоритмы распараллеливания там не работают :)

    Для нейросетей используются специальные платы, например. И их невозможно использовать под обычные вычисления.
  11. Комсюк народный модератор

    • Заслуженный
    • Ветеран
    • Заблокирован
    Рег.:
    17.07.2011
    Сообщения:
    16.452
    Симпатии:
    19.480
    Репутация:
    1.111
    Нарушения:
    124
    Оффлайн
    для качественного - очень мало
    В адвансе новый фетиш - 50, но мы не про адванс
    Можно экстраполировать ситуацию... допустим СЮ, на своих 28-ми даст 5 минут на ход
    Вот если будут коренные различия, тогда можно о чём-то говорить
  12. ZenDisciple Начинающий

    • Начинающий
    Рег.:
    07.12.2017
    Сообщения:
    7
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Там они ему под хеш-таблицу дали только 1гиг, вот куда он будет складывать дерево вариантов с 64 процессоров чтобы их оценить?
  13. Комсюк народный модератор

    • Заслуженный
    • Ветеран
    • Заблокирован
    Рег.:
    17.07.2011
    Сообщения:
    16.452
    Симпатии:
    19.480
    Репутация:
    1.111
    Нарушения:
    124
    Оффлайн
    это не подозрение, а заблуждение :)
    Сток может выбрать всё что не ухудшает оценку, если нет того, что улучшает
    —- добавлено: 7 дек 2017 —-
    ну и я ставлю 1 гиг...
    И шо? Никогда глыбины 50 не видел, Вы думаете?
  14. Mustitz Заслуженный

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    30.09.2006
    Сообщения:
    3.401
    Симпатии:
    885
    Репутация:
    26
    Адрес:
    Киев
    Оффлайн
    pavelgttfj8, как я понимаю, правила игры таки надо запрограммировать самостоятельно. Также запрограммирован алгоритм игры: играем из текущего положения стотысяч партий до мата. Делаем ход, где процент побед выше. А вот нейросеть отвечает больше на вопрос, какие ходы включать.

    Кстати, такой алгоритм должен легко определять крепости :)
  15. pavelgttfj8 Учаcтник

    • Участник
    Рег.:
    07.12.2017
    Сообщения:
    265
    Симпатии:
    77
    Репутация:
    2
    Оффлайн
    Логично, потому что если их не запрограммировать, игра будет не определена.
    "Запрограмированные" правила игры и говорят нейросети, в какую игру ей надо играть, в шахматы, шашки, шахматные поддавки и т.д.
  16. Camon14 Хранитель традиций

    • Заслуженный
    • Ветеран
    Рег.:
    28.05.2012
    Сообщения:
    18.069
    Симпатии:
    10.367
    Репутация:
    663
    Нарушения:
    16
    Оффлайн
    Вспоминается история с ДипБлю, там тоже была контора серьёзная, а комп разобрали на шуруБы. :D А вообще шахматисты параноики, столько недоверия, а я верю гуглу, понятно, что проект ещё сырой , но они его доработают. И будет 5000Эло. Как уже говорили, даже полный подсчёт шахмат не должен убить игру ( Это я о словах Демченко, который беспокоится), да шахматы уже сейчас расписаны до ничьей в основных вариантах! И ничего , играем . Просто вопрос читерства станет ещё острее, и романтики станет меньше , поэтому будет оток игроков большой. Кубик-Рубика вон до сих пор собирают, но уже на время, вот будушее классических шахмат это видимо блиц и быстрые.
  17. Yury_Solomatin Учаcтник

    • Участник
    Рег.:
    25.01.2017
    Сообщения:
    865
    Симпатии:
    503
    Репутация:
    24
    Оффлайн
    Репортаж chess.com

    AlphaZero, новый проект Google, громит Stockfish в матче из 100 партий

    Накамура назвал матч "нечестным", указав, что для оптимальной работы Stockfish этот движок должен использовать дебютную книгу. Он не думает, что с дебютной книгой Stockfish выиграл бы матч, но разрыв в счете был бы намного меньше. "Я уверен, что сам Господь бог не набрал бы против Stockfish 75 процентов очков белыми без какой-либо форы".

    Петер-Хайне Нильсен: "Мне всегда было любопытно, что было бы, если бы более разумный вид высадился на нашей планете и показал нам свое искусство шахматной игры. Кажется, теперь я знаю, каково это".
    Современный искусственный интеллект идет от чего-то вроде шахмат к проблемам, достойным нобелевских премий и даже большего. Думаю, нам повезло, что они решили потратить четыре часа на шахматы, но последствия этого открытия куда более значительны".
  18. Rooost Новичок

    • Новичок
    Рег.:
    23.08.2017
    Сообщения:
    85
    Симпатии:
    132
    Репутация:
    13
    Адрес:
    г. Хабаровск
    Оффлайн
  19. Camon14 Хранитель традиций

    • Заслуженный
    • Ветеран
    Рег.:
    28.05.2012
    Сообщения:
    18.069
    Симпатии:
    10.367
    Репутация:
    663
    Нарушения:
    16
    Оффлайн
    https://ru.m.wikipedia.org/wiki/Искусственная_нейронная_сеть Пробежался по этой статейке. Нейтронная сеть "обобщает" как человек. А это ведёт к логическим ошибкам. Если все женщины - люди, то это не значит, что все люди -женщины. А нейтронная сеть может прийти к такому выводу имхо. Так что в конкретике где-то будет ошибаться Альфагозеро.
  20. ШахматыЭтоДиагноз Учаcтник

    • Участник
    Рег.:
    31.03.2017
    Сообщения:
    2.463
    Симпатии:
    3.019
    Репутация:
    149
    Оффлайн
    При анализе на зевки Сток в партии нашел ошибки только за себя родимого (64-ядерного!), но при этом ни одной за черных. О чем тут еще говорить?
    А СЮ уже высказал свое недоумение игрой Стокфиша.
  21. Комсюк народный модератор

    • Заслуженный
    • Ветеран
    • Заблокирован
    Рег.:
    17.07.2011
    Сообщения:
    16.452
    Симпатии:
    19.480
    Репутация:
    1.111
    Нарушения:
    124
    Оффлайн
    а мы высказали недоумение мнением СЮ

  22. Carter Новичок

    • Новичок
    Рег.:
    07.05.2010
    Сообщения:
    85
    Симпатии:
    75
    Репутация:
    0
    Оффлайн
    Скепсис насчет того, захочет ли "Стокфиш" пойти 8. Qe1, напрасен.

    Произвел проверку на своем скромном ноуте, где стоит обычный "Стокфиш" без доработок. Результат: примерно через час появилось 8. Qe1 и попало в первую линию. На данный момент позиция стоит уже 1 час 18 минут, и 8. Qe1 - первая линия.
    Undying, DraggonZ, sovaz1997 и 3 другим нравится это.
  23. Camon14 Хранитель традиций

    • Заслуженный
    • Ветеран
    Рег.:
    28.05.2012
    Сообщения:
    18.069
    Симпатии:
    10.367
    Репутация:
    663
    Нарушения:
    16
    Оффлайн
    Комсюк, ты видел, Альфа пока отдаёт предпочтение с4 и Кф3 играет. Так что я обогнал своё время своими статьями :)
    mikola7 и Комсюк нравится это.
  24. ШахматыЭтоДиагноз Учаcтник

    • Участник
    Рег.:
    31.03.2017
    Сообщения:
    2.463
    Симпатии:
    3.019
    Репутация:
    149
    Оффлайн
    На глубине скольких полуходов он отдает предпочтение Фе1?
  25. Rom Учаcтник

    • Участник
    Рег.:
    12.02.2012
    Сообщения:
    634
    Симпатии:
    267
    Репутация:
    27
    Оффлайн
    Нейросеть это скорее интуиция, так называемая "игра рукой". Она конечно может ошибаться. Для проверки интуиции существует перебор вариантов. Те самые 80 тысяч позиций в секунду, которые упоминали ранее.
  26. Camon14 Хранитель традиций

    • Заслуженный
    • Ветеран
    Рег.:
    28.05.2012
    Сообщения:
    18.069
    Симпатии:
    10.367
    Репутация:
    663
    Нарушения:
    16
    Оффлайн
    Маленький перебор пока, я и то дальше считаю :D
    mikola7 нравится это.
  27. Комсюк народный модератор

    • Заслуженный
    • Ветеран
    • Заблокирован
    Рег.:
    17.07.2011
    Сообщения:
    16.452
    Симпатии:
    19.480
    Репутация:
    1.111
    Нарушения:
    124
    Оффлайн
    это она ещё моих адванс-партий не видела
    mikola7 и Camon14 нравится это.
  28. Rom Учаcтник

    • Участник
    Рег.:
    12.02.2012
    Сообщения:
    634
    Симпатии:
    267
    Репутация:
    27
    Оффлайн
    80 тысяч позиций в секунду? Уважаю :)
  29. Challenger Spy Технический специалист

    • Команда форума
    Рег.:
    28.01.2011
    Сообщения:
    4.679
    Симпатии:
    2.587
    Репутация:
    222
    Оффлайн
    Простите, дружище, я далек от темы. Но, как ни крути, выходит, что на равном железе Сток затащил бы без шансов? :)
  30. Комсюк народный модератор

    • Заслуженный
    • Ветеран
    • Заблокирован
    Рег.:
    17.07.2011
    Сообщения:
    16.452
    Симпатии:
    19.480
    Репутация:
    1.111
    Нарушения:
    124
    Оффлайн
    Вообще-то, если у этого монстра нет тайм-менеджмента, то пусть себе думает минуту на ход, а Стоку надо дать час на партию и короткую дебютную книжку (ходов 6-8) , а также шестифигурки (и то необязательно)
    Глядишь, и за ничью можно побороться даже на разном железе
    —- добавлено: 7 дек 2017 —-
    ну, если твои подсчёты про тысячекратное преимущество в железе верны, то это 10 удвоений (1028)
    а это 500 пунктиков :)
  31. Котэ Восьмикратный чемпион подъезда

    • Участник
    • Старожил
    Рег.:
    29.04.2010
    Сообщения:
    987
    Симпатии:
    392
    Репутация:
    12
    Оффлайн
    А почему во всех статьях указанно, что альфазеро "тренировалась" 4 часа?
    В статье разработчиков я увидел следующие цифры:

    Chess Shogi Go

    Mini-batches 700k 700k 700k

    Training Time 9h 12h 34h

    Training Games 44 million 24 million 21 million

    Thinking Time 800 sims 800 sims 800 sims

    40 ms 80 ms 200 ms

    Поправьте меня пожалуйста если я что-то путаю, так как не хотелось бы пребывать в заблуждении:)

    ______________________________________

    Кажется я сам понял в чем дело. Альфазеро играла сама с собой 9 часов. Но ее сила игры превысила силу игры стокфиша уже через 4.

    [​IMG]
    Но учитывая как медленно растет график последние часы , похоже, что на самом деле чтобы превзойти сток у альфы ушло приблизительно часов 5 с половиной, ведь последний сток на 40 пунктов сильнее участвовавшего в эксперименте.
    Также ввиду того, что в конце график выравнивается, по всей видимости эта нейросеть не заиграет сильнее если будет "тренироваться" не 9 часов, а месяц.
  32. Rom Учаcтник

    • Участник
    Рег.:
    12.02.2012
    Сообщения:
    634
    Симпатии:
    267
    Репутация:
    27
    Оффлайн
    Четыре часа чтобы превзойти Стока, девять часов на всю тренировку:
    "In chess, AlphaZero outperformed Stockfish after just 4 hours"
    Котэ нравится это.
  33. Carter Новичок

    • Новичок
    Рег.:
    07.05.2010
    Сообщения:
    85
    Симпатии:
    75
    Репутация:
    0
    Оффлайн
    Сейчас уже не скажу: надо заново ставить. (Я на работе: заглядываю в движок лишь бегло.) Зато могу добавить, что Qe1 долго провисел на первой строчке, а где-то через два часа за первую стали бороться Qe2 и c3, ходы более человеческие (но насколько помню, Стокфиш с них не начинал, а в начале рассматривал h3 или Nc4...). Но думаю, час за часом это может меняться: в такой спокойной позиции есть целый ряд равноценных ходов и разные планы.

    У Стокфиша долго была идея (к двум с половиной часам съехавшая на третью линию) сыграть Qe1 и затем Qc3 - имхо, чисто компьютерная затея.
  34. Neo94 Заблокирован

    • Участник
    • Заблокирован
    Рег.:
    15.11.2014
    Сообщения:
    434
    Симпатии:
    144
    Репутация:
    -10
    Нарушения:
    31
    Оффлайн
    Алгоритм мощный, перспективный, и все же неравные условия - это неравные условия.
    Стокфиш вряд ли бы выиграл партию, но все же не проиграл бы половину черными с дебютной книгой и нормальным тайм-менеджментом.

    Впрочем, думаю, что вскоре такой матч будет, и Стокфиш таки проиграет (но черными вряд выиграет больше одной партии из 50). После этого многое будет ясно, и все скептики признают...
  35. Jadn Заслуженный

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    10.05.2006
    Сообщения:
    3.570
    Симпатии:
    2.457
    Репутация:
    51
    Оффлайн
    Ага, именно поэтому Альфузеру запускали на 45 Терафлопах. По-моему, очевидно, что на равном железе Сток выиграл бы, иначе незачем было бы Гуглу обеспечивать такой гандикап. Но разница, вероятно, не очень велика, и это всё рано очень круто, учитывая, что это универсальный алгоритм, пригодный, по заявлениям, для любой игры, и обучавшийся шахматам совсем недолго.
    Challenger Spy нравится это.

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