Выпуклая оптимизация

Федеративная оптимизация

Как Google обучает предсказание текста на 500 миллионах смартфонов, не читая ни одного сообщения? Как больница может объединить медицинские данные с другими клиниками без нарушения GDPR? Федеративная оптимизация отвечает на этот вопрос - и создаёт целый новый класс математических задач.

  • **Google Gboard**: клавиатура на Android обучает языковую модель прямо на устройстве, сервер получает только зашифрованные обновления весов - личная переписка не покидает телефон
  • **Apple Siri и Face ID**: Apple использует FL для улучшения распознавания речи и лиц без загрузки биометрических данных на серверы
  • **Медицинские консорциумы (NVIDIA FLARE)**: больницы разных стран совместно обучают модели диагностики рака без передачи снимков пациентов - это стало возможным благодаря FL

Задача федеративной оптимизации

**Федеративное обучение (Federated Learning, FL)** - подход, при котором модель обучается на данных, распределённых по устройствам, при этом данные никогда не покидают своё устройство. Вместо данных на сервер передаются только обновления модели (градиенты или веса). Это решает проблемы конфиденциальности, но создаёт новые вызовы оптимизации.

В централизованном ML данные обычно i.i.d. (независимо и одинаково распределены). В FL распределение данных на разных клиентах радикально различается. Пример: на смартфоне пользователя - только его фотографии и сообщения. Это создаёт **client drift**: после нескольких локальных шагов веса клиентов расходятся в разных направлениях, и их среднее значение может быть хуже отправной точки.

Почему FL не решает проблему приватности полностью, даже если данные не покидают устройство?

FedAvg: параллельный SGD с усреднением

**FedAvg** (McMahan et al., 2017) - базовый алгоритм FL. Идея: вместо синхронного обмена градиентом после каждого шага, клиенты выполняют **E локальных шагов SGD**, а сервер раз в раунд агрегирует (усредняет) локальные модели. Это радикально сокращает число раундов коммуникации - с одного на итерацию до одного на E итераций.

FedAvg гарантированно сходится, если данные IID или число локальных шагов E=1 (что эквивалентно FedSGD). При non-IID данных и E > 1 могут возникать осцилляции или расходимость. Теоретически доказано, что ошибка FedAvg при non-IID имеет дополнительный член O(E² · Г²), где Г² = F* - Σᵢ pᵢ Fᵢ* - мера неоднородности между клиентами. Чем гетерогеннее клиенты, тем меньше должно быть E.

FedAvg с E=5 локальными эпохами сходится хуже, чем с E=1 при non-IID данных. Почему?

FedProx: проксимальная регуляризация для стабильности

**FedProx** (Li et al., 2020) решает проблему client drift добавлением **проксимального члена** к локальной задаче оптимизации. Этот штраф ограничивает отклонение локальных весов от глобальной модели, полученной от сервера в начале раунда.

**SCAFFOLD** (Karimireddy et al., 2020): использует контрольные переменные cᵢ для коррекции направления градиента. Клиент обновляется по ∇Fᵢ(w) - cᵢ + c, где c - глобальная контрольная переменная. Теоретически не имеет члена, зависящего от E. **FedNova** (Wang et al., 2020): нормализует локальные обновления по числу шагов перед усреднением - устраняет смещение из-за разного числа локальных итераций. **MOON** (Li et al., 2021): добавляет contrastive loss между локальным и глобальным представлениями - модельный уровень вместо весового.

При каком значении μ в FedProx мы получим поведение, близкое к обычному FedAvg?

Дифференциальная приватность в федеративном обучении

Даже без передачи данных FL уязвим к атакам: по градиентам можно восстановить обучающие примеры. **Дифференциальная приватность (DP)** даёт формальные математические гарантии: злоумышленник, наблюдая обновления модели, не может определить, участвовал ли конкретный пользователь в обучении.

DP создаёт **фундаментальный trade-off**: точность модели vs сила приватности. Чем меньше ε, тем больше шума, тем хуже модель. На практике: текстовые предсказания клавиатуры (Google Gboard) обучаются с ε ≈ 8-10 - пользователи получают приемлемое качество и существенную защиту. Для медицинских данных ε < 1 технически возможно, но требует миллионов участников.

Зачем в DP-SGD нужна обрезка градиентов (gradient clipping) перед добавлением шума?

Ключевые идеи

  • **FL задача**: min Σᵢ pᵢ·Fᵢ(w) - глобальная оптимизация по гетерогенным локальным функциям без доступа к данным
  • **FedAvg**: E локальных шагов SGD + усреднение весов; экономичен по коммуникации, но страдает от client drift при non-IID
  • **FedProx**: добавляет штраф μ/2‖w - wᵍ‖² - ограничивает client drift, улучшает устойчивость при гетерогенных данных
  • **DP в FL**: клиппинг + гауссов шум обеспечивает (ε,δ)-гарантии; trade-off между приватностью (малый ε) и точностью

Связанные темы

Федеративная оптимизация находится на пересечении распределённых алгоритмов и приватного ML:

  • Крупномасштабная оптимизация — FL - специальный случай распределённой оптимизации с ограничениями на коммуникацию и приватность
  • Дифференцируемое программирование — Персонализованный FL через bi-level схемы (pFedMe, Per-FedAvg) - приложение неявного дифференцирования
  • Байесовская оптимизация — Гиперпараметры FL (μ, E, C) настраиваются методами Bayesian Optimization без доступа к данным клиентов

Вопросы для размышления

  • В каких приложениях client drift менее критичен и FedAvg работает хорошо без дополнительных модификаций?
  • Как выбрать значение ε в DP зависит от угрозной модели. Какие угрозы актуальны для медицинских данных vs мобильных клавиатур?
  • Можно ли обеспечить приватность в FL без шума - например, через secure multi-party computation?

Связанные уроки

  • prob-05-independence
Федеративная оптимизация

0

1

Войти