Comments 10
А если ещё глянуть, как ИИ внутри считает - и никакие шахматы будут не нужны для доказательств имитации.
Добрый день, спасибо за ваш пост.
Я безусловно глубоко признателен коллегам @Durham и @Alice_point_py (если они не являются одним лицом - в этом случае признателен дважды) - за предпринятые усилия подвигающие нас в изучении возможностей LLM в применении к логическим задачам.
Да, мы разные люди — у каждого своё мнение.
Насколько я понимаю, компания Meanotek представляемая автором комментария и автором статьи на которую он ссылается (и в которой видимо принимал непосредственное участие) занимается продвижением и продажей ИИ-моделей, так что некая предвзятость позиции их понятна.
Вы говорите, что статья — просто маркетинг. Но это не совсем справедливо:
критиковать можно, но лучше по делу, а не переходя на личности. Указывать на возможную предвзятость полезно, но не повод считать работу "заказной". У многих IT-компаний, особенно после всплеска интереса к ИИ, есть научные команды. Мы сначала делали статью ради науки — понять, куда движется технология. Только потом она стала кейсом.
Теперь по существу. Если я правильно понимаю, ваше мнение строится на такой базе:
1. Я слабый шахматист
2. Я сыграл 3 партии
2.1. В 2 партиях рокировка сделана с ошибкой / непозволена
2.2.. В 3-й был зевнут ферзь
И вывод — что модель очень слабый игрок, который даже сути правил не понимает
По рокировке: Так действительно не должно быть, но дело в том, что модель
"запрещать" что-либо не может. Я сейчас проверила и выяснилось, что проблема была в
скрипте шахматной доски на сайте — сайт с 2022 года часто обновляли, и никто не проверял как работает демка, поэтому она немного "подпортилась". Спасибо, что заметили — мы это уже починили. Еще отмечу, что рокировка, это база шахмат, она есть почти в каждой партии.
Если бы модель её не понимала, это противоречило бы самой сути ИИ - следовать шаблонам. Ведь ход королём в дебюте без рокировки огромная редкость.
По зевку: тут отвечу просто, да, модель ошибается. Её уровень — 1279 ELO. На таком уровне люди регулярно зевают фигуры и это не определяет еще победителя.
Еще момент, вы делаете вывод на основании трёх партий, но этого маловато, чтобы судить о способностях модели. LLM учатся иначе, чем люди. Представьте: вас посадили за шахматы без объяснений. Не сказали ни про правила, ни про цели, ни про разные виды игры (быстрые, классические, Фишера, шветка). И сразу посадили играть в блиц (3 минуты на партию). Сколько партий вы проиграли бы, прежде чем начать понимать? 100? 1000? И это при том, что человек может проиграть одну партию и сесть продумать варианты, представить их, построить гипотезу. Или даже каждый ход. А модель обученная методом, где идет прямое прогнозирование ледующего слово, в каком-то смысле, не имеет возможности рассуждать. Они должны действовать сразу, не думая, а как уже умеют. В таких условиях данные размером в 1–3 миллиона - это лишь маленькая крупица.
Отсюда частично и возникает вывод:
Проблема не в архитектуре, а в данных
И это не вопрос формальности, как вы пишете у себя, а серьезная проблема над которой работает много исследователей.
А что базу данных LiChess не взяли для анализа? У них она в открытом доступе и они все партии дают которые у них на платформе сыграны. Вопрос по обучению можно решить через первоначалный анализ Столкфишем (если вдруг надо).
Есть еще один вопрос, который спорный, но думаю обсуждаемый. Проблема яйца и курицы в шахматах. Объясню - стоит ли учить думать на тех задачах в которых есть разработанная методика для достижения результата. Как пример - методика постановки мата ферзем. Нужно ли думать куда пойти ферзем, если можно просто взять и поставить мат пусть и использовав большее количество ходов? Как раз в Вашей статье там есть пример постановки мата ферзем. Как там реализован механизм? Размышлениями или методикой?
Отыграл партию для интереса... Нууу... Интересно, но непонятно. Сразу - у меня рейтинг пусть и не крутой, но стабильно 2100-2300 на LiChess. Вот то что увидел
В самом движке нет превращения пешки. Почему не использовали готовые движки которые разрешены для коммерческого использования? Велосипед то зачем изобретать?
Дебют и миттельшпиль партии играл неплохо, потом пошел в разнос после зевка. Я создал проблемную позицию и ИИ стал отдавать фигуры
Нет планирования. От слова совсем. А куда шахматы без планирования? Это база. Особенно в эндшпиле.
Выводы делать не хочу, но даже когда я делал тупой алгоритм случайного хода, я и то туда ввел несколько моментов которые позволяют создавать задачи с рандомным но не самым глупым ходом ходить. На днях собираюсь писать статью для Хабра как раз как я сделал первувю бету платформы для обучения шахматам. Могу скинуть ссылку в личку как напишу. От критики не откажусь.
Нет планирования.
...
В самом движке нет превращения пешки.
собственно о том речь - подобные "модели" вообще ничего не знают ни о планировании ни даже о правилах игры.
Капабланка научился играть в возрасте 4 лет наблюдая игру отца с приятелем. Здесь модель тоже "пронаблюдала" сколько-то сотен или тысяч позиций и более-менее повторяет ходы. Она не знает что нужно планировать - она просто представляет что в похожей позиции люди часто ходят так. Зачем? это не её дело :)
С правилами ещё хуже - если среди партий использованных для тренировки ни одна не содержала превращения пешки - откуда модель об этом узнает. Или хуже того - ни одна из партий точно не содержала рокировки под шахом или через битое поле - модель никогда не сможет догадаться что такие ходы невалидны.
Все зависит от того как учить.
Кроме того про превращение я про другое говорил - моя пешка осталась пешкой, хотя в записи она превратилась в ферзя (даже выбора не было фигуры).
А про объем обучения - Вы тут тоже маху дали...
Прежде чем минусовать задайтесь вопросом
Я написал какой рейтинг у меня, Вы же озвучили свой...
Посмотрите список статей здесь на Хабре мои, и попробуйте догадаться о том направлении в котором я работаю
По секрету шепну - я последние полгода активно пишу с помощью нейросетей как раз шахматную платформу, так что в курсе где взять данные, как их закинуть, как обучить нейросетку и прочее
Если есть вопросы по теме - задавайте. Я просто написал что Вы неправы в плане обучения. Кроме того автор первоначальной темы написала где взяты данные. Я догадываюсь даже какие (потому что у меня они тоже есть). И поверьте - там превращения пешек и взятия на проходе и рокировки есть с избытком
Такое впечатление что вы не очень хорошо понимаете в чем разница обучения шахматам ребёнка и "нейросети". Может я не прав, но по вашим словам как-то так выглядит.
Поэтому ваш излишне лаконичный коммент и получил минус, уж извиняйте и не расстраивайтесь.
То что в наборе на котором учится модель есть те или иные ходы ещё не значит что она им правильно научится.
Кроме того обратите внимание на мой последний пример - вы никакими ухищрениями с помощью одних только примеров не можете научить ИИ каким-то специфичным ограничениям накладываемым на ходы.
Если этого примера мало - посмотрите на японский вариант шахмат, Сёги - как вы собираетесь учить ИИ-модель что нельзя вбрасывать пешку на ту же вертикаль где уже есть ещё одна, или что вбросом пешки нельзя объявлять мат? Разве что использовать партии в которых такие ходы сделаны и засчитаны за проигрыш - но это не очень плодотворный подход.
По секрету шепну - я последние полгода активно пишу с помощью нейросетей как раз шахматную платформу
ну вот когда напишете - тогда посмотрим :)
Из вашего предложения даже непонятно используете ли вы "нейросети" для кодогенерации или непосредственно для игры. Но честно говоря пока не видно результата это даже не очень важно.
Обязательно пишите чем там дело кончится. Пока из статей у Вас в профиле мне наиболее созвучной показалась первая.
Я тем временем не претендуя на такие высоты выложил у себя на сайте задачку-головоломку на программирование шахматного движка. Захотите отвлечься - попробуйте, там делов-то строк на 200-300.
Как Вы предлагаете "научить" модель что нельзя рокироваться если король или ладья ходили и вернулись на свое место?
Вопрос - неверный... Как модель видит позицию? Как человек видит позицию? Вот что надо спрашивать. А не то что Вы спросили. Я же говорю и повторяю - Вы просто не в теме данного вопроса. Если Вы хотите разобраться - то надо спрашивать совершенно не это. Вы начинаете с конца, а надо спрашивать с начала.
Ваша модель не играет в шахматы, а только притворяется