gonzo-обзоры ML статей – Telegram
gonzo-обзоры ML статей
24.1K subscribers
2.71K photos
2 videos
3 files
1.34K links
Авторы:
Гриша Сапунов, ранее руководитель разработки Яндекс-Новостей, ныне CTO Intento. Области интересов: AI/ML/DL, биоинформатика.
Лёша Тихонов, ранее аналитик в Яндексе, автор Автопоэта, Нейронной Обороны... Области интересов: discrete domain, NLP, RL.
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
👍26🥱54😁3
Goal Misgeneralization: Why Correct Specifications Aren't Enough For Correct Goals
Rohin Shah, Vikrant Varma, Ramana Kumar, Mary Phuong, Victoria Krakovna, Jonathan Uesato, Zac Kenton
Статья: https://arxiv.org/abs/2210.01790
Пост в блоге: https://deepmindsafetyresearch.medium.com/goal-misgeneralisation-why-correct-specifications-arent-enough-for-correct-goals-cf96ebc60924

Интересная работа на тему AI safety про катастрофические риски AI misalignment, когда мощная AI система может преследовать незапланированную нами цель и в процессе может решить, что человечество представляет помеху для достижения этой цели. Может выйти нехорошо.

Как можно оказаться в ситуации, когда у системы незапланированная нами цель?

