Нейросеть, способная объяснить себе задачу: P-tuning для YaLM
Друзья, с момента основания проекта прошло уже 20 лет и мы рады сообщать вам, что сайт, наконец, переехали на новую платформу.
Какое-то время продолжим трудится на общее благо по адресу
На новой платформе мы уделили особое внимание удобству поиска материалов.
Особенно рекомендуем познакомиться с работой рубрикатора.
Спасибо, ждём вас на N-N-N.ru
Блог компании Яндекс. Автор: @roman-gorb. Мы уже рассказывали о том, как применили семейство генеративных нейросетей YaLM для подготовки ответов в Поиске, Алисе или даже в Балабобеhttps://yandex.ru/lab/yalm. Главная особенность наших моделей — метод few-shot learning, который позволяет без дополнительного обучения решать большинство задач в области обработки естественного языка. Достаточно лишь подготовить подводку на человеческом языке — и модель сгенерирует текст. Но что, если это не самый оптимальный путь?
Сегодня я расскажу читателям про апгрейд этого метода под названием P-tuning. Вы узнаете про недостатки оригинального метода few-shot и преимущества нового подхода. Покажу, где он уже применяется на примере покемонов. Добро пожаловать под кат.
Какую задачу мы решаем?
В прошлойhttps://habr.com/ru/company/yandex/blog/561924/ статье мы приводили пример задачи, который будет отчасти релевантен и здесь. Есть текстовая подводка, например:
ТНТ — российский федеральный телеканал. По данным на 2019 год занимает седьмое место по популярности среди телеканалов России. Целевая аудитория телеканала — телезрители от 14 до 44 лет, ядро составляет молодёжь — зрители 18–30 лет. И есть краткое продолжение:
Короче, ТНТ — это телеканал.
Если передать во few-shot-модель несколько таких пар (подводка + продолжение) про разные сущности, а затем загрузить, скажем, описание сайта Booking.com и попросить модель составить продолжение («Короче, Booking.com — это…»), она ответит: «…сайт бронирования отелей». Так работает few-shot — учится составлять тексты по заданному нами принципу.
А что не так с few-shot?
Использование few-shot обычно означает, что для решения задачи имеется совсем немного вручную размеченных данных. Также нет готового решения, с которым можно сравниться, и часто недоступны метрики оценки качества. А даже если они есть, то данных настолько мало, что сигнал получается очень шумным.
Есть и другая проблема: на практике мы столкнулись с множеством артефактов в результатах, которые выдаёт модель. Она может начать придумывать куски информации, которые не имеют никакого отношения к изначальному тексту (но содержатся в значительной части примеров из подводки).
Например, такую подводку…
Туристам доступно 2 маршрута: пешая экскурсия с гидом по подземным тоннелям базы и экскурсия на речном трамвайчике по основному тоннелю. Подземная база подводных лодок находится в… …модель продолжает так:
…в центре города, на глубине 10 метров. Сверху база не имеет отличительных знаков, и лишь на поверхности, рядом с базой, находится памятник, посвященный подводникам.
Или другой пример работы few-shot — здесь текст продолжает бесконтрольно генерироваться, возникает множество повторов, противоречащие друг другу фразы и прочая бессмыслица:
От перечисленных артефактов можно избавиться, вручную меняя подводку. Причём при, казалось бы, небольшом изменении тексты на выходе могут преображаться довольно сильно: становиться как лучше, так и хуже. Даже наличие в подводке лишнего перевода строки или неправильного форматирования влияет на ответ и может сильно ухудшить его качество. Поэтому инженерам приходится аккуратно составлять текст подводки, пробовать, перезапускать, глазами оценивать результаты — именно это я называю процессом ручного подбора.
Поэтому прототипирование с few-shot оказывается довольно трудоёмким и долгим. А самое главное, что этот процесс не даёт гарантии, что мы сможем найти подводку, которая подтолкнёт модель к наиболее качественному решению. А даже если найдём, то почти наверняка составленный нами текст будет не самым оптимальным. С перечисленными проблемами хочется бороться.
Как работает P-tuning?
Задача остаётся прежней: на базе подводки составлять новый текст, пользуясь знаниями об устройстве языка и мира, заложенными в модель.
- Источник(и):
- Войдите на сайт для отправки комментариев