PaddleFL — это открытая платформа для федеративного обучения, основанная на PaddlePaddle. Исследователи могут легко воспроизводить и сравнивать различные алгоритмы федеративного обучения с помощью PaddleFL. Разработчики также могут извлечь выгоду из PaddleFL, поскольку систему федеративного обучения легко развернуть в крупномасштабных распределённых кластерах. В PaddleFL будет представлено несколько стратегий федеративного обучения для применения в компьютерном зрении, обработке естественного языка, рекомендациях и так далее. Будет обеспечено применение традиционных стратегий обучения машинному обучению, таких как многозадачное обучение и трансферное обучение в условиях федеративного обучения.
Основываясь на крупномасштабном распределённом обучении PaddlePaddle и эластичном планировании учебных заданий в Kubernetes, PaddleFL можно легко развернуть на основе программного обеспечения с открытым исходным кодом полного стека.
В настоящее время данные становятся всё более дорогостоящими, а обмен необработанными данными между организациями очень затруднён. Федеративное обучение направлено на решение проблемы изоляции данных и безопасного обмена знаниями о данных между организациями. Концепция федеративного обучения была предложена исследователями Google [1, 2, 3]. PaddleFL реализует федеративное обучение на основе фреймворка PaddlePaddle. В PaddleFL будут представлены демонстрационные приложения для обработки естественного языка, компьютерного зрения и рекомендаций. PaddleFL поддерживает текущие две основные стратегии федеративного обучения [4]: вертикальное федеративное обучение и горизонтальное федеративное обучение. Многозадачное обучение [7] и трансфертное обучение [8] в федеративном обучении будут разработаны и поддержаны в PaddleFL в будущем.
PaddleFL состоит в основном из двух компонентов: Data Parallel и Federated Learning with MPC (PFM).
С помощью Data Parallel владельцы распределённых данных могут выполнять свои задачи федеративного обучения на основе общих горизонтальных стратегий федеративного обучения, таких как FedAvg, DPSGD и т. д.
PFM реализован на основе безопасных многосторонних вычислений (MPC), чтобы обеспечить безопасное обучение и прогнозирование. Как ключевой продукт PaddleFL, PFM внутренне хорошо поддерживает федеративное обучение, включая горизонтальные, вертикальные и трансферные сценарии обучения. Пользователи с небольшим опытом работы с криптографией также могут обучать модели или делать прогнозы на зашифрованных данных.
В Data Parallel весь процесс обучения модели делится на два этапа: время компиляции и время выполнения. Компоненты для определения задачи федеративного обучения и обучения заданию федеративного обучения следующие:
FL-Strategy: пользователь может определить стратегии федеративного обучения с FL-Strategy, такие как Fed-Avg [2]
User-Defined-Program: программа PaddlePaddle, которая определяет структуру модели машинного обучения и стратегии обучения, такие как многозадачное обучение.
Distributed-Config: в федеративном обучении система должна быть развёрнута в распределённых настройках. Distributed Training Config определяет информацию о узлах распределённого обучения.
FL-Job-Generator: учитывая FL-Strategy... Программа, определяемая пользователем, и распределённая конфигурация обучения
FL-задания для федеративного сервера и рабочего будут сгенерированы через FL Job Generator. FL-задания будут отправлены в организации и на федеративный сервер параметров для выполнения во время выполнения.
FL-сервер: Федеративный сервер параметров, который обычно работает в облаке или сторонних кластерах.
FL-рабочий: Каждая организация, участвующая в федеративном обучении, будет иметь одного или нескольких федеративных рабочих, которые будут взаимодействовать с федеративным сервером параметров.
FL-планировщик: Определяет, какой набор тренеров может присоединиться к обучению перед каждым циклом обновления.
Для получения дополнительных инструкций обратитесь к примерам (examples).
PaddleFL MPC реализует безопасные задачи обучения и вывода на основе базового протокола MPC, такого как ABY3[10] и PrivC[5], которые являются высокоэффективными моделями многосторонних вычислений. В PaddeFL двухстороннее федеративное обучение на основе PrivC в основном поддерживает линейную/логистическую регрессию и модель DNN. Трёхстороннее федеративное обучение на базе ABY3 поддерживает линейную/логистическую регрессию, модель DNN, модель CNN и FM.
В PaddleFL MPC участники могут быть классифицированы по ролям: сторона ввода (IP), вычислительная сторона (CP) и сторона результата (RP). Стороны ввода (например, владельцы данных/моделей обучения) шифруют и распространяют данные или модели среди вычислительных сторон (в протоколе ABY3 существует три вычислительные стороны, а в протоколе PrivC — две). Вычислительные стороны (например, виртуальная машина в облаке) выполняют задачи обучения или вывода на основе конкретных протоколов MPC, имея возможность видеть только зашифрованные данные или модели, тем самым гарантируя конфиденциальность данных. Когда вычисление завершено, одна или несколько сторон результата (например, владельцы данных или указанная третья сторона) получают зашифрованные результаты от вычислительных сторон и восстанавливают результаты в открытом виде. Роли могут перекрываться, например, владелец данных может также выступать в роли вычислительной стороны.
Полный процесс обучения или вывода в PFM состоит из трёх основных этапов: подготовка данных, обучение/вывод и реконструкция результатов.
Согласование частных данных: PFM позволяет владельцам данных (IP) находить записи с одинаковыми ключами (такими как UUID), не раскрывая личные данные друг другу. Это особенно полезно в случаях вертикального обучения, когда сегментированные функции с одинаковыми ключами необходимо идентифицировать и согласовывать между всеми владельцами в частном порядке перед обучением.
Шифрование и распространение: PFM предоставляет решения для шифрования и распространения данных как онлайн, так и офлайн. Если пользователи выбирают схему совместного использования данных в автономном режиме, данные и модели от IP будут зашифрованы с использованием Secret-Sharing[9], а затем отправлены CP через прямую передачу или распределённое хранилище, такое как HDFS. Если пользователи используют онлайн-решение, IP шифрует и распространяет данные и модели онлайн в начале фазы обучения. Каждый CP может получить только одну долю каждого фрагмента данных и, следовательно, не может восстановить исходное значение в модели Semi-honest.
Программа PFM — это точно программа PaddlePaddle, которая будет выполняться как обычные программы PaddlePaddle. Перед обучением/выводом пользователь должен выбрать протокол MPC, определить модель машинного обучения и их стратегии обучения. Типичные операторы машинного обучения предоставляются в paddle_fl.mpc
над зашифрованными данными, экземпляры которых создаются и запускаются в порядке Исполнителем во время выполнения.
Дополнительную информацию о фазе обучения/вывода см. в следующем документе (doc).
По завершении безопасного задания обучения (или вывода) модели (или результаты прогнозирования) будут выводиться CP в зашифрованном виде. Стороны результата могут собирать зашифрованные результаты, расшифровывать их с помощью инструментов PFM и предоставлять результаты в открытом виде пользователям (в настоящее время совместное использование данных и реконструкцию можно поддерживать как в автономном, так и в онлайн-режиме). Системы и технологии 2019
[5]. Кай Хе, Лю Ян, Цзюэ Хонг, Цзиньхуа Цзян, Цземин У, Сюй Дун и др. PrivC — фреймворк для эффективных безопасных вычислений с участием двух сторон. В материалах конференции SecureComm 2019.
[6]. Мартин Абади, Энди Чу, Иэн Гудфеллоу, Х. Брендан Макмаан, Илья Миронов, Кунал Талвар, Ли Чжан. Глубокое обучение с дифференциальной конфиденциальностью. В материалах конференции CCS 2016.
[7]. Вирджиния Смит, Чао-Кай Чианг, Мазиар Санджаби, Амит Тавалкар. Федеративное многозадачное обучение. В материалах конференции NIPS 2017.
[8]. Янг Лю, Тяньцзянь Чен, Цян Ян. Безопасное федеративное трансферное обучение. IEEE Intelligent Systems 2018.
[9]. https://en.wikipedia.org/wiki/Secret_sharing
[10]. Пайман Мохассел и Питер Риндал. ABY3: смешанный протокол для машинного обучения. В материалах конференции CCS 2018.
[11]. Аарон Сегал Антонио Марседоне Бенджамин Креутер Дэниел Рэймидж Х. Брендан МакМаан Карн Сет К. А. Бонавиц Сарвар Пател Владимир Иванов. Практическое безопасное агрегирование для сохранения конфиденциальности в машинном обучении. В материалах конференции CCS 2017.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )