Расширенный ИИ

О сотрудничестве, сплетнях и хитрости маскировки

Сделает ли федеративное обучение для машинного обучения то, что блокчейн сделал для DeFi?

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

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

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

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

Почему ФЛ сейчас?

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

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

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

Несколько вариантов использования

Такие компании, как Google, используют методы FL на клавиатуре своего смартфона для предсказания следующего слова. Методы Apple FL используют историю взаимодействия с пользователем, что значительно сокращает время обработки по сравнению с живыми экспериментами A/B. Отрасль здравоохранения и медицинского страхования может воспользоваться преимуществами FL, потому что это позволяет защитить конфиденциальные данные в первоисточнике. В автономных транспортных средствах FL может обеспечить принятие решений в режиме реального времени и постоянное обучение, а также позволяет модели улучшаться с течением времени с использованием данных от различных транспортных средств.

Как это работает?

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

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

Маскировка с нулевой суммой

Этот вид функционального шифрования называется протоколом маскирования с нулевой суммой. Маски с нулевой суммой в сумме дают 1 в одном направлении и 0 в другом. Один из них объединяет и защищает зашифрованные или защищенные пользовательские данные, а следующий расшифровывает результаты обучения на сервер. Этот процесс продолжается до завершения, а затем маски компенсируют друг друга. Вот несколько моментов, на которые следует обратить внимание в отношении FL:

  • Большинство алгоритмов ML предполагают, что данные IID (независимо и одинаково распределены). Однако в случае FL, поскольку каждый участник хранит данные только о своем собственном использовании, мы не можем предположить, что каждая порция данных (от каждого клиентского устройства) представляет всю совокупность.
  • FL лучше всего применять в ситуациях, когда данные на устройстве гораздо более актуальны, чем данные, существующие на серверах. В сегодняшнем гиперперсонализированном мире это действительно так чаще всего.
  • Распределенное тестирование FL возвращает преимущества тестирования новой версии модели там, где это наиболее важно, то есть на устройствах пользователей. Поскольку сервер не имеет доступа к обучающим данным, он не может протестировать комбинированную модель после ее обновления с использованием вкладов клиентов. По этой причине обучение и тестирование происходят на устройствах пользователей.

Выполнение

FL уже доступен в рамках tensorflow-federated-nightly.

Ниже приведен иллюстративный фрагмент кода для построения сверхпростой модели FL для задачи классификации, включающей 3 класса.

!pip install --quiet --upgrade tensorflow-federated-nightly
import numpy as np
np.random.seed(0)
import tensorflow as tf
import tensorflow_federated as tff
def create_model(num_classes:int):
    model = tf.keras.models.Sequential([
        tf.keras.layers.InputLayer(input_shape=(784,)),
        tf.keras.layers.Dense(num_classes),
        tf.keras.layers.Softmax()])
    return tff.learning.from_keras_model(
        model,
        loss=tf.keras.losses.SparseCategoricalCrossentropy(),
        metrics=[tf.keras.metrics.SparseCategoricalAccuracy()])
fl_model = create_model(3)
evaluation = tff.learning.build_federated_evaluation(fl_model)

Проблемы

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

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

Альтернативы: изучение сплетен

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

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

Заключение

Технология блокчейн послужила основой для криптовалюты и децентрализованных приложений. Вместе эти инструменты создали быстрорастущий сектор DeFi (децентрализованных финансов). Точно так же, как DeFi может открыть новые возможности для бизнеса по мере роста этой отрасли, федеративное обучение может революционизировать мир машинного обучения. Как и любая новая технология, проекты FL на первых порах будут встречены с разной степенью успеха. Лидеры бизнеса должны будут выбрать, какой из этих проектов принесет наибольшую пользу их бизнесу.

Присоединяйтесь к Coinmonks, Каналу Telegram и Каналу Youtube, узнайте о криптотрейдинге и инвестировании

Также читайте