Федеративне навчання

Діаграма протоколу федеративного навчання зі смартфонами, які навчають глобальну модель ШІ.

Федеративне навчання — це метод машинного навчання, орієнтований на умови, в яких кілька суб'єктів (часто званих клієнтами) спільно навчають модель, при цьому дані, які використовуються для навчання розподіляються децентралізовано[1]. Це відрізняє його від машинного навчання, в якому дані зберігаються централізовано. Однією з основних визначальних характеристик федеративного навчання є неоднорідність даних. Через децентралізовану природу даних клієнтів немає гарантії, що вибірки даних, які зберігаються у кожного клієнта розподіляються незалежно й однаково.

Федеративне навчання, як правило, пов'язане з такими аспектами, як конфіденційність даних, мінімізація даних і правами доступу до них. Його застосування охоплює різноманітні дослідницькі сфери, зокрема оборону, телекомунікації, інтернет речей і фармацевтику.

Визначення

В умовах централізованого федеративного навчання використовується головний сервер для організації різних кроків алгоритмів і координації всіх вузлів, що беруть участь у процесі навчання. Сервер відповідає за відбір вузлів на початку процесу навчання і за агрегацію отриманих оновлень моделі. Оскільки всі вузли мають надсилати оновлення єдиному центру, то головний сервер може стати вузьким місцем у системі.[2]

Основна відмінність між федеративним навчанням і розподіленим навчанням полягає в припущеннях, зроблених щодо властивостей локальних наборів даних[3], оскільки розподілене навчання перш за все спрямоване на розпаралелювання обчислювальної потужності, тоді як федеративне навчання спрямоване на навчання на гетерогенних(інші мови) наборах даних. Хоча розподілене навчання також спрямоване на навчання однієї моделі на кількох серверах, загальним основним припущенням є те, що локальні набори даних є незалежними та однаково розподіленими (НОР) і мають приблизно однаковий розмір. Жодна з цих гіпотез не поширюється на федеративне навчання; натомість набори даних, як правило, неоднорідні, а їхні розміри можуть різнитися на кілька порядків. Крім того, клієнти, які беруть участь у федеративному навчанні, можуть бути ненадійними, оскільки вони схильні до більшої кількості збоїв або відмов, оскільки вони зазвичай покладаються на менш потужні засоби зв'язку (наприклад, Wi-Fi) і системи з живленням від батарей (наприклад, смартфони та пристрої інтернету речей) порівняно з розподіленим навчанням, де вузлами, як правило, є центри обробки даних, які мають потужні обчислювальні можливості і з'єднані один з одним швидкісними мережами.[2]

Математичне формулювання

Цільова функція федеративного навчання така:

де  — кількість вузлів,  — це вагові коефіцієнти моделі в розрізі вузла , і  — локальна цільова функція вузла , яка описує вагові коефіцієнти моделі , які відповідають локальному набору даних вузла .

Метою федеративного навчання є навчання спільної моделі на локальних наборах даних усіх вузлів, іншими словами:

  • Оптимізація цільової функції .
  • Досягнення консенсусу щодо . Іншими словами, сходяться до якогось спільного в кінці процесу навчання моделі.

Централізоване федеративне навчання

Федеративне навчання має на меті навчання алгоритму машинного навчання, наприклад, глибоких нейронних мереж, на числених локальних наборах даних, які зберігаються в локальних вузлах, без явного обміну зразками даних. Загальний принцип полягає в навчанні локальних моделей на локальних вибірках даних і обміні параметрами (наприклад, вагами і зсувами глибокої нейронної мережі) між цими локальними вузлами з певною частотою для створення глобальної моделі, спільної для всіх вузлів.

Діаграми централізованого федеративного навчання (ліворуч) і децентралізованого федеративного навчання (праворуч)

Децентралізоване федеративне навчання

При децентралізованому федеративному навчанні вузли можуть координувати свої дії для отримання глобальної моделі. Така структура запобігає одномоментним збоям, оскільки оновлення моделі поширюються лише між взаємопов'язаними вузлами без координації з центральним сервером. Тим не менш, топологія мережі може вплинути на ефективність процесу навчання.[2] Див. в статті про Федеративне навчання на основі блокчейну[4] і посилання в ній.

Гетерогенне федеративне навчання

Зростаюча кількість прикладних областей включає великий набір гетерогенних клієнтів, наприклад, мобільні телефони та пристрої інтернету речей.[5] Більшість існуючих стратегій федеративного навчання припускають, що локальні моделі мають однакову глобальну архітектуру моделі. Нещодавно було створено новий фреймворк федеративного навчання під назвою HeteroFL для роботи з гетерогенними клієнтами, які мають дуже різні обчислювальні та комунікаційні можливості.[6] Підхід запропонований в HeteroFL може забезпечити навчання гетерогенних локальних моделей з динамічно змінюваною складністю обчислень та даних, які не є незалежними та однаково розподіленими, при цьому створюючи єдину точну глобальну модель висновування.[6][7]

