Умеет материться и сочинять эротику: беседа с разработчиками сценарной нейросети, написавшей сериал для СТС

Узнаём, может ли просто робот, имитация жизни, написать симфонию, сделать шедевр.

Телеканал СТС совместно с образовательной платформой Skillbox объявил о создании сериала, сценарий для которого сгенерировала нейросеть, обученная на «Ворониных», «Родкоме» и «Жене олигарха».

Мы связались с авторами необычной программы, Владимиром Ларькиным и Вадимом Поволоцким, и поговорили о художественной ценности «искусственных» сценариев, участии человека в творческом процессе и технических нюансах разработки.

Умеет материться и сочинять эротику: беседа с разработчиками сценарной нейросети, написавшей сериал для СТС

Как вообще выглядит A.I. TV Script Generator?

Вадим Поволоцкий: Довольно минималистично: несколько кнопок и поле для ввода текста. Работа устроена так: пользователь вводит текст-затравку, нажимает кнопку «Дополнить» и получает продолжение текста от нейросети. Результат можно редактировать, отменять или продолжать всё той же кнопкой «Дополнить».

Умеет материться и сочинять эротику: беседа с разработчиками сценарной нейросети, написавшей сериал для СТС

Какие-то параметры можно ввести вручную, чтобы «запереть» историю в более-менее контролируемом пространстве?

Владимир Ларькин: Таких параметров нет. Основные сюжетные элементы нейросеть понимает, исходя из того, что получила на вход в завязке. Пользователь может написать целый абзац текста: с действующими лицами, временем и местом, действиями героев.

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

Умеет материться и сочинять эротику: беседа с разработчиками сценарной нейросети, написавшей сериал для СТС

Архитектурное ограничение — длина вводного текста в 2048 токенов.

А токены — это…

Владимир Ларькин: Если простым языком, то слова, но нейросеть видит слова в виде чисел. Потому что любая нейросеть генерирует числа. Она принимает на вход числа и на выходе выдаёт числа.

Изначально мы берём весь словарь всего датасета, на котором учимся, затем берём все уникальные слова, которые в нём содержатся, и нумеруем их. Каждому слову присваиваем уникальное число и даём нейросети на вход эти числа. На выходе модель тоже генерирует числа, которые дальше преобразуются по тому же правилу — числа в слова. Просто сопоставление, один к одному.

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

В среднем нейросеть генерирует от одного до трёх предложений за раз.

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

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

Один из самых популярных вопросов, а может и самый популярный, который я встречал в комментариях к новости о «Сидоровых» — почему вы решили учить нейросеть именно на сериалах СТС? Пользователи считают, что брать пример стоило не с «Ворониных», а с более культовой «Теории большого взрыва» или «Как я встретил вашу маму».

Вадим Поволоцкий: Всё просто: что на вход, то и на выход. Мы смогли получить на вход сериалы СТС, чтобы на выходе получился сценарий для сериала СТС. Для обучения нейросети на «Теории большого взрыва» нужно получить доступ к сценарию сериала и разрешение на использование авторского контента.

Владимир Ларькин: Но когда мы только начинали обучать нейросеть, в качестве эксперимента подгружали в неё общедоступную информацию. Например, рассказы Зощенко. Искали что-то по структуре похожее на пьесы.

A.I. TV Script Generator — это выпускная работа студентов курса Data Scientist PRO. В описании к нему сказано, что в рамках занятий обучаются программированию как совсем новички с нуля, так и уже умелые программисты. Кем были вы?

Владимир Ларькин: Мы пришли в Skillbox не «нулевыми», всё-таки за плечами «Прикладная математика» в МАИ. Студенты университета интересуются нейросетями, но конкретного предмета по ним на бакалавриате нет. Поэтому в эту область идут только по личной инициативе.

Так случилось и с нами, наш научный руководитель Валентин Пановский предложил реализовать проект сценарной нейросети в качестве дипломной работы. Недостающие знания в работе с искусственным интеллектом набирали на курсе Skillbox. Собственно Валентин нас и курировал по ходу работы. Был нашим тимлидом.

