Одним из самых последних достижений в области глубокого обучения и искусственного интеллекта является концепция «Федеративного обучения».

В четверг, 6 апреля 2017 года, Google AI объявил об этой концепции федеративного обучения в своем блоге, которая буквально поразила энтузиастов машинного обучения, специалистов по данным и исследователей и заставила их поверить в то, что такая децентрализованная модель ИИ действительно возможна.



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

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

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

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

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

Приведенная выше диаграмма объясняет концепцию федеративного обучения. Здесь у нас есть два компонента: глобальный сервер (называемый сервером на диаграмме выше) и локальные серверы (называемые узлами).

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

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

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

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

Типы алгоритмов обучения в федеративном обучении

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

Федеративный стохастический градиентный спуск (FedSGD) и федеративное усреднение (FedAvg).

Федеративный стохастический градиентный спуск (FedSGD)

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

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

Федеративное усреднение (FedAvg)

В отличие от FEDSGD здесь разрешено более одного пакетного обновления, поэтому обновляются веса, а не градиенты. Усредненные настроенные веса используются для обновления модели на глобальном сервере.

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

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

Однако Google Keyboard - самое известное приложение федеративного обучения.

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

На данный момент федеративное обучение имеет ограниченное применение, но в ближайшем будущем говорят, что по мере того, как обнаруживается все больше и больше вероятностей и возможностей этой концепции, его уже не остановить. Теперь единственное, что мы можем сделать, это проанализировать концепцию, подождать и обнаружить. Как однажды сказал один мудрый человек: «Обучение никогда не прекращается»