Эссе о разработке игр, мышлении и книгах

Делаем простой ИИ тамагочи на ChatGPT

DALL-E: Screenshot of a hamster from a game simulating artificial life, similar to the Creatures game.

DALL-E: Screenshot of a hamster from a game simulating artificial life, similar to the Creatures game.

Обсуждали с коллегами что ещё может современный ИИ, вспомнили про тамагочи и всякую искусственную жизнь.

Поболтали и разошлись, а я пошёл и за 15 минут получил вот такой результат.

Тюнить и украшать вывод не буду — уже есть куча примеров как получать чистый код от ботов. В данном случае интересна сама демонстрация возможности.

Спойлер: с ChatGPT не надо тратить время на разработку ИИ простых ботов, сеть подстроится под ваши требования. Просто скажите кем ChatGPT должна притвориться.

Этот пост неявно продолжает размышления из Write Your Own Adventure.

Далее

OpenAI Chat для геймдева

Vrubel-style painting of how a game designer work on game texts (c) DALL-E

Vrubel-style painting of how a game designer work on game texts (c) DALL-E

Раз поигрался с DALL-E и смотрел предыдущие текстовые нейронки для Сказки, то надо и OpenAI Chat посмотреть.

Глубоко не копал, так как концептуально возможности и ограничения были понятны уже из экспериментов с DALL-E.

Приведу пример, как одну из следующих версий этой сетки можно будет использовать для Сказки.

Если вам интересны более детальные демонстрации и выводы, смотрите пост про DALL-E для геймдева.

Далее

Используем DALL-E для геймдева

DALL-E: "Vrubel-style painting of an indie game developer working on her game, like The Demon Seated."

DALL-E: "Vrubel-style painting of an indie game developer working on her game, like The Demon Seated."

Получил доступ к DALL-E и попробовал применить его к чему-нибудь полезному — геймдеву. В конце-концов, к чему ещё прикручивать процедурную генерацию.

Сначала тезисно расскажу об общих впечатлениях, а потом посмотрим для чего в геймдеве можно использовать этот инстрмент прямо сейчас. А для чего пока не получится.

Осторожно, много трафика — DALL-E отдаёт png файлы размером 1-2 мегабайта. Я немного пожал их, но качество старался сохранить на максимуме, поэтому картинки всё-равно тяжёлые.

Далее

Реализация Generative Adversarial Network

В завершение разбирательства с Deep Learning решил посмотреть что-нибудь более интересное и ориентированное на генерацию контента — реализовать GAN.

По правде говоря, большую часть времени с GAN (и Autoencoder) я экспериментировал на спрайтах карты Сказки. Ожидаемо, на таком мизере обучающих данных ничего интересного не получилось. Хотя польза и была. Поэтому для поста я подготовил отдельный notebook с более наглядными результатами — генерацией обуви по набору данных Fashion MNIST.

Ноутбук с реализацией GAN и комментариями.

Про архитектуру GAN лучше почитать в вики, интернетах или моём ноутбуке.

Краткая суть:

  • Тренируются две сети: generator & discriminator.
  • Генератор учится создавать картинки из шума.
  • Дискриминатор учится отличать поддельные картинки от настоящих.
  • Ошибка дискриминатора определяется качеством предсказания фейковости изображения.
  • Ошибка генератора определяется качеством обмана дискриминатора.

Если правильно подобрать топологии сетей и параметры обучения, то в итоге генератор научается создавать картинки неотличимые от оригинальных. ??????. Profit.

Ссылки на курсы по Machine Learning & Deep Learning

Перед началом разбирательства с темой собрал для себя список курсов, которые могут быть интересны.

Публикую, чтобы не пропадал зря.

Только ссылки. Свои комментарии вырезал — в исходном виде они никому кроме меня не помогут :-)

Далее