О машинном обучении (ML), больших данных, распределенном ML и FL

Когда-то было только машинное обучение.

От машинного обучения к распределенному машинному обучению

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

Машинное обучение — это метод, основанный на данных. Чем больше качественных данных подается в систему машинного обучения, тем богаче становится источник знаний и тем больше система может узнать. Таким образом, машинное обучение идеально подходит для использования скрытых шаблонов больших данных. Однако размер больших данных сделал этап обучения машинному обучению непрактичным на традиционных платформах с одним узлом. Время обучения моделей машинного обучения стало очень долгим. В некоторых случаях централизованное решение даже не подходило, поскольку данные были слишком большими для хранения на одной машине. Некоторыми примерами таких больших данных являются транзакционные данные крупных компаний, хранящиеся в разных местах [1], или астрономические данные, слишком большие для централизованного хранения в системах только с одним узлом [2]. Даже использование ускорителей, таких как GPU и FPGA, не могло помочь.

До одного дня…

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

От распределенного к федеративному обучению

В DML-системах процесс обучения распределяется между несколькими узлами. Для облегчения разработки решений DML было предложено несколько библиотек DML, включая MLlib, BigDL и TensorFlow. Эти библиотеки позволяют пользователям легко запускать свои алгоритмы машинного обучения на платформах больших данных, таких как Spark и Hadoop.

Системы DML принесли много преимуществ сообществу ML, включая более быстрое выполнение и возможность анализировать больше данных. Однако, несмотря на свою децентрализацию, традиционные подходы DML по-прежнему полагаются на некоторую централизацию. Чтобы учиться на разных наборах данных, распределенных по разным местоположениям, DML сначала собирает все данные в центральном расположении (центре обработки данных в облаке), а затем распределяет объединенные данные по узлам в этом центральном расположении. Например, банк собирает данные из разных отделений в разных местах страны, а затем распределяет как собранные данные, так и обучающие расчеты по узлам, предназначенным для анализа данных и расположенным в главном офисе банка. Передача данных в центральное расположение сопряжена с неприемлемо высокими затратами, особенно если данные географически рассредоточены, но конфиденциальность и безопасность данных также подвергаются большому риску. Все данные, передаваемые по сети, подвергаются раскрытию, атакам и киберрискам.

Сервер сервер в облаке… покажи мне данные всей толпы

К наиболее серьезным утечкам данных в 21 веке относятся Equifax (143 миллиона клиентов пострадали в 2017 году) [3] и Marriot (500 миллионов клиентов пострадали в 2018 году) [4]. Для решения проблем с конфиденциальностью было предложено Федеративное обучение (FL).

Федеративное обучение (FL) и некоторые приложения

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

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

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

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

По сравнению с DML, FL характеризуется тем, что:

(1) Эффективность связи, поскольку по сети не передаются большие объемы данных;

(2) Сохранение конфиденциальности, поскольку владельцы данных не отправляют свои необработанные данные, которые могут содержать личную информацию, другим владельцам данных или в облако.

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

И все они жили долго и счастливо ~

Мы почти дошли до конца статьи. Справедливости ради, последняя строчка была добавлена ​​главным образом потому, что она хорошо рифмуется с началом ;). Исследователи данных, специалисты по рекомендациям продуктов, владельцы банков и т. д. довольны FL, но реально мы не можем сказать, что кто-то еще достиг Happy End. Есть еще некоторые проблемы, которые FL должен преодолеть, в основном из-за разнородных данных и оборудования сторон, которые обычно используют федеративное обучение. Об этом я расскажу в другой статье.

Основные выводы

  • Методы машинного обучения (ML) изначально применялись к небольшим наборам данных, которые подходили для одноузловых систем.
  • С появлением больших данных было предложено распределенное машинное обучение (DML) для запуска ML в распределенных системах, что позволяет ML извлекать выгоду из распараллеливания и высокой пропускной способности хранилища и масштабироваться до больших наборов данных.
  • Классический DML опирается на некоторую степень централизации. Чтобы извлечь уроки из разных наборов данных, распределенных по разным местам, DML сначала собирает все данные в централизованном месте, подвергая конфиденциальные данные раскрытию, атакам и кибер-рискам.
  • Федеративное обучение (FL) — это парадигма распределенного машинного обучения. Это позволяет группе владельцев данных, соединенных сетью, совместно изучать глобальную общую модель, не раскрывая свои данные.

!РЕДАКТИРОВАТЬ! Вы можете найти подробное описание обучения, проверки и тестирования федеративного обучения здесь: Разрыв между симуляцией и реальностью в федеративном обучении — Часть 2.

Рекомендации

[1] https://www.researchgate.net/publication/220490151_Accelerating_Large-scale_Data_Exploration_through_Data_Diffusion
[2] Райку, И., Фостер, И., Салай, А. и Турку, Г. (2006). Астропортал: научный портал
для крупномасштабного анализа астрономических данных, конференция In Teragrid.
[3] Грессин, С. (2017). Нарушение данных Equifax: что делать. Федеральная торговая комиссия, 8.
[4] Сангер, Д. Э., Перлрот, Н., Траш, Г., и Раппепорт, А. (2018). Нарушение данных Marriott связано с китайскими хакерами. The New York Times, A1-L.
[5] МакМахан, Б., Мур, Э., Рэймидж, Д., Хэмпсон, С., и Аркас, Б. А. (2017, апрель). Эффективное коммуникационное обучение глубоких сетей на основе децентрализованных данных. В Искусственном интеллекте и статистике (стр. 1273–1282). ПМЛР.