Federated learning general process in central orchestrator setup
Загальний процес федеративного навчання у випадку центрального оркестратора

Основні властивості

Ітераційне навчання

Щоб забезпечити хорошу продуктивність кінцевої, центральної моделі машинного навчання, федеративне навчання спирається на ітеративний процес, розбитий на атомарний набір клієнт-серверних взаємодій, який називається раундом федеративного навчання. Кожен раунд цього процесу складається з передачі поточного стану глобальної моделі вузлам-учасникам, навчання локальних моделей на цих локальних вузлах для створення набору потенційних оновлень моделі на кожному вузлі, а потім агрегування та обробки цих локальних оновлень в єдине глобальне оновлення і застосування його до глобальної моделі.[2]

У наведеній нижче стратегії для агрегації використовується центральний сервер, тоді як локальні вузли виконують локальне навчання в залежності від вказівок центрального сервера. Однак інші стратегії при одноранговому підход призводять до тих же результатів, якщо використовувати протокол пліток[8] або метод консенсусу.[9]

Припускаючи, що раунд складається з однієї ітерації процесу навчання, процедуру навчання можна узагальнити наступним чином:[10]

  1. Ініціалізація: відповідно до вхідних даних сервера обирається модель машинного навчання (наприклад, лінійна регресія, нейронна мережа, підсилювання), яка навчається на локальних вузлах та ініціалізується. Потім вузли активуються і чекають, поки центральний сервер дасть завдання на обчислення.
  2. Відбір клієнтів: частина локальних вузлів обирається для початку навчання на локальних даних. Відібрані вузли отримують поточну статистичну модель, в той час як інші чекають на наступний федеративний раунд.
  3. Конфігурація: центральний сервер наказує вибраним вузлам пройти навчання моделі на своїх локальних даних у заздалегідь визначений спосіб (наприклад, для деяких пакетних оновлень градієнтного спуску).
  4. Звітування: кожен вибраний вузол надсилає свою локальну модель на сервер для агрегування. Головний сервер агрегує отримані моделі та надсилає оновлення моделей на вузли. Він також обробляє збої для втрачених вузлів або втрачених оновлень моделей. Починається наступний федеративний раунд, повертаючись до фази вибору клієнтів.
  5. Завершення: як тільки виконується заздалегідь визначений критерій завершення (наприклад, досягається максимальна кількість ітерацій або точність моделі перевищує певний поріг), центральний сервер агрегує оновлення і завершує роботу над глобальною моделлю.

Розглянута вище процедура передбачає синхронне оновлення моделі. Нещодавні розробки в галузі федеративного навчання представили нові методи для подолання асинхронності в процесі навчання, або навчання з динамічно змінюваними моделями.[6] На відміну від синхронних підходів, де локальні моделі передаються одразу після завершення обчислень для всіх шарів нейронної мережі, асинхронні підходи використовують властивості нейронних мереж обмінюватися оновленнями моделей, як тільки стають доступними розрахунки для певного шару. Ці методи також часто називають розділеним навчанням[11][12],і їх можна застосовувати як під час навчання, так і під час висновування, незалежно від того, централізоване чи децентралізоване федеративне навчання.[2][6]

Не незалежні і однаково-розподілені дані

У більшості випадків припущення про незалежні та однаково розподілені (НОР) вибірки на локальних вузлах не спрацьовує в умовах федеративного навчання. За таких умов продуктивність процесу навчання може суттєво відрізнятися залежно від незбалансованості локальних вибірок даних, а також від конкретного розподілу ймовірностей навчальних прикладів (тобто ознак і міток), що зберігаються на локальних вузлах. Для подальшого дослідження впливу таких даних (НОР), в наступному описі розглядаються основні категорії, представлені в препринті Пітера Кайруза та ін. від 2019 року.[2]

