Leela Chess Zero (lc0): турниры, партии, рейтинги...

Discussion in 'Машинное отделение' started by vasa, 10 Oct 2018.

  1. TopicStarter Overlay

    vasa Опытный перворазрядник

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    35.306
    Likes Received:
    17.601
    Репутация:
    586
    Location:
    Ростов-на-Дону
    Оффлайн
  2. Kirill_A Новичок

    • Новичок
    Member Since:
    10.05.2018
    Message Count:
    37
    Likes Received:
    22
    Репутация:
    0
    Оффлайн
    Обсуждаем нейронную сеть Leela Chess Zero (lc0) в этой отдельной теме.

    [​IMG]

    Сейчас идет турнир движков TCEC Cup 2018 (нокаут система, 32 движка, контроль времени 30 минут + 10 секунд добавка на ход), в котором Лила (Lc0 18.11248) вчера играла с сильным движком Laser (Elo 3241). В каждом матче программы играют друг с другом по 8 партий (4 дебюта белыми и черными). Лила выиграла 5 - 3 (4 ничьих и две победы) и попала в 1/8 финала. Со Стокфиш она может встретиться в полуфинале (судя по турнирной сетке).

    Победа черными во французской защите очень впечатлила: здесь Лила увидела инициативу и возрастающее преимущество черных раньше чем СFish (клон Стокфиша, работающий там для анализа на 88 ядрах и использующий базы семифигурных окончаний).

    —- добавлено: 10 Oct 2018, опубликовано: 10 Oct 2018 —-
    А здесь впечатляющая победа белыми: тоже во французской защите.

    Undying likes this.
  3. Kirill_A Новичок

    • Новичок
    Member Since:
    10.05.2018
    Message Count:
    37
    Likes Received:
    22
    Репутация:
    0
    Оффлайн
    В блиц-турнире среди движков от Chess.com: CCC 2: Blitz Battle (5|2) Лила одержала сегодня впечатляющую победу черными на над очень сильным движком Ethereal в сицилианской защите.

    sovaz1997 likes this.
  4. sovaz1997 Учаcтник

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Не переоценивайте Ethereal :)
    Да, это сильный движок. Но он все еще слабее Fire. И, понятное дело, слабее большой тройки. А вот большую тройку Лила тоже регулярно обыгрывает. Вот совсем недавно:

    Kirill_A likes this.
  5. WinPooh В.М.

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн

  6. sovaz1997 Учаcтник

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    WinPooh, мы знаем, что Лила зевает тактику :)
    Но в дебюте Лила играет лучше всех. Увы, нельзя просто взять и обойти AB-движки, развивающиеся с 50-х годов прошлого века по всем параметрам за год.
  7. Kirill_A Новичок

    • Новичок
    Member Since:
    10.05.2018
    Message Count:
    37
    Likes Received:
    22
    Репутация:
    0
    Оффлайн
    Скорее в миттельшпиле. Хотя наверно еще рано говорить о "лучше всех", но уже почти на самом высоком уровне уровне сильнейших программ, на развитие приципа игры которых ушло более 40 лет. А недостатки в эндшпиле (как этот грубый эндшпильный зевок в партии с Stockfish в равной позиции) - как я понимаю, могут быть устранены благодаря дальнейшей тренировке в игре сама с собой. Сейчас для тренировки нейросети 20x играется более миллиона партий в день (благодаря помощи людей, которые решили помочь обучению). Чем больше партий играется для обучения, тем скорее нейросеть сможет стать сильнее, но конечно для этого нужны большие мощности. И каждый человек может помочь процессу обучения нейросети совершенно бесплатно, для этого можно, следуя указаниям по ссылке ниже, либо дать Лиле играть тренировочные партии на своем компьютере с хорошей видеокартой (GPU), либо, что еще лучше и быстрее - с помощью удаленного вычислительного сервиса Google Collab (бесплатно, но видиокарта слабее чем доступные в Google Cloud) или Google Cloud (бесплатно в течении около 20 дней, где можно выбрать мощную видеокарту Tesla V100, которая может генерировать около 15000 игр для обучения Лилы в день.)

    Здесь все написано подробно и с инструкциями, как можно бесплатно помочь развитию Лилы: http://blog.lczero.org/2018/10/contributing-to-leela-chess-zero.html

    А здесь можно смотреть на результаты процесса обучения: http://lczero.org/
  8. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    Эзереаль для Лилы более неудобный соперник, чем Файр. А Комодо в блиц неожиданно слабо играет. Намного хуже Эзереаля.
  9. sovaz1997 Учаcтник

    • Участник
    Member Since:
    30.08.2016
    Message Count:
    649
    Likes Received:
    120
    Репутация:
    3
    Оффлайн
    Не знаю, почему Komodo так играет в CCCC, но в блице он должен быть как минимум на 50-100 пунктов сильнее, чем Fire. Еще успеет на 4-3 места выбраться, если нет багов в новой версии, конечно)
  10. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    Откуда уверенность что сильнее? Комодо когда-то демонстрировал хорошую игру в блиц? Комодо занимает свое место. Принципиально оно за второй круг не изменится.

    Скорей всего проблема в том, что Комодо склонен к авантюрной игре. А в блиц не успевает досчитать последствий, поэтому много некорректных жертв делает. И сильные движки его за это наказывают - 1 очко из 8 против первой восьмерки набрал.
  11. sovaz1997 Учаcтник

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

    http://fastgm.de/60-0.60.html
    http://www.ipmanchess.yolasite.com/i9-7980xe.php
    http://fastgm.de/10min.html
    http://fastgm.de/60min.html

    Во всяком случае, ыся большая тройка вместе с Komodo во всех рейтинг—листах обходит Ethereal, Fire и других движков из десятки.

    А склонен он к некорректным жертвам или нет - показывают тесты. Думаю, либо Komodo имеет баг в CCCC, либо баг с отображением таблицы мест, либо просто пока не везёт.
  12. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    Значит что-то в последней версии испортили. Играет Комодо просто слабо.
  13. Мобуту спаситель нации

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    15.02.2006
    Message Count:
    6.953
    Likes Received:
    4.028
    Репутация:
    143
    Location:
    Заир
    Оффлайн
    То есть пока получается, что в честном бою нейросеть играет на 200 пунктов слабее Стокфиша. А громить и крушить получалось только в условиях, когда Стокфиш сидел без дебютной книжки, с отключённой рандомностью выбора, на слабом железе против суперкомпьютера и в отсутствие внешних наблюдателей за матчем.
    WinPooh likes this.
  14. Rom Старожил

    • Участник
    • Старожил
    Member Since:
    12.02.2012
    Message Count:
    645
    Likes Received:
    276
    Репутация:
    28
    Оффлайн
    talkchess.com
    Undying likes this.
  15. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    200 пунктов разницы откуда взялись? Для такой разницы Стокфиш должен 1 партию из 2 у Лилы выигрывать. А в реальности счет со Стокфишем у Лилы почти равный. Плюс к этому Лила намного хуже оптимизирована под тензорные процессоры, чем Альфа Зеро - 30 тысяч против 80 тысяч нод в секунду. И не факт, что нейронка Лилы уже достигла уровня нейронки Альфа Зеро.
    sovaz1997 and Kirill_A like this.
  16. Rom Старожил

    • Участник
    • Старожил
    Member Since:
    12.02.2012
    Message Count:
    645
    Likes Received:
    276
    Репутация:
    28
    Оффлайн
    Согласно,
    https://docs.google.com/spreadsheet...XUSx1jyUrgVEcj8DNLKA7-urBw/edit#gid=763519729
    разница от 60 до 130 пунктов на достаточно комплиментарном для Лилы соотношении железа. Прошу только учесть, что вопрос масштабирования на большие контроли в настоящий момент недостаточно прояснен, вследствие наличия противоречивых данных.
  17. WinPooh В.М.

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    Тут дело не в масштабировании, а в алгоритмике. Что такое вечный шах, понимал движок Фриц-2 на однопоточном Пентиуме-166 МГц. А Лила не понимает... Продолжаю утверждать, что поиск в ширину имеет фундаментальные недостатки, которые не позволяют точно играть в эндшпиле. Пока алгоритм UCT не будет модернизирован, так и будем наблюдать комедии, как в 14-партии с Ethereal из TCEC Cup.
    В отличие от Го, шахматы гораздо чаще требуют игры единственными ходами. Что совершенно не укладывается в парадигму UCT "взять и всё усреднить".
  18. WinPooh В.М.

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    Проблема ещё в том, что обучением это не лечится.
    "Здесь вечный шах!" - скажет нейросеть.
    "Ерунда, он только в одном варианте, сейчас усредним!" - скажет UCT-поиск.
  19. Undying Учаcтник

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

    Другой путь использовать разные нейронки для разных стадий партии. Возможно если пообучать нейронку на ферзевых эндшпилях, то проблема решится. Тут возникает технический вопрос. Есть ли какие-то проблемы с переключением с одной нейронной сети на другую по ходу счета вариантов.
  20. Kirill_A Новичок

    • Новичок
    Member Since:
    10.05.2018
    Message Count:
    37
    Likes Received:
    22
    Репутация:
    0
    Оффлайн
    Не так. Во-первых AlphaZero тренировалась на гораздо большем количестве партий, Лила пока не достигла этого уровня тренировки.
    Во-вторых в случае Лилы нужно различать версии сетей:

    Версия сети, которая сейчас играет в турнирах: 11248. Она относится к поколению сетей 10x (тест 10x).
    Ее протестированный уровень игры Ело отстает от уровня Stockfish 9 на 25 очков. См. здесь:
    https://docs.google.com/spreadsheet...XUSx1jyUrgVEcj8DNLKA7-urBw/edit#gid=763519729

    Но это - старая сеть 10x, ее уже не обучают больше.
    Теперь тренируют сети поколения 20x, в которых исправлены некоторые ошибки и введены некоторые изменения для обучения. Ожидается, что в будущем после достаточного обучения уровень игры Стокфиш будет превзойден. Но даже старая 10x сеть 11248 впечатляет своими результатами в турнирах несмотря на свои недостатки и ошибки.
    sovaz1997 and Undying like this.
  21. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    Мне кажется не в усреднении проблема. А именно в том, что нейронке кажется, что если у короля много пространства, то вечного шаха не будет.
  22. Rom Старожил

    • Участник
    • Старожил
    Member Since:
    12.02.2012
    Message Count:
    645
    Likes Received:
    276
    Репутация:
    28
    Оффлайн
    Я думаю одно другому не противоречит. Масштабирование можно и за счет алгоритмики улучшать.

    Интересно, не поможет ли использование хэш-таблиц. У Лилы их сейчас нет. В своё время и обычные движки отвратительно играли эндшпили, но после введения хэш-таблиц, в 70-е годы, очень сильно подтянули свою игру в окончаниях. Оно и понятно, ведь в эндшпилях позиций в общем-то немного, потому что позиции очень часто повторяются.
  23. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    Помню, что при обучении Альфа Зеро выяснилось, что после какого-то количества партий прогресс останавливается. Количество партий на котором обучается Лила с этим пороговым значением как соотносится?
  24. Rom Старожил

    • Участник
    • Старожил
    Member Since:
    12.02.2012
    Message Count:
    645
    Likes Received:
    276
    Репутация:
    28
    Оффлайн
    Интересно, что a/b движки используют плавный (сглаженный) переход между миттельшпильной и эндшпильной оценкой.
  25. Undying Учаcтник

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

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    Нейросетевые люди обычно считают, что универсальная сеть размера A+B будет лучше, чем две сети для частных случаев размеров A и B. Она должна сама придумать внутри себя правильное сглаживание, и получить более разнообразный набор паттернов для распознавания.
    Классический пример - разные диалекты английского в распознавалках речевого ввода. Обычно строят сразу одну сеть на все варианты произношения (включая также мужчин, женщин и шепелявых).
  27. Rom Старожил

    • Участник
    • Старожил
    Member Since:
    12.02.2012
    Message Count:
    645
    Likes Received:
    276
    Репутация:
    28
    Оффлайн
    Я читал об этом в чате, кажется от кого-то из разработчиков, так что клясться не буду :).

    У обычных движков хэш-таблицы черезвычайно эффективны. В своё время авторы программы Chess, после добавления хэш-таблиц, получили 5-кратную прибавку в скорости набора глубины в эндшпильных позициях (возможно это одна из причин, почему они обошли программу Каисса, у которой хэш-таблиц не было до конца 80-х).

    У современных a/b движков хэш-таблицы помогают как минимум в трёх случаях. Во-первых, как очевидно, при повторении позиции. Во-вторых при сортировке - ходы из хэш-таблицы рассматриваются в первую очередь. В третьих, при распараллеливании - именно через хэш-таблицу треды обмениваются информацией.

    a/b движкам не нужно хранить все позиции в памяти, поскольку они всё рано не хранят в памяти всё дерево перебора, а только цепочку лучших ходов. А вот при использовании MCTS, напротив, нужно хранить в оперативке всё дерево перебора. Именно поэтому Лиле требуется 40 гигабайт оперативки для часового анализа.
    —- добавлено: 15 Oct 2018 —-
    Ох, не знаю... Не купим ли мы подобную универсальность за счет уменьшения общего максимума силы игры в каждой стадии партии по отдельности. Нужны эксперименты.
    Undying likes this.
  28. Undying Учаcтник

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

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    15.02.2006
    Message Count:
    6.953
    Likes Received:
    4.028
    Репутация:
    143
    Location:
    Заир
    Оффлайн
    А где можно увидеть полноценный матч Лилы со Стокфишем на TCEC или ещё в каком-нибудь независимом месте? Пока что вижу, что Лила на равных борется с неким движком Ethereal. А он слабее Стокфиша на 200 пунктов.
  30. Rom Старожил

    • Участник
    • Старожил
    Member Since:
    12.02.2012
    Message Count:
    645
    Likes Received:
    276
    Репутация:
    28
    Оффлайн
    Есть данные, что Лила играет сильнее против сильных соперников, а со слабыми не очень. Своеобразный contempt наоборот. С другой стороны есть данные, что Лила плохо играет на длинных контролях. Так что давайте просто подождем следующего сезона TCEC и посмотрим.
  31. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    У Лилы тайминг очень плохой. В дебюте и раннем миттельшпиле она играет очень быстро, тратя в разы меньше времени, чем соперник. Возможно проблема в этом.
    —- добавлено: 15 Oct 2018 —-
    Лиле надо дожать Эзереаль и тогда следующего сезона ждать не нужно будет. Файр Лила должна обыграть более уверенно. А в полуфинале как раз матч со Стокфишем будет.
  32. WinPooh В.М.

    • Команда форума
    Member Since:
    13.02.2006
    Message Count:
    9.494
    Likes Received:
    3.126
    Репутация:
    95
    Location:
    Москва
    Оффлайн
    Да был же только что микро-матч со Стокфишем в рапид на CCC.
    +0-2=6, если я правильно помню.
  33. Undying Учаcтник

    • Участник
    Member Since:
    31.08.2016
    Message Count:
    1.316
    Likes Received:
    566
    Репутация:
    15
    Оффлайн
    12 партий было (2 на предварительном этапе, 10 на втором). Лила дважды проиграла. Плюс один раз не выиграла из-за неумения пользоваться эндшпильными таблицами. Чему новая версия уже научилась.
  34. Rom Старожил

    • Участник
    • Старожил
    Member Since:
    12.02.2012
    Message Count:
    645
    Likes Received:
    276
    Репутация:
    28
    Оффлайн
    В тестах по ссылке используется фиксированное время на ход.
  35. Undying Учаcтник

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

Share This Page