Skip to content

Latest commit

 

History

History
102 lines (59 loc) · 9.96 KB

README.md

File metadata and controls

102 lines (59 loc) · 9.96 KB

Hi everyone! I'm Bunin Kirill, MIPT student

Here is some information about my project, I want to tell you smth about it, let me speak some russian lower


Описание образов инопланетян, их предпочтений

Паттерны внешности Предпочтения гдетотамцев
футуристичные кофе
смышлённые по виду жёлто-чёрные тона
милые минимализм в архитектуре
с синей кожей закат солнца
большеголовые интерьер из дерева
лупоглазые много литературы

Image info

Больше изображений инопланетян в папке alien_pictures

(изображения сгенерированы с помощью StableDiffusionMagic)

Ответы на вопросы

  1. Image captioning - это процесс автоматического создания описания или подписи к изображению с помощью алгоритмов машинного обучения. Он использует компьютерное зрение и естественный язык для создания описания, которое наиболее точно отражает содержание изображения.

  2. Работают над этим, потому что автоматическое создание описания для изображений может значительно упростить и ускорить работу в различных приложениях. Это может помочь людям с ограниченными возможностями зрения понимать содержание изображений, а также повысить доступность контента для всех пользователей. Кроме того, это может быть полезно для автоматической обработки больших объемов данных, таких как фотографии в социальных сетях и медиабиблиотеках.

  3. Формулировка задачи image captioning заключается в следующем. Дана обучающая выборка из пар изображение - описание. Задача обучиться на полученных данных и в последствии выдавать наиболее подходящее описание картинки из тестового датасета, поданной в модель без описания.


Анализ датасета

Отмечу, что в представленном google colab ноутбуке был приведён более подробный анализ данных, а также были приведены идентичные выводы, однако ввиду технического задания я продублирую эту информацию здесь:

  1. Как видно из описания датасета и представленных картинок (см. ноутбук), на датасете изображены фотографии отелей с различными шумами и большой дисперсией. То есть некоторые фотографии перевёрнуты, некоторые визуально испорчены, некоторые сделаны в хорошем качестве, иные - в плохом.

  2. Выше массив всех встречающихся размеров изображений (см. ноутбук), как видно в тестовой выборке встречаются len(list_sizes) = 15 уникальных размеров

  3. В моём датасете 1000 объектов в целях экономии времени анализа данных.

  4. Все изображения из класса traffickcam (так как мой сервис для инопланетян будет давать им не вылизанные фотографии, а реалистичный фотоматериал). Так что уникальными классами можно считать chain_id отелей на фотографиях, выше представлен их полный список из 58 штук.

  5. Очевидно, что относительно рассмотрения класса trafickcam датасет является сбалансированным, но если брать за класс chain_id, то датасет (ввиду представленной выше аналитики, см. ноутбук) не сбалансирован, однако по представленным диаграммам видно, что преобладают классы с малым (< 10) количеством фотографий.


Image captioning part

В этом разделе я приведу описание итогов генерации описаний к картинкам и их кластеризации по тегам (за более подробной информацией обращайтесь в colab ноутбук):

  1. Была проведена кластеризация по следующим тегам:
  • cheap room in hostel with bad interior
  • cheap room in hotel with bad interior
  • average quality hotel room with average interior quality
  • superior hotel room with higher quality interier
  • luxury hotel room with luxury interier
  1. Адекватность данной кластеризации можно проверить имперически, что и было сделано
  2. Отмечу, что данная часть является важной для задани классификации отелей, хотя и не даёт обобщённого описания изображению
  3. Далее был приведён скрипт, генерирующий обобщённое описание к изображениям отеля, таким образом была решена задача описания объекта
  4. корректность скрипта проверена в работе имперически

Style transformation part

Здесь приведён краткий отчёт о работе заключетельного блока colab блокнота.

  1. Задача - изменить стилистику фотографии под инопланетян, не меняя сути

  2. Я написал свою нейросеть для решения этой проблемы. Конечно, можно было залить часть фотографий в StableDiffusionMagic и добавить описания стилистического преобразования, но это скучно. По сему настоящим исследованием проблемы является именно своя родная нейросеточка.

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

  4. В качестве основных гиперпараметров нейросети были взяты кол-во эпох - 200 (на первом примере) и 250 (на втором примере), learnig_rate = lr = 0.003 = константа Karpathy. Все остальные гиперпараметры - стандартные.

  5. В качестве функции лосса я использовал лосс из этого потрясающего видеоурока по стилевой трансформации:

  1. Указанная функция состоит из style_loss и content_loss. Как было продеманстрировано в google colab, style_loss падает с прошествием эпох, content_loss напротив растёт, что доказывает эффективность модели, так как style_loss показывает схожесть со стилем инопланетянина, content_loss показывает, насколько фотография отличается от исходного изображения.

  2. Результат этого блока - рабочая нейросеть, которая умеет трансформировать изображения под запросы инопланетной культуры.


Result

В представленном google colab ноутбуке присутствуют все необходимые рабочие методы и модели по техническому анализу изображения для инопланетян, которые не меняют суть исходных данных. Стоит отметить, что инопланетяне, сгенерированные в процессе этой работы - просто душки!