Насколько ваша нейросеть уникальная в техническом плане?

Владимир Ларькин: Мы позаимствовали наработки SberDevices, а они в свою очередь повторяли архитектуру нейросети американской компании Open AI.

Соответственно, команда Сбера обучила нейросетку русскому языку и его закономерностям, загрузив в неё десятки гигабайт скачанного текста со всего рунета. А мы взяли эту готовую нейросеть и подстроили именно процесс её обучения под потребности сценарного плана.

Из основных инструментов, с которыми мы работали, можно назвать библиотеку Pytorch, самый популярный фреймворк Python при работе с нейросетями, и Natasha, библиотеку для анализа русского текста и синтаксического разбора предложений.

То есть каждый, кто чуть-чуть понимает такую разработку, может без труда сделать собственный A.I. TV Script Generator. Или не может? Объясните, пожалуйста.

Владимир Ларькин: Может показаться, что обучить — это легко. Но это можно делать по-разному, так как многие параметры варьируются. В этом наша основная работа и заключалась: подобрать параметры, способ подачи текста. Когда мы подавали сценарии в нейросеть, их нужно было нарезать определенным образом. Там были свои хитрости в порядке подачи, в количестве, в разных гиперпараметрах, вроде шага градиентного спуска, количества эпох.

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

Для этого надо знать, как их обучить, на какие кнопки нажимать — иметь перед глазами инструкцию. То есть я могу себе представить человека, который ничего не знает о высшей математике, воспринимает нейросеть как чёрный ящик, куда на вход подаём и получаем выход, но всё-таки мне сложно поверить, чтобы этот человек смог именно осознанно повторить проект.

Следуют ли сценарии вашей нейросети каким-нибудь правилам драматургии или генерируются только на основе вычитанной горы текстов? Из простого, пытается ли нейросеть следовать трёхактной структуре?

Владимир Ларькин: В случае нашей нейросети такая постановка вопроса не совсем корректна. Потому что генерация в ней происходит последовательно: вводим завязку, генерируем несколько предложений, отсматриваем их, вносим правки, всё отменяем или продолжаем итерации.

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

В пресс-релизе упомянуто, что после генерации «Сидоровых» проверял редактор-человек. Вам известно, как сильно он редактировал изначальные тексты? Финальные версии сценариев — это «причёсанные» серии от нейросети или скорее соавторское творчество человека и машины?

Владимир Ларькин: Мы не знаем деталей судьбы «Сидоровых», но саму систему можно назвать соавторством компьютера и человека. Потому что нейросеть изначально рассматривалась как инструмент.

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

Если пользователь нажмёт «Дополнить» несколько раз, без редакции, в сумме получится сценарий — связный текст с действующими лицами, с нормальной структурой, репликами, ремарками, описанием локаций. И там будет сюжет.

А сценарист его редактирует. Например, он прочитал то, что сгенерировала нейросеть, подумал: «Прикольно, но хочу чтобы закончилось вот так». Исправляет отрывок сам и продолжает генерацию.

Вадим Поволоцкий: Я бы добавил, что вероятность получить крепкий сценарий, ничего не меняя, не нулевая. Поэтому машина играет важную роль в процессе.

А что, если уже сгенерированный сценарий нужно исправить где-то в середине? Мало ли от продюсера придут правки.

Владимир Ларькин: Нейросеть генерирует именно продолжение текста. Она не может генерировать середину текста. Поэтому с такими правками автор может справиться только самостоятельно.

Заложены ли в A.I. TV Script Generator цензурные фильтры? Запрещённые слова, может темы.

Владимир Ларькин: А зачем ограничивать сценариста в творчестве? За генерацией же всё равно сидит человек и знает, что хочет сгенерировать. Так что любая цензура в этом смысле лежит на управляющем человеке. Например, удаление матов.

То есть нейросеть умеет материться?

Вадим Поволоцкий: В материале, на котором нейросеть обучена, мата не очень много.

