ИИ опыт (часть 2)
В предыдущей части я рассказывал об опыте работы с ИИ на пет проекте. Придётся напомнить, что пет проект - это пазл игра на Unity.
Итак, в прошлой части я закончил на том, что генерация уровней, сделанная ИИ, получилась… Ну не получилась она. Даже когда я вложил много сил в то, чтобы ИИ эту генерацию оптимизировал. И вот когда токены начали подходить к концу, я вспомнил кое-что важное.
5. Вообще-то, я программист
Да, зря забыл об этом. Я полез смотреть, что же там такое нейронка накрутила в генераторе. Кстати, python для меня - новая сфера. В итоге я читал код и спрашивал нейронку про непонятные места - очень даже информативно получилось. За первый день удалось найти несколько мест оптимизации - парочка из них вместе дали прирост в скорости примерно в 3-4 раза, остальные уже по мелочи. Особенно забавно было, что когда я спрашивал нейронку прицельно про эти места, она говорила либо “нет, проблема в другом месте”, либо “это не даст значительного эффекта”. Ну и эти места вообще не упоминались ни разу во всех моих просьбах к ИИ об оптимизации. Конечно, моё программистское ЧСВ было в восторге, но нужного мне результата всё ещё не было.
6. Работать вместо вместе
Так а почему же нейронка не справилась? Потому что задача оказалась нетривиальной (сюрприиииз). Простые уровни генерировались достаточно быстро - все проблемы были именно с генерацией сложных уровней. Вернее - ещё немного деталей для тех, кто глубоко читает мой пост - генерация не такая уж и проблемная, проблема возникает в том, чтобы доказать, что сгенерированный уровень действительно сложный. Как это доказать? Найти кратчайшее решение. А если уровень действительно сложный, нужно перебрать какое-то невообразимое количество состояний (и удержать это всё в памяти).
В общем, задача изначально сложная. У меня даже нет уверенности, что если бы я принялся делать это сам, то у меня получилось бы в принципе быстрее, чем с нейронкой. Тем более, что в коде нейронки были интересные и здравые идеи, до которых я бы мог и не догадаться.
А итог какой? А такой, что я до сих пор вожусь с генерацией - она всё ещё не может даже за ночь работы выдать нужное мне количество уровней. Я ищу пути оптимизации, ослабляю требования. Да, я по прежнему советуюсь с нейронкой, но никакой слепой веры больше нет - я перепроверяю её выводы, спорю, откровенно глупые предложения просто игнорирую.
Заключение
Конечно хоть требуемый результат так и не получен, промежуточный итог попробую сформулировать. Хоть как-то.
- ИИ отвечает на вопросы, но формулировать вопросы всё ещё надо человеку - Вопросы для ИИ нужно уметь формулировать - Нужно дать понять ИИ что ты хочешь получить из его ответа - Не всем ответам ИИ можно верить - Нет, ИИ не бесполезен - Ты в любом случае лапочка. Но если с ИИ не получается, то лапочке надо ещё поучиться (место для рекламы курсов по нейронкам)