Опис даних, що не належать до НОР, ґрунтується на аналізі спільної ймовірності між функціями та мітками для кожного вузла. Це дозволяє виокремити кожен внесок відповідно до конкретного розподілу, доступного на локальних вузлах. Основні категорії даних, які не є НОР, можна підсумувати таким чином:[2]

  • Коваріативний зсув: локальні вузли можуть зберігати приклади, які мають інший статистичний розподіл порівняно з іншими вузлами. Прикладом можуть слугувати набори даних для обробки природної мови, де люди зазвичай пишуть однакові цифри/літери з різною шириною штриха або нахилом.[2]
  • Зсув попередньої ймовірності: локальні вузли можуть зберігати мітки, які мають відмінні статистичні розподіли порівняно з іншими вузлами. Це може трапитись, якщо набори даних є регіонально та/або демографічно розділеними. Наприклад, набори даних, що містять зображення тварин, значно відрізняються в різних країнах.[2]
  • Зміщення концепції (однакова мітка, різні ознаки): локальні вузли можуть мати однакові мітки, але деякі з них відповідають різним ознакам на різних локальних вузлах. Наприклад, зображення, на яких зображено певний об'єкт, можуть відрізнятися залежно від погодних умов, в яких вони були зроблені.[2]
  • Зміна концепції (однакові ознаки, різні мітки): локальні вузли можуть мати однакові ознаки, але деякі з них відповідають різним міткам на різних локальних вузлах. Наприклад, при обробці природної мови аналіз настроїв може дати різні результати, навіть для одного і того ж тексту.[2]
  • Незбалансованість: кількість даних, доступних на локальних вузлах, може значно відрізнятися за розміром.[2][6]

Втрата точності через дані, які не є НОД, можна обмежити, використовуючи більш досконалі засоби нормалізації даних, а ніж пакетну нормалізацію.[13]

Примітки

  1. Kairouz, Peter; McMahan, H. Brendan; Avent, Brendan; Bellet, Aurélien; Bennis, Mehdi; Bhagoji, Arjun Nitin; Bonawitz, Kallista; Charles, Zachary; Cormode, Graham (22 червня 2021). Advances and Open Problems in Federated Learning. Foundations and Trends in Machine Learning (English) . 14 (1–2): 1—210. arXiv:1912.04977. doi:10.1561/2200000083. ISSN 1935-8237.
  2. а б в г д е ж и к л м н Kairouz, Peter; Brendan McMahan, H. (10 грудня 2019). Advances and Open Problems in Federated Learning. arXiv:1912.04977 [cs.LG].
  3. Konečný, Jakub; McMahan, Brendan. Federated Optimization: Distributed Optimization Beyond the Datacenter. arXiv:1511.03575 [cs.LG].
  4. Pokhrel, Shiva Raj; Choi, Jinho (2020). Federated Learning with Blockchain for Autonomous Vehicles: Analysis and Design Challenges. IEEE Transactions on Communications. 68 (8): 4734—4746. doi:10.1109/TCOMM.2020.2990686.
  5. Xu, Zirui; Yu, Fuxun; Xiong, Jinjun; Chen, Xiang (December 2021). Helios: Heterogeneity-Aware Federated Learning with Dynamically Balanced Collaboration. 2021 58th ACM/IEEE Design Automation Conference (DAC). с. 997—1002. arXiv:1912.01684. doi:10.1109/DAC18074.2021.9586241. ISBN 978-1-6654-3274-0.
  6. а б в г д Diao, Enmao; Ding, Jie (2 жовтня 2020). HeteroFL: Computation and Communication Efficient Federated Learning for Heterogeneous Clients. arXiv:2010.01264 [cs.LG].
  7. Yu, Fuxun; Zhang, Weishan; Qin, Zhuwei; Xu, Zirui; Wang, Di; Liu, Chenchen; Tian, Zhi; Chen, Xiang (14 серпня 2021). Fed2. Proceedings of the 27th ACM SIGKDD Conference on Knowledge Discovery & Data Mining. KDD '21. New York, NY, USA: Association for Computing Machinery. с. 2066—2074. arXiv:2111.14248. doi:10.1145/3447548.3467309. ISBN 978-1-4503-8332-5.
  8. Decentralized Collaborative Learning of Personalized Models over Networks Paul Vanhaesebrouck, Aurélien Bellet, Marc Tommasi, 2017
  9. Savazzi, Stefano; Nicoli, Monica; Rampa, Vittorio (May 2020). Federated Learning With Cooperating Devices: A Consensus Approach for Massive IoT Networks. IEEE Internet of Things Journal. 7 (5): 4641—4654. arXiv:1912.13163. doi:10.1109/JIOT.2020.2964162.
  10. Towards federated learning at scale: system design, Keith Bonawitz Hubert Eichner and al., 2019
  11. Gupta, Otkrist; Raskar, Ramesh (14 жовтня 2018). Distributed learning of deep neural network over multiple agents. arXiv:1810.06060 [cs.LG].
  12. Vepakomma, Praneeth; Gupta, Otkrist (3 грудня 2018). Split learning for health: Distributed deep learning without sharing raw patient data. arXiv:1812.00564 [cs.LG].
  13. Hsieh, Kevin; Phanishayee, Amar; Mutlu, Onur; Gibbons, Phillip (21 листопада 2020). The Non-IID Data Quagmire of Decentralized Machine Learning. International Conference on Machine Learning (англ.). PMLR: 4387—4398. arXiv:1910.00189.
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya