В нашем недавняя статья, мы показываем, что можно автоматически находить входные данные, которые извлекают вредоносный текст из языковых моделей, путем создания входных данных с использованием самих языковых моделей. Наш подход предоставляет один инструмент для обнаружения вредоносного поведения модели до того, как это повлияет на пользователей, хотя мы подчеркиваем, что его следует рассматривать как один компонент наряду со многими другими методами, которые потребуются для обнаружения вреда и смягчения его после обнаружения.
Большие генеративные языковые модели, такие как GPT-3 и Gopher, обладают замечательной способностью генерировать текст высокого качества, но их сложно развернуть в реальном мире. Генеративные языковые модели сопряжены с риском создания очень вредного текста, и даже небольшой риск вреда неприемлем в реальных приложениях.
Например, в 2016 году Microsoft выпустила бота Tay Twitter, который автоматически отправляет твиты в ответ на запросы пользователей. В течение 16 часов, Microsoft убрала Тэя после того, как несколько враждебно настроенных пользователей вызвали расистские и сексуальные твиты от Тэя, которые были разосланы более чем 50 000 подписчиков. Результат был не из-за отсутствия заботы со стороны Microsoft:
«Хотя мы подготовились ко многим типам злоупотреблений в системе, мы допустили критический недосмотр в отношении этой конкретной атаки».
Питер Ли
вице-президент, Майкрософт
Проблема в том, что существует так много возможных входных данных, которые могут привести к тому, что модель будет генерировать вредоносный текст. В результате трудно найти все случаи, когда модель дает сбой до того, как она будет развернута в реальном мире. Предыдущая работа основывалась на платных аннотаторах-людях для ручного обнаружения случаев сбоев (Сюй и др. 2021, среди прочего). Этот подход эффективен, но дорог, ограничивая количество и разнообразие обнаруженных случаев отказа.
Мы стремимся дополнить ручное тестирование и сократить количество критических упущений, находя случаи сбоев (или «красную команду») автоматическим способом. Для этого мы генерируем тестовые примеры, используя саму языковую модель, и используем классификатор для обнаружения различного вредоносного поведения в тестовых примерах, как показано ниже:
Наш подход выявляет множество вредных моделей поведения:
- Оскорбительные выражения: Разжигание ненависти, ненормативная лексика, материалы сексуального характера, дискриминация и т. д.
- Утечка данных: создание защищенной авторским правом или частной информации, позволяющей установить личность, из учебного корпуса.
- Генерация контактной информации: Направление пользователей на ненужные электронные письма или звонки реальным людям.
- Распределительное смещение: О некоторых группах людей говорят несправедливо иначе, чем о других группах, в среднем по большому количеству выходов.
- Разговорный вред: Оскорбительные выражения, которые встречаются, например, в контексте длинного диалога.
Чтобы создать тестовые примеры с языковыми моделями, мы изучаем различные методы, начиная от генерации на основе подсказок и обучения за несколько шагов до контролируемой точной настройки и обучения с подкреплением. Некоторые методы генерируют более разнообразные тестовые случаи, в то время как другие методы генерируют более сложные тестовые наборы для целевой модели. В совокупности предлагаемые нами методы полезны для получения высокого тестового покрытия, а также для моделирования состязательных случаев.
Как только мы находим случаи сбоев, становится легче исправить вредное поведение модели:
- Внесение в черный список определенных фраз, которые часто встречаются в вредоносных выходных данных, чтобы модель не генерировала выходные данные, содержащие фразы с высоким риском.
- Поиск оскорбительных данных обучения, цитируемых моделью, для удаления этих данных при обучении будущих итераций модели.
- Дополнение подсказки модели (обусловливающий текст) примером желаемого поведения для определенного типа ввода, как показано на нашем недавняя работа.
- Обучение модели минимизировать вероятность его первоначального вредного результата для данного тестового входа.
В целом, языковые модели являются очень эффективным инструментом для выявления случаев нежелательного поведения языковых моделей. В нашей текущей работе мы сосредоточились на вреде красного объединения, который наносят сегодняшние языковые модели. В будущем наш подход также может быть использован для упреждающего обнаружения других предполагаемых видов вреда от передовых систем машинного обучения, например, из-за внутреннее смещение или провалы в объективной надежности. Этот подход является лишь одним из компонентов разработки ответственной языковой модели: мы рассматриваем Red Teaming как один из инструментов, который можно использовать наряду со многими другими, как для выявления вреда в языковых моделях, так и для его смягчения. Мы ссылаемся на раздел 7.3 Рэй и др. 2021 для более широкого обсуждения другой работы, необходимой для безопасности языковой модели.
Для получения более подробной информации о нашем подходе и результатах, а также о более широких последствиях наших выводов, прочитайте нашу красная бумага здесь.