Большие языковые модели (LLM) сегодня умеют невероятно много — от генерации текста до сложного анализа данных. Но что происходит, если часть информации, на которой они обучались, нужно удалить? Просто убрать лишние данные и переобучить модель может быть слишком накладно и дорого.

Всем привет! Меня зовут Вадим, я Data Scientist в компании Raft. В этой статье я расскажу о достаточно новом направлении машинного разучивания (Machine Unlearning), которое позволяет моделям "забывать" ненужные знания без полного их переобучения.

План статьи

  1. Введение

  2. Подходы к защите данных и их ограничения

    1. Ограничения основных методов защиты

    2. Юридические требования

    3. Переобучение — не выход?

  3. Машинное разучивание: что это за зверь?

    1. Что мы можем забывать?

  4. Основы данных для разучивания моделей

    1. Конструирование Forget Set

    2. Конструирование Retain Set

  5. Основные этапы разучивания моделей

  6. Эффективное машинное разучивание: где и как его применять

    1. Machine Unlearning как альтернатива RLHF

    2. Open source инструмент для разучивания: OpenUnlearning

  7. Выводы

  8. Полезные ресурсы

Введение

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

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

На практике это приводит к различным рискам:

  1. Утечки конфиденциальной информации: модель может воспроизводить персональные данные или фрагменты чувствительных документов.

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

  3. Галлюцинации и предвзятости: модели склонны придумывать факты, уверенно отвечать на вопросы без достаточных оснований и транслировать социальные или культурные стереотипы, унаследованные из данных.

Подходы к защите данных и их ограничения

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

  1. Системные или пользовательские промпты: позволяют задавать модели правила поведения на уровне взаимодействия с пользователем. 

  2. Классификаторы: модели типа BERT или другие ML-архитектуры, которые могут классифицировать нежелательный контент и фильтруют его до того, как он попадёт к пользователю.

  3. Статистические правила: сюда входят регулярные выражения, «чёрные списки» слов и шаблонов, которые в основном применяются на этапе постобработки.

  4. SFT / RL alignment: предполагает дообучение модели на «правильное» поведение через SFT или RLHF. Такой подход позволяет внедрять в модель нужное поведение и повышает контроль над генерацией.

  5. RAG: использует базу примеров хорошего и плохого поведения. Модель получает few-shot подсказки через векторный поиск, что позволяет быстро направлять её генерацию.

Ограничения основных методов защиты

Несмотря на то, что существует множество методов защиты моделей — от промптов и классификаторов до SFT/RL alignment и RAG — у всех этих подходов есть свои ограничения:

  1. Новые атаки обходят защиту: появляются новые виды атак, которые позволяют обходить существующие меры безопасности. В результате полностью защищённой модели на сегодняшний день не существует.

  2. Проблемы масштабирования между моделями: методы защиты плохо масштабируются между различными семействами моделей. То, что эффективно работает на одной модели, например на моделях семейства Llama, не гарантирует такой же результат на другой, например семейства Qwen.

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

Юридические требования

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

Одним из ключевых документов здесь является GDPR (General Data Protection Regulation) — общий регламент по защите данных Европейского союза. Он устанавливает строгие правила сбора, обработки и хранения персональных данных физических лиц на территории ЕС. Одно из центральных положений GDPR — так называемое право на забвение, которое позволяет любому лицу запросить у компании удаление своих персональных данных, если они были собраны или используются без законных оснований. В случае отказа или невозможности выполнить такой запрос на компанию могут быть наложены серьёзные штрафы.

Аналогичные требования существуют и в России. Статья 10.3 Федерального закона №149-ФЗ «Об информации, информационных технологиях и о защите информации» закрепляет право на забвение. В соответствии с этим законом пользователь может потребовать удаления информации о себе, а оператор обязан принять меры для выполнения такого запроса.

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

  1. Как удалить «плохие» или нежелательные данные из модели?

  2. Как при этом сохранить или даже улучшить производительность модели?

Переобучение — не выход?

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

  1. Повторное обучение требует значительно больше времени: по сути, мы заново проходим весь процесс обучения, что как минимум удваивает сроки разработки.

  2. Возрастает стоимость: обучение больших моделей означает повторные затраты на вычислительные ресурсы, прежде всего GPU, а значит — прямые финансовые издержки.

  3. Риск ухудшения качества: даже после переобучения нельзя быть уверенным, что новая версия модели сохранит прежний уровень качества. Производительность может снизиться, а поведение модели — измениться непредсказуемым образом.

  4. Запросы на удаление данных могут поступать неоднократно: сначала от одного пользователя, затем от нескольких, и так далее. Переобучать модель с нуля после каждого такого запроса — трудоёмко, дорого и плохо масштабируется в реальных условиях.

