OpenAI представила другу версію генеративної нейромережі DALL-E

OpenAI представила друге покоління нейромережі DALL-E, що генерує зображення за текстовим запитом. У новій версії розробникам вдалося значно підвищити якість генерації, а також навчити модель новим навичкам: редагувати зображення і створювати їх варіації. OpenAI опублікувала на своєму сайті короткий опис розробки і присвячену їй статтю.


На початку 2021 року OpenAI представила дві нейромережі: CLIP и DALL-E. Вони виконують протилежні завдання: перша передрікає текстовий опис для цієї картинки, а друга генерує зображення за цим текстовим описом. Особливість цих нейромереж полягає в тому, що після навчання в їхньому прихованому просторі формується якісний зв'язок між візуальними та текстовими уявленнями різних об'єктів і явищ. У випадку з DALL-E це дозволило генерувати зображення з досить незвичайними описами, наприклад, стілець у формі авокадо.


Незважаючи на те, що OpenAI показала вражаючі результати з DALL-E, у нейромережі були недоліки. Зокрема, вона досить добре справлялася зі стилізованими зображеннями і картинами, але їй однозначно не вистачало реалізму. У новій версії розробники виправили цей недолік моделі, а також навчили її новим умінням.

Модель DALL-E 2 частково заснована на CLIP, розробники в статті також називають її генеративну частину unCLIP, тому що фактично вона виконує роль інвертованої моделі CLIP. Крім того, в новій версії, на відміну від оригінальної DALL-E, використовуються дифузійні моделі, які навчаються і працюють наступним чином. Спочатку модель отримує якісне зображення і додає до нього шум. Потім вона бере це зображення і знову додає шум. Процес повторюється до тих пір, поки зображення не стане хорошою апроксимацією гаусівського шуму. Таким чином формується датасет з низки зображень з різним рівнем шуму. Після цього нейромережу можна «розгорнути» і навчити на цьому датасеті зворотного завдання: формувати якісне реалістичне зображення з шуму. Традиційно в останні роки для синтезу фотореалістичних зображень застосовували генеративно-змагальні нейромережі, але дослідники з OpenAI показали, що дифузійні моделі дають кращі результати.

Під час навчання текст перетворюється кодувальником з CLIP на текстовий ембеддінг (стиснуте векторне представлення тих же даних). Фактично в CLIP-моделях текстові та візуальні ембеддинги мають однакову розмірність, тому після цього кроку можна було б відразу ж використовувати декодувальник, що перетворює ембеддінг на зображення. Однак розробники вирішили використовувати більш складну схему з дифузійною моделлю (вони також випробували авторегресійну модель), що конвертує текстові ембеддинги у візуальні. Після цього ще одна дифузійна модель з урахуванням цього ембеддингу генерує фінальне зображення.

Тести показали, що така схема дає набагато якісніші результати, ніж ті, що виробляла оригінальна DALL-E. Приклади генерації можна подивитися на сайті OpenAI і в демонстраційному ролику. Крім більш високої якості, генеровані зображення мають в чотири рази вищу роздільну здатність: 1024 пікселі по одній стороні проти 256. Цього вдалося досягти завдяки використанню двоетапного збільшення дозволу (з 64 до 256, а потім до 1024 пікселів). Водночас розробники визнають, що через це алгоритм часто не справляється з деталями в складних сценах.

Крім покращеної генерації, DALL-E 2 отримала можливість редагувати зображення, змінюючи зазначені текстом і виділенням фрагменти, а також створювати варіації одного і того ж зображення, що зберігають сенс і стиль, але трохи відрізняються один від одного, наприклад, варіації одного і того ж портрета:

Як і раніше, OpenAI не опублікувала навчену модель або її код, а API для доступу до неї доступний лише обмеженій кількості осіб, схваленій розробниками. Але, ймовірно, сторонні дослідники найближчим часом відтворять модель за її описом, так само, як це зробив Сбер з оригінальної DALL-E.


COM_SPPAGEBUILDER_NO_ITEMS_FOUND