Исследования14 октября 2026 г., 23:17 МСК🤖 Auto

Feature Election: Выбор признаков в Federated Learning без обмена данными

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

Баннер новости 9663

Проблема FedAvg и лишнего шума

В горизонтальном федеративном обучении (HFL), где данные распределены между узлами (например, больницами), стандартный алгоритм FedAvg усредняет веса моделей. Главная проблема: если на одном узле есть нерелевантные признаки, они «путешествуют» с обновлениями весов, добавляя шум. Для узлов с меньшим объемом данных этот шум ощущается сильнее, снижая общую точность модели. Традиционные методы отбора признаков (Lasso, Random Forest) требуют объединения таблиц, что в HFL невозможно из-за приватности.

Суть метода Feature Election

Предложенный метод не требует новых криптографических протоколов или сложных архитектур. Каждый узел запускает знакомый локальный селектор признаков (например, Lasso или Mutual Information), получая бинарную маску (выбран/не выбран) и вектор оценок важности. Сервер не видит данных, только эти метаданные. Решение принимается через взвешенное голосование:

  • Интерсекция: Признаки, выбранные всеми узлами, сохраняются автоматически.
  • Уния: Признаки, отвергнутые всеми, удаляются.
  • Спорная зона: Признаки, по которым есть разногласия, оцениваются по агрегированному голосу, где вес узла пропорционален количеству его строк данных ($n_i$).

Параметр «Freedom Degree» (fd)

Ключевой параметр $fd \in [0, 1]$ контролирует строгость отбора:

  • $fd = 0$: Работает правило вето. В модель попадают только признаки, единогласно одобренные всеми узлами (максимальная строгость, риск потери полезных признаков).
  • $fd = 1$: Работает правило объединения. В модель попадают все признаки, хоть кем-то рекомендованные (риск попадания шума).
  • $fd \in (0, 1)$: Сервер нормализует оценки каждого узла в диапазон [0, 1], вычисляет взвешенный голос $V = \sum w_i \cdot M_i$ и оставляет топ-$k$ признаков из спорной группы.

Пример расчета

Рассмотрим три узла с долями данных 50%, 30% и 20%. При $fd = 0.4$ из спорной группы (3 признака) сервер оставляет 2 лучших. Если признак f2 получил высокие оценки от крупных узлов, он победит, даже если мелкий узел его проигнорировал. Это предотвращает доминирование «шумных» строгих селекторов малых узлов.

Признак Статус узлов Агрегированный голос (V) Результат при fd=0.4
f1 Выбран всеми (Интерсекция) n/a Оставлен
f2 Выбран C1, C2 0.69 Оставлен (Ранг 1)
f3 Выбран C2, C3 0.46 Оставлен (Ранг 2)
f4 Выбран только C3 0.19 Отклонен

Практическая реализация и результаты

Метод реализован как плагин для NVIDIA FLARE (через FeatureElectionController) и совместим с фреймворком Flower. Алгоритм использует стандартные библиотеки (NumPy) для локальной обработки, а сервер лишь агрегирует маски и оценки. Это позволяет интегрировать Feature Election в существующие пайплайны FedAvg без изменения архитектуры передачи градиентов. Исследователи отмечают снижение размера модели и улучшение метрики F1 по сравнению с базовым подходом, где отбор признаков не производится.

Источник: Towards Data Science ↗