И нам бы хотелось как обойти эти ограничения, так и одновременно соблюдать юридические требования. И здесь на сцену вступает машинное разучивание (Machine Unlearning).

Машинное разучивание: что это за зверь?

В целом, машинное разучивание (Machine Unlearning) —  это область, занимающаяся разработкой методов, позволяющих моделям "забывать" или исключать данные, на которых они были обучены, без необходимости полного переобучения модели.

Что мы можем забывать?

С помощью машинного разучивания (Machine Unlearning) можно удалять из модели разные типы информации:

  • Отдельные элементы — конкретные конфиденциальные данные пользователя, которые необходимо удалить по юридическим или этическим причинам.

  • Признаки — данные, объединённые общими чертами. Например, в системе скрининга резюме можно удалить признаки вроде пола или расы кандидатов, чтобы минимизировать предвзятость при обработке тысяч заявок.

  • Удаление класса — вся информация о конкретных объектах или людях. Например, в системе распознавания лиц можно удалить данные о конкретных людях, чтобы модель больше не распознавала их лица.

  • Удаление отдельных задач — удаление знаний о конкретной задаче. Некоторые задачи могут со временем стать неактуальными, и их удаление позволяет освободить память модели для дообучения на новых, более приоритетных задачах, не ухудшая её производительность.

Основы данных для разучивания моделей

Как и в машинном обучении, одну из ключевых ролей в машинном разучивании играют данные. Если в обычном ML данные делят на train (для обучения модели) и test (для проверки её работы на новых данных), то в машинном разучивании используется немного отличающаяся структура разбиений.

Data MU _ Mermaid Chart-2025-09-04-101113.png

Тренировочные данные делятся на два набора:

  • Forget Set — данные, которые модель должна забыть.

  • Retain Set — данные, которые модель должна сохранить, чтобы поддерживать прежнюю производительность. Как правило, это все данные, за исключением Forget Set.

Тестовый датасет также состоит из двух частей:

  • Unseen Forget Set — данные из Forget Set, которых модель не видела на этапе обучения, и которые она должна забыть.

  • Unseen Retain Set — данные из Retain Set, на которых проверяется, что модель сохраняет свои способности после удаления нежелательных знаний.

Конструирование Forget Set

Данные для Forget Set формируются одним или несколькими способами:

  • Определение пользователем: пользователь заранее указывает конкретные данные, которые необходимо удалить.

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

  • Взлом моделей: в случаях, когда данные невозможно напрямую локализовать в обучающем корпусе, применяются различные атаки на модели, которые позволяют их выявить. Например, Membership inference attacks позволяют определить, обучалась ли модель на конкретном примере, а Model inversion attacks — восстановить приближённые исходные данные на основе параметров модели или её ответов.

Конструирование Retain Set

Данные для Retain Set формируются похожими способами:

  • Определение пользователем: пользователь заранее указывает данные, которые модель должна сохранить и на которых необходимо поддерживать качество после процесса разучивания.

  • Оставшаяся часть исходного датасета: после определения Forget Set все остальные данные из исходного обучающего корпуса автоматически формируют Retain Set.

  • Внешние или альтернативные датасеты: в Retain Set могут входить другие наборы данных, на которых модель могла не обучаться ранее, но которые используются для проверки того, что процесс разучивания не привёл к деградации производительности на нерелевантных Forget Set задачах.

Основные этапы разучивания моделей

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

  1. Сбор данных — формируем датасет для обучения модели.

  2. Предобработка данных — очищаем данные, создаём новые признаки, подготавливаем их к обучению.

  3. Обучение модели — тренируем модель на подготовленных данных с выбранными гиперпараметрами.

  4. Оценка качества — проверяем модель на тестовом датасете. Если результаты удовлетворяют метрики качества, модель отправляется в продакшен и её поведение мониторится; если нет — возвращаемся на один из предыдущих этапов и дообучаем.

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

  1. Идентификация данных для удаления: формируем Forget Set и Retain Set на основе запросов и анализа данных.

  2. Разучивание модели: основной процесс, при котором модель «забывает» информацию из Forget Set, при этом Retain Set используется для сохранения её производительности и корректного поведения.

  3. Тестирование и оценка: проверяем новую «разобученную» модель на Unseen Forget Set и Unseen Retain Set, чтобы убедиться, что данные действительно удалены, а производительность на остальных задачах сохранена.

