Размещение рекламы
Крупнейшая digital-премия в Европе

«Нейросян» — нейросеть, оценивающая шутки

Заказчик: Doubletapp
Исполнитель: Doubletapp
Share
«Нейросян» — нейросеть, оценивающая шутки

Описание

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

Наши цели:
1. Нескучно рассказать о компании и ее услугах
2. Наглядно продемонстрировать возможности ML-отдела Doubletapp
3. Развлечь публику, которая целый день слушает доклады
4. Привлечь внимание аудитории к стенду
* * *

At the DUMP-2022 conference, Doubletapp did not just give some speeches and supervise sections. We had a stand where we would tell about our company and give prizes to the winners of the joke contest. To choose a winner, we taught the neural network to identify whether a joke was funny. But we will get back to it a bit later.

Our goals:
1. Tell about the company and its services in a fun way
2. Showcase the capabilities of the Doubletapp ML-department
3. Entertain the audience that listens to lectures all days long
4. Draw people’s attention to the stand

Текущая доступность работы

Телеграм-бот: https://t.me/DoubletappJokeBot

Поставленная задача и ее решение

К ежегодной конференции для IT-специалистов DUMP в 2022 году мы подошли основательно: стали партнерами, вошли в программные комитеты нескольких секций, подготовили доклады.

Подарить участникам фирменный мерч хотелось каким-то небанальным способом. Конференцию посетили около 1500 человек. Мы задались целью заполучить включенное внимание к нашей компании как минимум трети из них.

Для этого мы приготовили три вида мерча:
1. Фирменные толстовки. Нанесли на них изображение шара — символа компании Doubletapp, «оживающего» при помощи дополненной реальности, когда наводишь телефон. Этот приз был рассчитан на самых главных юмористов конференции, чьи шутки обученная нами нейросеть сочла самыми смешными.
2. Подставки для телефонов — для тех, кто шутит хорошо, но не настолько искрометно, чтобы искусственный интеллект расхохотался.
3. И стикеры — в качестве утешительного приза тем, кто принял участие, но не победил.

I. МЕХАНИКА ТЕЛЕГРАМ-БОТА

В холле Екатеринбург-ЭКСПО, где проходила конференция, мы разместили стенд. Также на секции Mobile, которую вел CEO Doubletapp Сергей Анчутин, стоял роллап, гарантированно привлекающий внимание своей абсурдностью. Разве не интересно понять, зачем мы разместили на нем лицо Евгения Петросяна?

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

Затем пользователи заходили в бота, который предлагал им продолжить выбранную рандомом шутку из базы. Человек писал продолжение, в течение лекционного блока нейросеть обрабатывала полученные результаты, ранжировала их, делила на три категории. После чего автор шутки получал комментарии формата «ты шутишь смешнее 90% людей» или «это никуда не годится». Всего у каждого участника было три попытки «рассмешить» нашу нейросеть. К каждому перерыву складывался рейтинг, пользователю приходило сообщение о том, какой приз он выиграл — толстовку, подставку для телефона или стикеры.

II. ОБУЧЕНИЕ НЕЙРОННОЙ СЕТИ

Проблема № 1: необходимость ручной фильтрации поступающих шуток
Возможности искусственного интеллекта велики, но не безграничны. Нужен был способ отфильтровать шутки от рандомных сообщений. У нас был датасет с шутками и не шутками — новостными заголовками, несмешными предложениями, вырванными из контекста. Обученная на нем нейросеть определяла, шутка перед ней или набор слов, отсеивая лишние ответы.

Проблема № 2: как обучить нейросеть распознавать юмор?
Для того, чтобы нейросеть могла определить, насколько шутка смешная, специалисты ML-отдела Doubletapp разбили задачу на два этапа: определение шутка/не шутка и подсчет рейтинга. У нас был датасет шутка/не шутка, а рейтинги собирались с сайтов с шутками.

Мы спарсили шутки с сайтов с рейтингами шуток, представленными количеством лайков. Нормализовали рейтинг относительно времени (так как у новых шуток обычно меньше лайков, чем у тех, которые дольше на сайте, но там нелинейная зависимость). На полученном датасете мы дообучили rubert под задачу регрессии.

Затем собрали пайплайн для шутки:
Предложение → первая модель → вероятность, что это шутка (от 0 до 1)
Предложение → вторая модель → рейтинг шутки (просто число)
Затем перемножили две величины: вероятность х рейтинг = рейтинг шутки
В итоге получили результат, при котором в случае, если была дана не шутка, то ее вероятность стремится к нулю и соответственно рейтинг становился низким.

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

We approached the annual DUMP-2022 conference for IT-specialists thoroughly: formed some partnerships, joined the program committees of several sections, and prepared some presentations.

We wanted to give the participants our branded merch in a non-trivial way. The conference was visited by about 1500 people. Our goal was to grab the attention of at least the third of this number.