Владимир Ларькин: Не так. Мата не было в сценариях СТС, их возрастное ограничение, насколько я знаю, 16+. Но изначальная модель обучена на русском языке. И в датасете, на котором она училась, мат есть. Поэтому вероятность того, что будет сгенерирована нецензурная лексика, не нулевая. И вообще, мат — это хорошее выразительное средство. Он может играть и положительную роль.

И постельную сцену напишет?

Владимир Ларькин: Когда я экспериментировал с обучением нейросети, у неё был этап генерации эротических фанфиков. Со временем обучения они пропали естественным образом.

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

На ваш субъективный взгляд, сценарии A.I. TV Script Generator несут какую-то художественную ценность или это в первую очередь технологический проект, а не творческий?

Вадим Поволоцкий: Это сложный вопрос. Я считаю, что искусством может считаться что угодно, оно вообще зависит в большой степени от зрителя. Возможно, в большей, чем от автора.

Если писсуар и банка супа могут быть искусством, машинный сценарий тоже.

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

Владимир Ларькин: Я проводил социальный эксперимент: брал текст, который генерировала наша нейросеть, без контекста скидывал знакомым и смотрел, что они ответят. Многие читали и комментировали какие-то вещи из текста, вроде «тут странно переход сделан», «непонятно, что происходит».

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

Умеет материться и сочинять эротику: беседа с разработчиками сценарной нейросети, написавшей сериал для СТС
Умеет материться и сочинять эротику: беседа с разработчиками сценарной нейросети, написавшей сериал для СТС

А если сравнивать с настоящим кино?

Владимир Ларькин: Нет, с ним тягаться пока не может. Потому что зритель не привык к такому хаотичному, мало связанному происходящему.

«Сидоровы» — это разовый эксперимент? Или ваша нейросеть подойдёт для массового применения в киноиндустрии?

Владимир Ларькин: Не знаю на счёт нашей. Тут зависит от того, как ею распорядятся СТС и Skillbox. Но в принципе, да, я считаю что подобные инструменты будут появляться и совершенствоваться.

Даже верю, что сценарное дело в результате развития нейросетей преобразуется в иную профессию.

Приведу аналогию. Раньше были бухгалтера со счётами, калькуляторами. В какой-то момент пришли программисты: «Давайте сделаем бухгалтерам SQL, чтобы они могли из баз данных быстро извлекать данные, быстро проводить математические операции». И из профессии бухгалтера, который знает SQL, появилась профессия специалиста по базам данных (SQL-разработчика). По сути, это продвинутый бухгалтер, который обладает продвинутым инструментом для работы с данными.

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

Нейросети уже используются для творческих задач: не только для генерации текста, но и изображений, музыки. И лично я не всегда могу отличить картинки нейросети от нарисованных художниками. В этом смысле задача дизайнеров, которые рисуют какие-то простые иконки и логотипы, в скором времени очень сильно трансформируется.

Значит ваш робот, лишь имитация жизни, может написать симфонию, сделать шедевр?

Владимир Ларькин: Конечно. Такая вероятность есть.

5656
34 комментария

Умеет материться и сочинять эротику А большего сценаристам и не надо

60

Комментарий недоступен

45

Когда увидел, как щиколотка Вити заходит в комнату:

24

Да, я не понял! Что за фигня?!

6

В халате и тапочках на босу ногу - выглядит ужасно

Обидно было. Пойду, носки надену.

2

"Сколько?"
"Эээ, немного..."
"Ты бля мне мозги не еби, я говорю - сколько?"

2

Приходишь с работы, сгенерированной нейросетью, в квартиру, сгенерированной нейросетью, целуешь жену и обнимаешь детишек (или бьешь (зависит от нейросети)), сгенерированных нейросетью, наваливаешь тарелку пельменев, сгенерированных нейросетью, сгенерированной нейросетью жены, садишься перед телеком, сгенерированным тоже и врубаешь сериал на СТС, который сняли сгенерированные нейросетью люди по сценарной нейросети. Сгенерированная нейросетью дочь говорит, что беремена. Ты шутишь, мол «Залетела от нейросети? хахаха». Она говорит «Нет, от Игоря с 5-ой квартиры...». Ты грустишь... сгенерированно.

17