Federated learning — метод, при котором модель обучается на распределённых данных у пользователей, не собирая их на сервер и сохраняя приватность.
Определение
Federated learning — это способ обучения, при котором данные остаются на локальных устройствах (смартфоны, корпоративные серверы, IoT-устройства), а на центральный сервер отправляются только градиенты или обновления модели. Центральная система агрегирует эти обновления, улучшает общую модель и отправляет её обратно без доступа к исходным данным.
Метод разработан для случаев, когда данные нельзя передавать по юридическим, приватным или техническим причинам.
Как работает
Federated learning реализуется циклично, с распределённым обучением и центральной агрегацией. Общая схема:
- инициализация модели — базовая версия отправляется на устройства;
- локальное обучение — каждое устройство обучает модель на своих данных;
- выгрузка обновлений — устройство отправляет изменения параметров, а не данные;
- агрегация — сервер объединяет обновления (часто методом FedAvg);
- обновлённая модель — переработанная версия возвращается на устройства;
- новый цикл — процесс повторяется до достижения качества.
Дополнительные механизмы:
- обфускация обновлений;
- дифференциальная приватность;
- secure aggregation — агрегация обновлений без раскрытия отдельных вкладов;
- квантование и сжатие обновлений для экономии трафика;
- устойчивые методы оптимизации при разнородных данных.
Где применяется
- Мобильные устройства: обучение клавиатур, предсказания текста, персональных моделей.
- Корпоративные системы с чувствительными данными.
- Медицина: обучение на локальных медицинских данных.
- Финансы: анализ транзакций без централизованного сбора.
- IoT-системы: датчики и локальные станции с ограниченной передачей данных.
- Персонализированные рекомендации.
- Модели для работы в распределённых сетях.
Практические примеры использования
В мобильных клавиатурах federated learning обучает модели предсказания текста на пользовательских вводах. Личные данные остаются на устройстве, а система получает только обновления параметров.
В медицинских проектах больницы обучают локальные копии модели на частных данных пациентов, а сервер агрегирует только изменения весов, не видя самих записей.
В корпоративных сценариях federated learning используется для анализа документов, логов и пользовательского поведения — данные не покидают защищённый контур, но глобальная модель улучшается.
В IoT-сетях устройства обучают модели на локальных сенсорных данных: температуры, звуки, вибрации. Сервер собирает обновления и формирует улучшенную общую модель.
Преимущества и ограничения
- Плюс: приватность данных — отсутствует передача исходной информации.
- Плюс: масштабируемость — обучение на множестве устройств.
- Плюс: персонализация под локальные данные.
- Плюс: снижение нагрузки на центральные хранилища.
- Минус: разнородность данных ухудшает стабильность обучения.
- Минус: высокая чувствительность к качеству агрегирования.
- Минус: возможные атаки на обновления модели.
- Минус: требуются дополнительные меры приватности.
Связанные термины
- Continual learning
- Transfer learning
- Domain adaptation
- Differential privacy
- Secure aggregation
- Model robustness
- Distributed training