Что такое федеративное обучение и зачем оно нужно?

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

Давайте рассмотрим пример федеративной системы обучения и объясним, зачем вам ее создавать:

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

Итак, вы идете в другую компанию/банк/больницу и просите показать их данные вашей модели, обещая им, что вы не какая-то злая ведьма,
но даже если вы уважительное лицо, они все равно могут это сделать. Я не могу показать их данные вашей модели по многим причинам.

Так что же делать 🤔

ну некоторые говорят, что в данном конкретном случае FL будет очень хорошим решением.

Проще говоря, в этом случае федеративное обучение будет осуществляться следующим образом:

Ингредиенты:

- Хороший сервер: мы можем назвать его объединенным сервером.
- Алгоритм агрегации.
- Глобальная модель со случайными начальными весами.

Шаги:

1- федеративный сервер отправляет глобальную модель каждому объекту.

2. Каждый объект обучает глобальную модель на своих данных, извлекает новые веса модели и отправляет эти веса на интегрированный сервер.

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

4- повторяйте 🔁2,3, пока не получите хорошее схождение.

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

Существует множество разновидностей федеративного обучения, и тот, о котором мы говорили в приведенном выше примере, называется межуровневым горизонтальным федеративным обучением. Шаги и ингредиенты, о которых мы говорили выше, можно немного изменить для использования в настройках горизонтального кросс-девайса.

Системы федеративного обучения можно разделить на несколько категорий:

1- В зависимости от типа разделения данных:

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

  • Горизонтальное федеративное обучение:

В этой настройке FL все клиенты имеют одно и то же пространство признаков, то есть одни и те же имена столбцов, но все они получили разные выборки. Примером этого являются два банка, которые собирают одни и те же характеристики о своих клиентах (номер счета, время транзакции, название продавца, состояние продавца,…..), и у каждого из них были разные клиенты.

Большая часть доступной работы в литературе по федеративному обучению выполнена на горизонтальном FL.

  • Вертикальное федеративное обучение:

В этой настройке FL все клиенты имеют одни и те же выборки, но разные пространства признаков, то есть разные имена столбцов. Примером этого могут быть 2 больницы, обе из этих больниц получили данные об одной и той же группе пациентов, но эти данные различаются по своей природе. , больница 1 получила результаты рентгена и КТ

  • Перенос федеративного обучения

Сочетание горизонтальных и вертикальных настроек.

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

2- В зависимости от типа модели машинного обучения, выбранного для клиента:

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

Вот некоторые модели архитектуры, которые использовались в различных системах федеративного обучения:

  • Модели на основе NN:

Модели на основе нейронных сетей (NN) являются одной из самых известных архитектур моделей, используемых в FLS. Они достигают очень хороших результатов во многих задачах, таких как классификация изображений, обнаружение мошенничества, предсказание слов и т. д.……..

Существует множество функций агрегирования, которые могут работать с такой архитектурой. Самая известная из них — FedAvg.

  • Древовидные модели:

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

В мире Флориды исследовано множество древовидных моделей, включая деревья решений, случайные леса, деревья решений с градиентным усилением (GBDT), XGBoost и т. д.

  • Линейные модели:

Классические линейные модели (включая линейную регрессию, логистическую регрессию, SVM и т. д.) — это известные модели, которые обычно часто используются, поскольку их очень легко понять.

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

3- На основе механизмов конфиденциальности:

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

В FLS есть две основные категории конфиденциальности: глобальная конфиденциальность и локальная конфиденциальность.

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

В режиме локальной конфиденциальности даже сам сервер не видит необработанные обновления.

Создание алгоритма гарантии конфиденциальности для FLS сталкивается с множеством проблем, поскольку этот алгоритм требует:

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

Конфиденциальность в FLS — это очень широкая и важная тема, на которую вам следует обратить внимание, если вы собираетесь однажды создать FLS.

4- В зависимости от типов клиентов:

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

  • Кросс-девайс:

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

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

Известным примером использования горизонтального и кросс-девайсного FLS является Google GBoard, который обучается на телефонах пользователей Google и используется для прогнозирования следующего слова.

  • межхранилище:

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

Известным примером использования горизонтального и перекрестного FLS является использование FATE — системы федеративного обучения с открытым исходным кодом — в борьбе с отмыванием денег, в данном случае использование FL между различными банками позволило спасти этим банкам более тысячи случаев. это нужно было пересматривать за день.

зачем нужно федеративное обучение?

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

1 – Повышенная конфиденциальность и безопасность данных:

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

2. Разнообразие данных:

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

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

3. Лучшая масштабируемость и экономическая эффективность

В FLS данные секционируются и обучаются на нескольких устройствах. Это свойство позволяет реализовать две вещи:

1- Параллелизм: работа с данными будет выполняться практически одновременно с помощью разных устройств, что может ускорить обучение модели ML.

2- Вместо того, чтобы передавать необработанные данные от клиентов на сервер, будет осуществляться обмен только параметрами, и в случае хорошего протокола конфиденциальности, который не добавляет больших накладных расходов, это свойство уменьшит объем данных, которые необходимо передать. передаваться в сеть и обрабатываться в облаке.

Закрытие

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

Ссылки:

1- Опрос по системам федеративного обучения: видение, шумиха и реальность в области конфиденциальности и защиты данных

2- Федеративное обучение: проблемы, методы и будущие направления

3- Систематический обзор литературы по федеративному машинному обучению: с точки зрения разработки программного обеспечения

4- Федеративное обучение для прогнозирования мобильной клавиатуры

5- https://www.fedai.org/cases/utilization-of-fate-in-anti-money-laundering-through-multiple-banks/

6- https://gemmo.ai/federated-learning

7- https://blog.openmined.org/federated-learning-types/

8- https://t-dab.ai/benefits-of-federated-learning-explained/

9- https://www.statnews.com/2021/04/30/federated-learning-improve-data-diversity/