Совместный метод распределенного обучения Edgify будет полностью представлен на NeurIPS в этом году!
Обзор
Сегодня растет интерес к обучению моделей глубокого обучения на периферии. Такие алгоритмы, как Федеративное усреднение [1] (FedAvg), позволяют проводить обучение на устройствах с высокой сетевой задержкой, выполняя множество шагов локального градиента перед передачей их весов. Однако сама природа этого параметра такова, что нет никакого контроля над тем, как данные распределяются на устройствах.
Рассмотрим, например, интеллектуальные кассовые весы в супермаркете с установленной камерой и некоторой вычислительной мощностью. Вы хотите, чтобы каждая шкала собирала изображения масштабируемых фруктов и овощей и совместно обучала нейронную сеть на весах распознавать эти фрукты и овощи. Такая неограниченная среда почти всегда будет означать, что не все граничные устройства (в данном случае весы) будут иметь данные из всех классов (в данном случае фруктов и овощей). Это обычно называется распределением данных без IID.
Обучение с помощью FedAvg на данных, отличных от IID, привело бы к тому, что модели, обученные на местном уровне, «забудут» классы, для которых у них мало данных или нет данных.
В недавней статье [2], которая будет опубликована на семинаре NuerIPS по федеративному обучению конфиденциальности и конфиденциальности данных, мы представляем Federated Curvature (FedCurv), алгоритм для обучения с помощью федеративного обучения на данных, не относящихся к IID. В этой статье мы опираемся на идеи из непрерывного обучения, чтобы предотвратить потерю знаний в федеративном обучении.
Непрерывное и федеративное обучение
В обучении на протяжении всей жизни задача состоит в том, чтобы изучить задачу A и продолжить изучение задачи. Использование той же модели, но без «забвения» задачи A, то есть без существенного снижения производительности по этой задаче. Или, в общем, изучать задачи A1, A2… последовательно, не забывая ранее изученные задачи, для которых образцы больше не представлены.
В статье - Elastic Weight Consolidation (EWC) [3] авторы предлагают алгоритм для последовательного обучения модели новым задачам, не забывая старые.
Идея EWC состоит в том, чтобы предотвратить забывание путем определения координат в сетевых параметрах, которые являются наиболее информативными для изученной задачи A, а затем, пока задача B изучается, наказывать учащегося за изменение этих параметров. Основное предположение состоит в том, что глубокие нейронные сети достаточно перенастроены, так что есть хорошие шансы найти оптимальное решение * B для задачи B в окрестности ранее изученного * A. Они изображают идею следующей схемой:
Для того, чтобы «выбрать» параметры, важные для предыдущей задачи, авторы используют диагональ информационной матрицы Фишера. Это матрица, размер которой совпадает с размером тензора параметров модели, а значение каждой записи коррелирует с «важностью» соответствующего параметра модели.
Авторы применяют наказание, добавляя термин к цели оптимизации, заставляя параметры модели, которые имеют высокую информацию Фишера для задачи A, сохранять свою ценность при обучении задаче B. Это выражается следующей целью:
Эта корректировка потерь может быть распространена на несколько задач, если срок штрафа будет суммой по всем предыдущим задачам.
Объединенная кривизна
Для федеративного обучения мы адаптируем алгоритм EWC с последовательного алгоритма к параллельному. В этом сценарии мы продолжаем взаимодействие и усреднение локальных моделей, как и в FedAvg, но мы также добавляем штраф EWC за принуждение каждой локальной модели сохранять информацию обо всех других устройствах. Во время обмена данными каждое устройство отправляет свою модель и диагональ информационной матрицы Фишера. Математически мы получаем:
Таким образом, мы обеспечиваем обучение на локальных данных, не забывая при этом знания, полученные из данных других устройств (например, других классов).
Сохранение низкой пропускной способности и сохранение конфиденциальности
На первый взгляд, количество новых термов, добавленных к потерям, будет линейно расти с количеством периферийных устройств. Однако, как показано в [2], с помощью простых арифметических манипуляций мы можем сохранить постоянное количество членов, которые зависят от суммы информационных матриц Фишера, что делает функцию потерь масштабируемой, поскольку количество членов не зависит от количества краевые устройства. Это также означает, что, хотя каждое ребро должно отправлять модель и диагональ ее информационной матрицы Фишера в центральную точку, центральные точки должны отправлять только агрегирование отдельных моделей и их диагонали информационной матрицы Фишера в каждый край. Обратите внимание, что FedCurv отправляет только агрегированную информацию, связанную с локальным градиентом (агрегированную на локальных данных), в центральную точку. С точки зрения конфиденциальности он существенно не отличается от классического алгоритма FedAvg.
Эксперименты
Мы протестировали FedCurv на 96 периферийных устройствах. Мы использовали MNIST для эксперимента и разделили данные так, чтобы каждое устройство имело изображения ровно 2 классов (которые не видит ни одно другое устройство). Мы сравнили FedCurv с FedAvg и FedProx [4] (центральное существующее решение, описание которого выходит за рамки этого блога).
Поскольку основным преимуществом нашего алгоритма является то, что он позволяет осуществлять менее частую коммуникацию, мы ожидаем, что по мере увеличения количества локальных эпох E между последовательными циклами коммуникации преимущества использования FedCurv станут более очевидными, т. Е. FedCurv будет требуется меньше итераций для достижения желаемой точности.
Результаты, представленные в таблице 1, показывают, что для 50 локальных эпох FedCurv достиг 90% точности в три раза быстрее, чем FedAvg. Рисунки 1 и 2 показывают, что FedProx и FedCurv хорошо себя чувствуют в начале процесса обучения. Однако, хотя FedCurv обеспечивает достаточную гибкость, позволяющую достичь высокой точности в конце процесса, жесткость параметров в FedProx происходит за счет точности.
Заключение
Мы представили проблему данных, отличных от i.i.d, в Федеративном обучении. Мы показали, как это связано с проблемой забывания в обучении на протяжении всей жизни, и представили FedCurv, новый подход к обучению в этом случае. Мы показали, что FedCurv можно эффективно реализовать без значительного увеличения пропускной способности.
Обязательно следите за Edgify, чтобы следить за обновлениями с конференции NeurIPS на этой неделе.
Edgify.ai занимается исследованием распределенного пограничного обучения уже четыре года. Мы создаем платформу (фреймворк), которая позволяет обучать и развертывать модели машинного обучения непосредственно на периферийных устройствах, таких как смартфоны, устройства Интернета вещей, подключенные автомобили, медицинское оборудование, интеллектуальные посудомоечные машины и многое другое. Мы стремимся революционизировать конфиденциальность, информационную безопасность, задержки и затраты, связанные с ИИ.
использованная литература
[1] Брендан МакМахан, Эйдер Мур, Дэниел Рэймидж, Сет Хэмпсон и другие. Коммуникационно-эффективное обучение глубоких сетей на основе децентрализованных данных. Препринт arXiv arXiv: 1602.05629, 2016.
[2] Нета Шоам, Томер Авидор, Авив Керен, Надав Исраэль, Даниэль Бендиткис, Лирон Мор-Йосеф, Итаи Зайтек. Преодоление забвения в федеративном обучении на данных, не относящихся к IID. Препринт arXiv arXiv: 1910.07796
[3] Джеймс Киркпатрик, Разван Паскану, Нил Рабинович, Джоэл Венесс, Гийом Дежарден, Андрей А Русу, Киран Милан, Джон Куан, Тьяго Рамальо, Агнешка Грабска-Барвинска и другие. Преодоление катастрофического забывания в нейронных сетях. Известия национальной академии наук 114 (13): 3521–3526, 2017.
[4] Анит Кумар Саху, Тиан Ли, Мазиар Санджаби, Манзил Захир, Амит Талвалкар, Вирджиния Смит. Федеративная оптимизация для гетерогенной сети. Препринт arXiv arXiv: 1812.06127, 2018.