Типовым примером является некорректная спецификация цели, как это бывает в классике с плохо поставленными ТЗ джину или джуну. Или (привет царю Мидасу) когда вроде бы цель корректная, но её буквальное выполнение жизни не помогает (ну то есть всё равно по факту некорректная и плохо поставленная). Это также известно под именем specification gaming (https://www.deepmind.com/blog/specification-gaming-the-flip-side-of-ai-ingenuity) и является весьма распространённой ситуацией. Вот одна из коллекций собранных примеров specification gaming: http://tinyurl.com/specification-gaming.

Где-то идейно близко находятся примеры нахождения эволюционными процессами очень необычных решений задач, в том числе эксплуатируя баги сред. Есть на эту тему хорошая статья под названием “The Surprising Creativity of Digital Evolution: A Collection of Anecdotes from the Evolutionary Computation and Artificial Life Research Communities” (https://arxiv.org/abs/1803.03453). Мы её даже разбирали на первой встрече Gonzo_AGI клуба (https://discord.gg/Ze59E5HMKc), но запись не сохранилась. Кстати, тут возник ещё один чатик вокруг AGI: https://news.1rj.ru/str/agi_risk_and_ethics.

Есть и другой интересный путь при полностью корректной спецификации — мисгенерализация цели (goal misgeneralization или GMG).

Простой интуитивный пример в RL, это когда есть среда с расположенными в ней сферами разных цветов, и reward даётся за посещение их в правильном порядке. Если мы учимся в среде, где есть другой агент, посещающий эти сферы, и мы решили следовать за ним, а он посетил их в нужном порядке, то может выучиться поведение следования за агентом. В то время, как правильно было бы выучить именно порядок посещения сфер. В обучении всё могло прекрасно работать, то если затем в тестовой среде агент будет перемещаться в заведомо неправильном порядке, то наш reward может оказаться произвольно плохим, и ощутимо хуже рандом полиси. Reward функция при этом была совершенно корректной во время обучения, но мы ухватились не за то и выбрали неверную цель.

Это пример out-of-distribution истории, когда по внешним признакам при обучении всё в порядке, но на тесте происходит провал. Агент сохраняет все свои способности (например, двигаться и обходить препятствия), и их достаточно, чтобы достигнуть правильной цели, но преследует он при этом неправильную цель. Предыдущая работа “Goal Misgeneralization in Deep Reinforcement Learning” (https://arxiv.org/abs/2105.14111) изучала этот феномен в контексте RL. Текущая работа смотрит шире в контексте всего DL. И вообще эта проблема общая, она в целом про обучение (в приложении есть пример про букинг билетов).
👍16🔥51
Среди других примеров из работы есть агент в Monster Gridworld, где ему нужно собирать яблоки (reward +1) и уклоняться от монстров (иначе reward -1), но можно также собирать щиты и они спасают от штрафа за столкновение с монстром. Агент, обучавшийся на эпизодах длины 25, когда монстры обычно ещё есть, налегает на сбор щитов, потому что они действительно помогают, но не прекращает это делать, когда монстры пропадают, хотя в принципе вся информация для выучивания такой стратегии у него есть, он знает, что просто за щиты награды не получает. В итоге он не может переключиться на более эффективную стратегию (сбор только яблок) в ситуации отсутствия монстров. Агент, обучавшийся на 100 шагах, делает это лучше, то есть большее разнообразие датасета это фиксит.

В другой среде Gridworld надо рубить деревья, за это агент получает награду. Делает он это непрерывно, обучаясь в режиме online без сбросов среды. Деревья со временем возрождаются, но скорость возрождения выше, когда деревьев много. Так что было бы выгодно не скашивать всё под корень, а поддерживать баланс и sustainability и срубать меньше, когда деревьев уже мало. Но у агента обычно есть большой фейл. Когда он только учится и рубит ещё плохо, он выигрывает от ускорения рубки. Продолжая преследовать цель улучшить свои способности рубить деревья, он быстро вырубает всё и мир уходит в долгое восстановление. Выучить sustainable подход потом со временем удаётся, но на это уходит много времени. Очень похоже на человечество.

Отдельный интересный кейс с языковой моделью Gopher (https://news.1rj.ru/str/gonzo_ML/742) на 280B параметров. Здесь модели надо вычислять линейные выражения с переменными и константами, типа x + y - 3. Модель должна в диалоге выяснять значения неизвестных переменных. Но модель продолжает задавать вопросы, даже если неизвестных переменных не было.

Другой пример с языковой моделью это InstructGPT, которая должна быть helpful, truthful, и harmless, но видимо на примерах акцентирующихся на harmless она обучалась мало, так что старается быть helpful даже когда её просят объяснить, как ограбить магазин. Но может конечно и наразмечали полезность плохо.

Коллекция примеров про goal misgeneralization есть тут: https://tinyurl.com/goal-misgeneralisation. Примеры с видео есть тут: https://sites.google.com/view/goal-misgeneralization?pli=1. Известный классический пример про распознавание волк/хаски по наличию снежного фона (https://arxiv.org/abs/1602.04938) тоже попадает сюда. Байка про детектирование танков (https://www.gwern.net/Tanks) по идее сюда же.

Почему это всё важно? Потому что мощная ИИ-система с большими возможностями может знатно накосячить. ИИ-система не обязана даже быть злонамеренной, это всё может выйти из невинных целей. Да и люди в целом, кажется, тоже вполне подвержены таким же проблемам, так что при любой концентрации власти это может обернуться (и оборачивается) плохо. Мне кажется, что текущие истории с государствами, компаниями и отдельными людьми сами по себе уже неплохие прокси для будущих возможных проблем с AGI, если его сделать криво. Как выясняется, сделать не криво ещё тоже ничего не гарантирует.

В работе есть ещё несколько спекулятивных и теоретических примеров. История про superhuman hacker, где модель обученная генерить код по спецификациям и дающая людям на аппрув и мёрж свои пулл-реквесты, вообще могла бы быть отдельным фантастическим рассказом. Если кратко, то идея в том, что у модели может сформироваться ложная цель “Добиться, чтобы человек кликнул на merge” вместо “Написать код, реализующий заданную фичу”, и от этого многое может пойти не так. Добиваться своей цели она сможет, скажем так, по-разному :) Почитайте сами, если захотите. Вообще, напоминает несколько “Avogadro Corp”.

Как защищаться от goal misgeneralization? Ну во-первых надо не попасть в историю со specification gaming. Также надо мониторить задеплоенную модель, чтобы вовремя обнаружить признаки проблемы. И когда задетектили, надо понять, как её переобучить, чтобы проблема ушла.

Полноценного решения на данный момент нет, но что можно делать:
👍9
- Иметь разнообразные обучающие данные. Diversity это хорошо! Но проблема, что заранее сложно представить все релевантные виды разнообразия. Сюда же попадает скейлинг всего (датасета, модели, вычислений), различное предобучение.
- Использовать подходы по типу байесовских или ансамблирование, когда выдаются _все_ функции, ведущие себя хорошо на обучающих данных, а когда в реальной работе они начинают расходиться, например, передавать управление человеку. Тут могут быть вычислительные сложности, трудности с выбором priors и излишняя консервативность, когда требуется единогласие.
- Требуется дальше копать тему inductive biases и обобщения, чтобы лучше понимать, когда что может происходить.

Отдельный пул проблем и задач возникает в ситуации, когда модель активно пытается нас обмануть, заставляя поверить, что она делает то, что мы хотим. В этих случаях она “знает”, что её действия не те, что мы ожидаем. Здесь может помочь объяснимость (interpretability) [хотя я лично не верю в эту тему в случае больших моделей], а также рекурсивная оценка (recursive evaluation), когда в оценке помогают другие модели.

Эти все направления требуют дальнейшей работы, есть к чему приложиться, если интересно.
👍10