For that purpose, we prepared three types of merch:
• Branded sweatshirts. We put an image of the sphere on them, which is a symbol of our company. Using augmented reality, we made it so that if you pointed your phone at it, it would “come to life”. That was the prize for the funniest people of the conference, whose jokes the neural network considered the best.
• Phone holders — they were given to those who joked well, but not well enough to make the artificial intelligence crack up.
• And stickers — they were a consolation prize for the participants who didn’t win.

I. TELEGRAM BOT MECHANICS

We placed our stand in the Ekaterinburg-EXPO hall — that’s where the conference was held. At the Mobile section, supervised by Doubletapp CEO Sergey Anchutin, there was a roll-up, an absurdity of which couldn’t but draw attention. How could you not want to find out why the face of Evgeny Petrosyan was on it?

During the breaks, the DUMP participants were walking past the Doubletapp stand. When they saw that the prizes were being given, they started to come over. The stand workers offered them to use the bot and join the prize drawing.

When users used the bot, it asked them to come up with the ending of the random joke from the database. After it was done, the neural network took its time during the lecture segment to process the results, rate them, and put them into three categories. Then the authors of the joke would get a comment like “you make jokes better than 90% of people” or “it was really bad”. Each participant had three tries to make the neural network “laugh”. By each break, a rating was created, and the user would get a message with the information about their prize — a sweatshirt, phone holder, or stickers.

II. TEACHING NEURAL NETWORK

Issue #1: Jokes were to be filtered out manually
AI capabilities are enormous but limited. We needed to find a way to filter random messages out. We had a dataset with jokes and not jokes — news headlines and out-of-context unfunny sentences. The neural network referenced this dataset to identify whether it was a joke or random words combination, and then filtered it out.

Issue #2: How to teach the neural network to identify humor?
To teach the neural network to identify how funny a joke is, the ML-department specialists broke it into two steps: a joke/not a joke identification and rating. We had a joke/not a joke dataset, while the ratings were gathered from the jokes websites.

We parsed the jokes from the websites with joke ratings, presented in the form of likes. We normalized the rating in relation to time (new jokes usually have less likes than old ones but this is a non-linear dependence). Using the dataset that we got, we taught Rubert to solve the regression problem.

Then we made a pipeline for a joke:
Sentence → first model → chance that it is a joke (from 0 to 1)
Sentence → second model → joke rating (just a number)
Then we multiplied two quantities: chance x rating = joke rating
As a result, if it wasn't a joke, its chance would approach zero and, as a consequence, its rating would be low.

This approach was necessary because the first model separated jokes and non-joke answers, and the second one identified its rating, considering it to be something funny.

Скриншоты

Достигнутые цели и KPI по итогам запуска

504 участника зарегистрировались в боте. Это треть от общего количества участников крупнейшей IT-конференции на Урале. Все, кто участвовал в боте, поделились своим контактом в телеграме.

Большая часть участников DUMP-2022 побывала на нашем стенде. Команда Doubletapp активно общалась, знакомилась с коллегами из других компаний, рассказывала об услугах компании и возможностях ML-отдела в частности.

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

Во время самой конференции мы получали заявки на стажировку от ребят, работавших на DUMP.

Итог PR-активности — 504 участника зарегистрировались в боте, вот комментарии некоторых из них.

Дмитрий Истомин: «Креативный стенд с нейросетью, где бот отправлял тебе шутку и ты должен был её продолжить. В конце она оценивала то, насколько смешно ты пошутил и потом ты довольный шел получать мерч от Doubletapp».

Александра Покоева: «В холле сразу заметила убойного Петросяна и пришла к стенду Даблтап. Поучаствовала в розыгрыше, выиграла подставку. После DUMP получила от бота список самых смешных шуток (по версии нейросети), посмеялась, моя в топ не попала. Идея прикольная!»
* * *

504 people signed in using the bot.

Most of the DUMP-2022 participants visited our stand. The Doubletapp team was actively communicating and getting to know the colleagues from other companies, telling about the company services and the capabilities of its ML-department in particular.

There was a lot of attention to our stand from the audience. After the conference, we received several offers for joint events from other companies’ PR departments.

During the conference, people who worked for DUMP were applying for internships in our company.

The third of the DUMP guests tried their luck and put their sense of humor to the test.
Share

Дата запуска

27 мая 2022 года

Авторы

Заказчик:
Сергей Анчутин

Менеджер:
Светлана Прохорова

Дизайн:
Валерия Крупина (тимлид)
Ксения Попова (иллюстрации)
Павел Лаптев (бренд-дизайн)

PR:
Светлана Прохорова
Анатолий Рубель

ML:
Данил Семенов
Антон Рябых

Backend:
Никита Анчутин
Егор Крохин

Номинации

Кампании / креатив → Кампания / креатив за 2 недели
Кампании / креатив → Использование игровых механик
Кампании / креатив → Искусство, культура, развлечения и мероприятия
Social Media → HR-кампания
Совершенное исполнение (Craft) → Иллюстрация
AI-технологии и чат-боты
«Сапожник с сапогами»
«Сапожник с сапогами» → Коммуникация

Ссылки

t.me