Хаб / Материалы / Архитектура
Архитектура30 июня 20269 минут

Федеративное обучение: как учиться на чужом опыте, не отдавая свои документы

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

Локальный контур имеет встроенный недостаток: он знает ровно столько, сколько лежит у вас. Облачный сервис, наоборот, учится на всех сразу — и именно поэтому его нельзя пускать к вашим документам. Федеративное обучение — попытка получить первое, не заплатив вторым.

Сразу оговорка: у нас это долгосрочная стратегия, а не работающая сегодня функция. Ниже — как оно спроектировано и почему именно так, а не отчёт о внедрении.

Идея в одном абзаце

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

Технически речь про LoRA — низкоранговые адаптеры. Вместо переучивания всей модели обучается небольшой дополнительный блок; он же и передаётся. Файл получается компактным, что важно, когда канал между узлами — это не датацентровая сеть, а обычный VPN.

Почему контуры разделены

Архитектура намеренно разрезана на две части, которые не пересекаются.

Внешний контур (Control Plane). Hetzner — VPN-шлюз и хостинг лендинга; российский хостинг — транзитный шлюз и запасной путь на случай блокировок. Здесь ходит то, что не является данными заказчика: сайт, служебный трафик, управляющие сигналы.

Внутренний контур (Data Plane). Полигон CIPHER в Оренбурге — песочница, стенд и сбор дельт с обязательной проверкой. Узел в Уфе — чистое ядро, где дельты сводятся. Отдельный узел в Оренбурге — «холодная» копия с физическим разрывом связи. По этому контуру ходят только обезличенные веса.

Разделение сделано не из любви к схемам. Требование 152-ФЗ простое: персональные данные не должны утекать за рубеж. Пока в одном контуре может оказаться и зарубежный узел, и данные заказчика, никакие обещания не стоят ничего. Когда контуры физически разные, утверждение проверяется, а не декларируется.

Что проверяет юрист, а что инженер

Юрист смотрит на договор и на схему потоков. Инженер — на то, что схема соответствует конфигурации сети, а не рисунку в презентации. Второе проверяется тестом, и до внешнего теста okb-firewall мы не называем периметр проверенным.

Санитарный контроль дельт

У честной схемы есть неприятная деталь: веса — не совсем «безличные». В теории из градиентов можно частично восстановить обучающие данные — это известный класс атак, и делать вид, что его нет, было бы нечестно. Отсюда несколько требований, которые заложены в проект:

  • Дельты собираются на CIPHER и проходят проверку перед тем, как попасть в чистое ядро. Это сознательная «грязная зона» между заказчиком и ядром.
  • Агрегируем, а не пересылаем. В ядро уходит сумма по многим узлам, а не индивидуальный вклад одного заказчика.
  • Участие добровольное. Бокс, отключённый от обмена, работает ровно так же — просто не получает и не отдаёт обновления.
  • Антивирусный контроль (KES для Linux) на входе — потому что по этому каналу приходят файлы, а любой канал, по которому приходят файлы, рано или поздно попробуют использовать не по назначению.

В чём здесь наш интерес — прямым текстом

Мы не будем делать вид, что это чистая благотворительность. Сеть боксов даёт эффект, который невозможно воспроизвести в одиночку: отраслевая модель, видевшая закономерности сотни компаний одной ниши, отвечает лучше модели, видевшей одну. Заказчик, подключённый к такой сети, получает то, чего у него не будет на отдельно стоящем сервере, — и теряет это, если уходит.

Это называется vendor lock-in, и в нашем случае он честный: железо остаётся вашим, данные остаются вашими, модель продолжает работать. Теряется только доступ к коллективному улучшению. Мы предпочитаем сказать это прямо, а не спрятать в раздел «стратегия развития».

Статус на сегодня

  • Разделение контуров — спроектировано, маршрутизация внешнего контура работает.
  • Сбор и проверка дельт на CIPHER — стендовая задача, не продуктовая функция.
  • Отраслевых моделей, обученных на сети боксов, пока не существует: для этого нужна сама сеть, то есть несколько живых внедрений.

Если вам предлагают федеративное обучение как готовую функцию на первом внедрении — попросите показать вторую сторону обмена. Одному узлу федеративное обучение не нужно.

Коротко

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

Вопрос по этому материалу?
Напишите в бюро — отвечает тот же человек, который это собирал.
admin@heavylogic.su

Читать дальше

Все материалы →