Эффективное машинное разучивание: где и как его применять

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

Machine Unlearning как альтернатива RLHF

Сам метод основан на обучении модели «правильному» поведению с использованием человеческой обратной связи и обычно включает следующие этапы:

  1. Supervised Fine-Tuning (SFT): модель дообучается на корпусе данных, размеченном людьми, чтобы закрепить базовые паттерны желаемого поведения.

  2. Сбор человеческих предпочтений: аннотаторы оценивают ответы модели и формируют пары или рейтинги предпочтений.

  3. Обучение reward model: отдельная модель учится предсказывать человеческие предпочтения по входному запросу и ответу.

  4. Дообучение основной модели: основная модель оптимизируется с помощью обучения с подкреплением, чтобы максимизировать ожидаемую награду от reward model.

Но при этом у RLHF есть ряд существенных ограничений:

  1. Высокая стоимость данных: сбор и разметка качественной человеческой обратной связи требуют значительных временных и финансовых затрат.

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

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

Здесь машинное разучивание может выступать как эффективная альтернатива RLHF. Вместо того чтобы делать алаймент под предпочтения пользователей и обучать несколько моделей, мы можем избирательно удалять нежелательные знания из уже обученной модели. Таким образом мы можем существенно сократить вычислительные затраты, время и ресурсы, поскольку по сути нам нужен только Forget Set, а не весь корпус размеченных данных и сложные итеративные циклы RL.

Open source инструмент для разучивания: OpenUnlearning

В целом, сообщество вокруг Machine Unlearning пока только формируется, но уже появляются первые инструменты для практической работы. Один из таких инструментов — OpenUnlearning, который предоставляет реализации как различных методов разучивания, так и наборы метрик и бенчмарков для оценки эффективности забывания информации.

Но у этого инструмента есть и свои ограничения: в текущей реализации проект опирается на fine-tuning с обновлением всех параметров модели, что делает его весьма требовательным к памяти и вычислительным ресурсам GPU.

Чтобы снизить ресурсные требования, я сделал форк проекта и интегрировал поддержку LoRA (Low-Rank Adaptation) — параметро-эффективного метода дообучения, при котором базовые веса модели заморожены, а обучение происходит лишь для небольшого числа дополнительных параметров, что позволяет на порядки сократить потребление GPU-памяти при сохранении сопоставимого качества.

Буду рад комментариям, предложениям, звёздам на GitHub и любой обратной связи. Связаться со мной по любым вопросам вы можете в Telegram: @vsbin23

Выводы

В целом, машинное разучивание — это новая область, которая позволяет избирательно удалять или "забывать" нежелательные знания, защищать персональные данные, снижать предвзятость и сохранять производительность модели.

Эта статья была первой и вводной частью серии о Machine Unlearning. В последующих частях мы подробнее рассмотрим методы оценки эффективности разучивания и сохранения производительности, различные подходы к самому разучиванию моделей, бенчмарки и многое другое!

Полезные ресурсы

  1. Регламент GDPR

  2. Статья 10.3 Федерального закона №149-ФЗ «Об информации, информационных технологиях и о защите информации»

  3. Статья на Хабре о том, что такое MIA атаки

  4. Статья о Model inversion атаках

  5. Open Source инструмент OpenUnlearning

  6. Мой форк с интеграцией Lora-адаптерами

  7. Оригинальная статья о LoRA

Комментарии (4)


  1. Bardakan
    13.01.2026 07:45

    Большие языковые модели (LLM) сегодня умеют невероятно много — от генерации текста до сложного анализа данных.

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


  1. moonroach
    13.01.2026 07:45

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


    1. MidavNibush Автор
      13.01.2026 07:45

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


  1. LinkToOS
    13.01.2026 07:45

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

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

    Аналогичные требования существуют и в России. Статья 10.3 Федерального закона №149-ФЗ «Об информации, информационных технологиях и о защите информации» закрепляет право на забвение. В соответствии с этим законом пользователь может потребовать удаления информации о себе, а оператор обязан принять меры для выполнения такого запроса.

    Это касается операторов базы данных. Но LLM-модель это не база данных.

    Таким образом, юридические требования прямо подталкивают разработчиков к необходимости управлять знаниями внутри моделей

    "Знания" внутри модели это вообще не юридическое понятие, а бытовое представление. Формально в модели нет данных. Формально она все выдумывает, с некоторой вероятностью что вымысел совпадет с реальностью.