SlideShare a Scribd company logo
1 of 25
Download to read offline
Budowa modeli uczenia maszynowego
zgodnie z regulacjami o ochronie danych za
pomocą metody Federated Learning
Mikołaj Małkiński, Maciej Leoniak
Machine Learning Engineers, Sotrender
www.WarszawskieDniInformatyki.pl
2
Ochrona danych w uczeniu
maszynowym
Przykład GBoard:
• Cel - predykcja kolejnego słowa w
wiadomości użytkownika
• Problem - wiadomości użytkowników objęte
są ochroną - dane nie mogą być pobierane z
urządzeń
• Rozwiązanie - trening modelu globalnego
bez pobierania danych z urządzeń
https://arxiv.org/pdf/1811.03604.pdf
3
Dlaczego Federated Learning
Możliwe podejścia:
1. Uczenie scentralizowane (podejście klasyczne) - brak prywatności danych
2. Uczenie zdecentralizowane (osobny model trenowany na każdym urządzeniu) - słaba generalizacja
3. Federated Learning (globalny model trenowany bez pobierania danych) - zachowana prywatność i
generalizacja
https://www.researchgate.net/figure/Centralized-vs-Distributed-On-Site-vs-Federated-Learning-Architectures-In-Centralized_fig1_344871928
4
Federated Learning w Sotrender -
case study
• Cel projektu - przewidywanie zasięgu organicznego i płatnego postów na Facebooku
• Problem - regulacje Facebooka nie pozwalają na łączenie danych prywatnych z różnych profili
• Rozwiązanie - trening modelu oparty o Federated Learning
• Dostępne dane:
Prywatne:
• Liczba wyświetleń płatnych i organicznych
postów
• Szczegółowe informacje o postach - np.
liczba kliknięć w post, wyświetleń filmu
• Dostępne tylko dla niektórych profili
Publiczne:
• Dane dotyczące postów - np. treść, zdjęcie
/ wideo, liczba reakcji i komentarzy w
czasie
• Dane dotyczące profili - np. kategoria,
liczba fanów
• Dostępne dla wszystkich profili
Schemat działania
5
Proces treningu:
1. Główny serwer wysyła model do
węzłów
2. Węzły pobierają dane
3. Iteracja treningu w węzłach
4. Obliczone gradienty przesyłane do
serwera
5. Główny model aktualizowany na
podstawie otrzymanych parametrów
6. Kolejna iteracja z nowym modelem -
powrót do kroku 1.
https://medium.com/accenture-the-dock/instilling-responsible-and-reliable-ai-development-with-
federated-learning-d23c366c5efd
6
Synchroniczny SGD
Agregator
Uczestnik 1 Uczestnik 2
1
Model
2
3
Gradient
7
Federated SGD
Agregator
Uczestnik 1 Uczestnik 2
1
Model
2
3
Gradient
2
3
1
8
Federated Averaging
Agregator
Uczestnik 1 Uczestnik 2
1
Model
2
3
Gradient
2
3
1
Wyzwania podczas treningu
9
Rysunki poglądowe z:
- Koneff, Mark D., et al. "Evaluation of harvest and information needs for North American sea ducks." PloS one 12.4 (2017): e0175411.
- Li, Hao, et al. "Visualizing the loss landscape of neural nets." In NeurIPS (2018).
- Cao, Yue, Mingsheng Long, and Jianmin Wang. "Unsupervised domain adaptation with distribution matching machines." In AAAI (2018).
Profil 1 Profil 2
Inferencja vs Trening
10
X Y
Inferencja Trening
Modele
11
✔
❌
❌
TabNet
Arik, Sercan O., and Tomas Pfister. "Tabnet: Attentive
interpretable tabular learning." In AAAI (2019).
✔
✔
12
Wspierane modele ML
XGBoost Sieci neuronowe
Federated XGBoost ✔ ❌
Secure XGBoost
✔ ❌
PySyft ❌ ✔
TF Federated ❌ ✔
13
Charakterystyka bibliotek do FL
Remote
Execution
Encrypted
Computation
Differential
Privacy
Federated XGBoost ✔ ❌ ❌
Secure XGBoost ✔ ✔ ❌
PySyft ✔ ✔ ✔
TF Federated ✔ ✔ ✔
14
Inne biblioteki
- FATE
- Diffprivlib: The IBM Differential Privacy Library
- FedML
- …
- Li, Qinbin, et al. "A survey on federated learning systems:
vision, hype and reality for data privacy and protection." arXiv
preprint arXiv:1907.09693 (2019).
- https://github.com/chaoyanghe/Awesome-Federated-Learning
- https://github.com/poga/awesome-federated-learning
15
Federated XGBoost
- Rozszerzenie biblioteki
XGBoost do wersji Federated
- Każdy uczestnik trenuje lokalny
model na własnych danych
- Agregator łączy aktualizacje
modeli uczestników
- Nowy model jest z powrotem
rozsyłany do uczestników
- Leung, Chester, Andrew Law, and Octavian Sima.
"Towards Privacy-Preserving Collaborative Gradient
Boosted Decision Trees."
- https://github.com/mc2-project/federated-xgboost
- https://federated-xgboost.readthedocs.io/en/latest/
16
Secure XGBoost
- Bezpieczny wspólny trening
(secure collaborative learning)
- Zaszyfrowane dane
- Ochrona przed potencjalnie
niebezpiecznym środowiskiem
dzięki enklawom
- Drugi poziom ochrony
- https://secure-xgboost.readthedocs.io/en/latest/
- https://github.com/mc2-project/secure-xgboost
- https://towardsdatascience.com/secure-collaborative-xgboost-on-encrypted-data-ac7bc0ec7741
17
PySyft
Alternatywa: TensorFlow Federated, https://github.com/tensorflow/federated
https://blog.openmined.org/federated-learning-additive-secret-sharing-pysyft/
18
Nasza infrastruktura do FL
Profil 1
Profil 2
Profil N
Agregator
Baza danych NoSQL
z danymi z FB
Get private data
Train model
19
Feature engineering
Dane publiczne
Cechy zostały stworzone na
publicznych danych, np.:
• Rozkład w czasie i stosunek
liczby polubień, komentarzy
i udostępnień
• Liczba postów danego
profilu przed / po danym
poście, czas od ostatniego /
kolejnego postu
Dane prywatne danego
profilu
Nie można wykorzystywać
danych prywatnych konkretnego
profilu, np. liczby wyświetleń
wszystkich postów danego profilu
w zeszłym miesiącu.
Dane prywatne
zagregowanych profili
Do tworzenia cech na poziomie
grup profili, np. liczba wyświetleń
postów wszystkich profili w danej
kategorii, trzeba by wykorzystać
zabezpieczone agregowanie
(secure aggregation).
20
Zabezpieczone agregowanie
● Wykorzystywane do agregacji danych z
zachowaniem prywatności danych
● Dane przesyłane są w sposób, który
uniemożliwia odczytanie właściwych
wartości, umożliwiając obliczenie agregacji
Przykład - jeśli chcemy obliczyć sumę wartości, do
każdej z nich dodajemy jedną z losowych wartości,
które sumują się do 0.
21
Obserwacje z wykorzystania FL
• Spadki wyników modelu
• Niekoniecznie te same hiperparametry modelu co podczas treningu scentralizowanego
• Dłuższy trening
• Wyższe wymagania sprzętowe
• Dostępne jedynie eksperymentalne biblioteki do treningu klasycznych modeli ML lub
komitetów drzew
• Zwiększony nacisk na wykorzystanie sieci neuronowych, np. architektury TabNet
22
Podsumowanie
Federated Learning
1. Stosowany gdy dane potrzebne do treningu modelu
objęte są ochroną prawną
2. Nie tylko gdy dane znajdują się na prywatnym
urządzeniu
3. Trenuje globalny model bez łączenia danych poprzez
przesyłanie gradientów
4. Wykorzystuje specjalne biblioteki, jak np. Federated
XGBoost, PySyft
5. Wymaga odpowiedniego podejścia do przetwarzania
danych, np. zabezpieczonego agregowania
Your problem and FL have liked each
other
PROBLEM
FEDERATED
LEARNING
Dziękujemy za oglądanie!
Zapraszamy do zadawania pytań
oraz oceny prelekcji pod nagraniem. ↘
www.WarszawskieDniInformatyki.pl
24
Inne przykłady zastosowania FL
Predykcja następnego słowa (GBoard)
25
https://arxiv.org/pdf/1811.03604.pdf
Odkrywanie leków (MELLODDY)
https://blogs.nvidia.com/blog/2019/10/13/what-is-federated-learning

More Related Content

Similar to Budowa modeli uczenia maszynowego zgodnie z regulacjami o ochronie danych za pomocą metody Federated Learning

Federated Learning: Budowanie modeli uczenia maszynowego bez wglądu w rozpros...
Federated Learning: Budowanie modeli uczenia maszynowego bez wglądu w rozpros...Federated Learning: Budowanie modeli uczenia maszynowego bez wglądu w rozpros...
Federated Learning: Budowanie modeli uczenia maszynowego bez wglądu w rozpros...Sotrender
 
Human-in-the-loop (HILT) machine learning i augmentacja danych, czyli jak zbu...
Human-in-the-loop (HILT) machine learning i augmentacja danych, czyli jak zbu...Human-in-the-loop (HILT) machine learning i augmentacja danych, czyli jak zbu...
Human-in-the-loop (HILT) machine learning i augmentacja danych, czyli jak zbu...Sotrender
 
Technik.teleinformatyk 312[02] z3.04_u
Technik.teleinformatyk 312[02] z3.04_uTechnik.teleinformatyk 312[02] z3.04_u
Technik.teleinformatyk 312[02] z3.04_uRzeźnik Sebastian
 
Open Data - zarządzanie danymi w projektach badawczych NCN
Open Data - zarządzanie danymi w projektach badawczych NCNOpen Data - zarządzanie danymi w projektach badawczych NCN
Open Data - zarządzanie danymi w projektach badawczych NCNPlatforma Otwartej Nauki
 
DynamoDB – podstawy modelowania danych dla opornych
DynamoDB – podstawy modelowania danych dla opornychDynamoDB – podstawy modelowania danych dla opornych
DynamoDB – podstawy modelowania danych dla opornychThe Software House
 
Machine learning and Big Data (lecture in Polish)
Machine learning and Big Data (lecture in Polish)Machine learning and Big Data (lecture in Polish)
Machine learning and Big Data (lecture in Polish)Michal Iwanowski
 
Sortowanie Kart Symetria Natalia Bednarz
Sortowanie Kart Symetria Natalia BednarzSortowanie Kart Symetria Natalia Bednarz
Sortowanie Kart Symetria Natalia BednarzSymetria
 
To co powinniście wiedzieć o Machine Learning
To co powinniście wiedzieć o Machine LearningTo co powinniście wiedzieć o Machine Learning
To co powinniście wiedzieć o Machine Learning3camp
 

Similar to Budowa modeli uczenia maszynowego zgodnie z regulacjami o ochronie danych za pomocą metody Federated Learning (14)

Federated Learning: Budowanie modeli uczenia maszynowego bez wglądu w rozpros...
Federated Learning: Budowanie modeli uczenia maszynowego bez wglądu w rozpros...Federated Learning: Budowanie modeli uczenia maszynowego bez wglądu w rozpros...
Federated Learning: Budowanie modeli uczenia maszynowego bez wglądu w rozpros...
 
Administrowanie systemem operacyjnym windows
Administrowanie systemem operacyjnym windowsAdministrowanie systemem operacyjnym windows
Administrowanie systemem operacyjnym windows
 
M4j2
M4j2M4j2
M4j2
 
Human-in-the-loop (HILT) machine learning i augmentacja danych, czyli jak zbu...
Human-in-the-loop (HILT) machine learning i augmentacja danych, czyli jak zbu...Human-in-the-loop (HILT) machine learning i augmentacja danych, czyli jak zbu...
Human-in-the-loop (HILT) machine learning i augmentacja danych, czyli jak zbu...
 
Technik.teleinformatyk 312[02] z3.04_u
Technik.teleinformatyk 312[02] z3.04_uTechnik.teleinformatyk 312[02] z3.04_u
Technik.teleinformatyk 312[02] z3.04_u
 
M4j3
M4j3M4j3
M4j3
 
M4j3
M4j3M4j3
M4j3
 
Open Data - zarządzanie danymi w projektach badawczych NCN
Open Data - zarządzanie danymi w projektach badawczych NCNOpen Data - zarządzanie danymi w projektach badawczych NCN
Open Data - zarządzanie danymi w projektach badawczych NCN
 
Zarządzanie danymi badawczymi
Zarządzanie danymi badawczymiZarządzanie danymi badawczymi
Zarządzanie danymi badawczymi
 
DynamoDB – podstawy modelowania danych dla opornych
DynamoDB – podstawy modelowania danych dla opornychDynamoDB – podstawy modelowania danych dla opornych
DynamoDB – podstawy modelowania danych dla opornych
 
Informatyka
InformatykaInformatyka
Informatyka
 
Machine learning and Big Data (lecture in Polish)
Machine learning and Big Data (lecture in Polish)Machine learning and Big Data (lecture in Polish)
Machine learning and Big Data (lecture in Polish)
 
Sortowanie Kart Symetria Natalia Bednarz
Sortowanie Kart Symetria Natalia BednarzSortowanie Kart Symetria Natalia Bednarz
Sortowanie Kart Symetria Natalia Bednarz
 
To co powinniście wiedzieć o Machine Learning
To co powinniście wiedzieć o Machine LearningTo co powinniście wiedzieć o Machine Learning
To co powinniście wiedzieć o Machine Learning
 

More from Sotrender

Topic modeling - nie tylko LDA w Gensim
Topic modeling - nie tylko LDA w GensimTopic modeling - nie tylko LDA w Gensim
Topic modeling - nie tylko LDA w GensimSotrender
 
Facebook Audience Insights – czyli czym interesują się polscy użytkownicy Fac...
Facebook Audience Insights – czyli czym interesują się polscy użytkownicy Fac...Facebook Audience Insights – czyli czym interesują się polscy użytkownicy Fac...
Facebook Audience Insights – czyli czym interesują się polscy użytkownicy Fac...Sotrender
 
Rozpoznawanie treści obrazów na kreacjach reklam na Facebooku z wykorzystanie...
Rozpoznawanie treści obrazów na kreacjach reklam na Facebooku z wykorzystanie...Rozpoznawanie treści obrazów na kreacjach reklam na Facebooku z wykorzystanie...
Rozpoznawanie treści obrazów na kreacjach reklam na Facebooku z wykorzystanie...Sotrender
 
Predykcja efektywności działań marketingowych w serwisie Facebook
Predykcja efektywności działań marketingowych w serwisie FacebookPredykcja efektywności działań marketingowych w serwisie Facebook
Predykcja efektywności działań marketingowych w serwisie FacebookSotrender
 
Trenowanie i wdrażanie modeli uczenia maszynowego z wykorzystaniem Google Clo...
Trenowanie i wdrażanie modeli uczenia maszynowego z wykorzystaniem Google Clo...Trenowanie i wdrażanie modeli uczenia maszynowego z wykorzystaniem Google Clo...
Trenowanie i wdrażanie modeli uczenia maszynowego z wykorzystaniem Google Clo...Sotrender
 
Wykrywanie mowy nienawiści w języku polskim
Wykrywanie mowy nienawiści w języku polskimWykrywanie mowy nienawiści w języku polskim
Wykrywanie mowy nienawiści w języku polskimSotrender
 
Prawdziwe oblicze tekstu, czyli jak rozmawiamy w sieci [WDI 2019]
Prawdziwe oblicze tekstu, czyli jak rozmawiamy w sieci [WDI 2019]Prawdziwe oblicze tekstu, czyli jak rozmawiamy w sieci [WDI 2019]
Prawdziwe oblicze tekstu, czyli jak rozmawiamy w sieci [WDI 2019]Sotrender
 
Ślady cyfrowe - sposoby na analizowanie aktywności internautów i działań rekl...
Ślady cyfrowe - sposoby na analizowanie aktywności internautów i działań rekl...Ślady cyfrowe - sposoby na analizowanie aktywności internautów i działań rekl...
Ślady cyfrowe - sposoby na analizowanie aktywności internautów i działań rekl...Sotrender
 
Bajki robotów? Machine Learning in Digital Marketing | Konferencja In Digital...
Bajki robotów? Machine Learning in Digital Marketing | Konferencja In Digital...Bajki robotów? Machine Learning in Digital Marketing | Konferencja In Digital...
Bajki robotów? Machine Learning in Digital Marketing | Konferencja In Digital...Sotrender
 
Sztuczna inteligencja w marketingu | Infoshare 2019
Sztuczna inteligencja w marketingu | Infoshare 2019Sztuczna inteligencja w marketingu | Infoshare 2019
Sztuczna inteligencja w marketingu | Infoshare 2019Sotrender
 
Pragmatic Machine Learning in Business
Pragmatic Machine Learning in BusinessPragmatic Machine Learning in Business
Pragmatic Machine Learning in BusinessSotrender
 
Wykorzystanie Big Data i cyfrowego śladu w naukach psychologicznych i społecz...
Wykorzystanie Big Data i cyfrowego śladu w naukach psychologicznych i społecz...Wykorzystanie Big Data i cyfrowego śladu w naukach psychologicznych i społecz...
Wykorzystanie Big Data i cyfrowego śladu w naukach psychologicznych i społecz...Sotrender
 
Jak wykorzystać social media w badaniach i jak przełożyć to na decyzje związa...
Jak wykorzystać social media w badaniach i jak przełożyć to na decyzje związa...Jak wykorzystać social media w badaniach i jak przełożyć to na decyzje związa...
Jak wykorzystać social media w badaniach i jak przełożyć to na decyzje związa...Sotrender
 
Obsługa klienta w social media
Obsługa klienta w social mediaObsługa klienta w social media
Obsługa klienta w social mediaSotrender
 
Jakimi wartościami kieruje się Twoja grupa docelowa? [Listonic Case Study]
Jakimi wartościami kieruje się Twoja grupa docelowa? [Listonic Case Study]Jakimi wartościami kieruje się Twoja grupa docelowa? [Listonic Case Study]
Jakimi wartościami kieruje się Twoja grupa docelowa? [Listonic Case Study]Sotrender
 
Każde pokolenie ma swój czas? Różnice generacyjne a dane z mediów społecznośc...
Każde pokolenie ma swój czas? Różnice generacyjne a dane z mediów społecznośc...Każde pokolenie ma swój czas? Różnice generacyjne a dane z mediów społecznośc...
Każde pokolenie ma swój czas? Różnice generacyjne a dane z mediów społecznośc...Sotrender
 
Poszerzanie pola walki - czyli z kim tak naprawdę konkurujecie?
Poszerzanie pola walki - czyli z kim tak naprawdę konkurujecie? Poszerzanie pola walki - czyli z kim tak naprawdę konkurujecie?
Poszerzanie pola walki - czyli z kim tak naprawdę konkurujecie? Sotrender
 
Mallkołaj rozdaje prezenty - Case Study z akcji Mall.pl i Los Videos
Mallkołaj rozdaje prezenty - Case Study z akcji Mall.pl i Los VideosMallkołaj rozdaje prezenty - Case Study z akcji Mall.pl i Los Videos
Mallkołaj rozdaje prezenty - Case Study z akcji Mall.pl i Los VideosSotrender
 
Kilka praktycznych sposobów na wykorzystanie danych z social media w marketingu
Kilka praktycznych sposobów na wykorzystanie danych z social media w marketinguKilka praktycznych sposobów na wykorzystanie danych z social media w marketingu
Kilka praktycznych sposobów na wykorzystanie danych z social media w marketinguSotrender
 
Pożrą, przeżują i wydalą - Google, Facebook i polskie biznesy internetowe
Pożrą, przeżują i wydalą - Google, Facebook i polskie biznesy internetowePożrą, przeżują i wydalą - Google, Facebook i polskie biznesy internetowe
Pożrą, przeżują i wydalą - Google, Facebook i polskie biznesy internetoweSotrender
 

More from Sotrender (20)

Topic modeling - nie tylko LDA w Gensim
Topic modeling - nie tylko LDA w GensimTopic modeling - nie tylko LDA w Gensim
Topic modeling - nie tylko LDA w Gensim
 
Facebook Audience Insights – czyli czym interesują się polscy użytkownicy Fac...
Facebook Audience Insights – czyli czym interesują się polscy użytkownicy Fac...Facebook Audience Insights – czyli czym interesują się polscy użytkownicy Fac...
Facebook Audience Insights – czyli czym interesują się polscy użytkownicy Fac...
 
Rozpoznawanie treści obrazów na kreacjach reklam na Facebooku z wykorzystanie...
Rozpoznawanie treści obrazów na kreacjach reklam na Facebooku z wykorzystanie...Rozpoznawanie treści obrazów na kreacjach reklam na Facebooku z wykorzystanie...
Rozpoznawanie treści obrazów na kreacjach reklam na Facebooku z wykorzystanie...
 
Predykcja efektywności działań marketingowych w serwisie Facebook
Predykcja efektywności działań marketingowych w serwisie FacebookPredykcja efektywności działań marketingowych w serwisie Facebook
Predykcja efektywności działań marketingowych w serwisie Facebook
 
Trenowanie i wdrażanie modeli uczenia maszynowego z wykorzystaniem Google Clo...
Trenowanie i wdrażanie modeli uczenia maszynowego z wykorzystaniem Google Clo...Trenowanie i wdrażanie modeli uczenia maszynowego z wykorzystaniem Google Clo...
Trenowanie i wdrażanie modeli uczenia maszynowego z wykorzystaniem Google Clo...
 
Wykrywanie mowy nienawiści w języku polskim
Wykrywanie mowy nienawiści w języku polskimWykrywanie mowy nienawiści w języku polskim
Wykrywanie mowy nienawiści w języku polskim
 
Prawdziwe oblicze tekstu, czyli jak rozmawiamy w sieci [WDI 2019]
Prawdziwe oblicze tekstu, czyli jak rozmawiamy w sieci [WDI 2019]Prawdziwe oblicze tekstu, czyli jak rozmawiamy w sieci [WDI 2019]
Prawdziwe oblicze tekstu, czyli jak rozmawiamy w sieci [WDI 2019]
 
Ślady cyfrowe - sposoby na analizowanie aktywności internautów i działań rekl...
Ślady cyfrowe - sposoby na analizowanie aktywności internautów i działań rekl...Ślady cyfrowe - sposoby na analizowanie aktywności internautów i działań rekl...
Ślady cyfrowe - sposoby na analizowanie aktywności internautów i działań rekl...
 
Bajki robotów? Machine Learning in Digital Marketing | Konferencja In Digital...
Bajki robotów? Machine Learning in Digital Marketing | Konferencja In Digital...Bajki robotów? Machine Learning in Digital Marketing | Konferencja In Digital...
Bajki robotów? Machine Learning in Digital Marketing | Konferencja In Digital...
 
Sztuczna inteligencja w marketingu | Infoshare 2019
Sztuczna inteligencja w marketingu | Infoshare 2019Sztuczna inteligencja w marketingu | Infoshare 2019
Sztuczna inteligencja w marketingu | Infoshare 2019
 
Pragmatic Machine Learning in Business
Pragmatic Machine Learning in BusinessPragmatic Machine Learning in Business
Pragmatic Machine Learning in Business
 
Wykorzystanie Big Data i cyfrowego śladu w naukach psychologicznych i społecz...
Wykorzystanie Big Data i cyfrowego śladu w naukach psychologicznych i społecz...Wykorzystanie Big Data i cyfrowego śladu w naukach psychologicznych i społecz...
Wykorzystanie Big Data i cyfrowego śladu w naukach psychologicznych i społecz...
 
Jak wykorzystać social media w badaniach i jak przełożyć to na decyzje związa...
Jak wykorzystać social media w badaniach i jak przełożyć to na decyzje związa...Jak wykorzystać social media w badaniach i jak przełożyć to na decyzje związa...
Jak wykorzystać social media w badaniach i jak przełożyć to na decyzje związa...
 
Obsługa klienta w social media
Obsługa klienta w social mediaObsługa klienta w social media
Obsługa klienta w social media
 
Jakimi wartościami kieruje się Twoja grupa docelowa? [Listonic Case Study]
Jakimi wartościami kieruje się Twoja grupa docelowa? [Listonic Case Study]Jakimi wartościami kieruje się Twoja grupa docelowa? [Listonic Case Study]
Jakimi wartościami kieruje się Twoja grupa docelowa? [Listonic Case Study]
 
Każde pokolenie ma swój czas? Różnice generacyjne a dane z mediów społecznośc...
Każde pokolenie ma swój czas? Różnice generacyjne a dane z mediów społecznośc...Każde pokolenie ma swój czas? Różnice generacyjne a dane z mediów społecznośc...
Każde pokolenie ma swój czas? Różnice generacyjne a dane z mediów społecznośc...
 
Poszerzanie pola walki - czyli z kim tak naprawdę konkurujecie?
Poszerzanie pola walki - czyli z kim tak naprawdę konkurujecie? Poszerzanie pola walki - czyli z kim tak naprawdę konkurujecie?
Poszerzanie pola walki - czyli z kim tak naprawdę konkurujecie?
 
Mallkołaj rozdaje prezenty - Case Study z akcji Mall.pl i Los Videos
Mallkołaj rozdaje prezenty - Case Study z akcji Mall.pl i Los VideosMallkołaj rozdaje prezenty - Case Study z akcji Mall.pl i Los Videos
Mallkołaj rozdaje prezenty - Case Study z akcji Mall.pl i Los Videos
 
Kilka praktycznych sposobów na wykorzystanie danych z social media w marketingu
Kilka praktycznych sposobów na wykorzystanie danych z social media w marketinguKilka praktycznych sposobów na wykorzystanie danych z social media w marketingu
Kilka praktycznych sposobów na wykorzystanie danych z social media w marketingu
 
Pożrą, przeżują i wydalą - Google, Facebook i polskie biznesy internetowe
Pożrą, przeżują i wydalą - Google, Facebook i polskie biznesy internetowePożrą, przeżują i wydalą - Google, Facebook i polskie biznesy internetowe
Pożrą, przeżują i wydalą - Google, Facebook i polskie biznesy internetowe
 

Budowa modeli uczenia maszynowego zgodnie z regulacjami o ochronie danych za pomocą metody Federated Learning

  • 1. Budowa modeli uczenia maszynowego zgodnie z regulacjami o ochronie danych za pomocą metody Federated Learning Mikołaj Małkiński, Maciej Leoniak Machine Learning Engineers, Sotrender www.WarszawskieDniInformatyki.pl
  • 2. 2 Ochrona danych w uczeniu maszynowym Przykład GBoard: • Cel - predykcja kolejnego słowa w wiadomości użytkownika • Problem - wiadomości użytkowników objęte są ochroną - dane nie mogą być pobierane z urządzeń • Rozwiązanie - trening modelu globalnego bez pobierania danych z urządzeń https://arxiv.org/pdf/1811.03604.pdf
  • 3. 3 Dlaczego Federated Learning Możliwe podejścia: 1. Uczenie scentralizowane (podejście klasyczne) - brak prywatności danych 2. Uczenie zdecentralizowane (osobny model trenowany na każdym urządzeniu) - słaba generalizacja 3. Federated Learning (globalny model trenowany bez pobierania danych) - zachowana prywatność i generalizacja https://www.researchgate.net/figure/Centralized-vs-Distributed-On-Site-vs-Federated-Learning-Architectures-In-Centralized_fig1_344871928
  • 4. 4 Federated Learning w Sotrender - case study • Cel projektu - przewidywanie zasięgu organicznego i płatnego postów na Facebooku • Problem - regulacje Facebooka nie pozwalają na łączenie danych prywatnych z różnych profili • Rozwiązanie - trening modelu oparty o Federated Learning • Dostępne dane: Prywatne: • Liczba wyświetleń płatnych i organicznych postów • Szczegółowe informacje o postach - np. liczba kliknięć w post, wyświetleń filmu • Dostępne tylko dla niektórych profili Publiczne: • Dane dotyczące postów - np. treść, zdjęcie / wideo, liczba reakcji i komentarzy w czasie • Dane dotyczące profili - np. kategoria, liczba fanów • Dostępne dla wszystkich profili
  • 5. Schemat działania 5 Proces treningu: 1. Główny serwer wysyła model do węzłów 2. Węzły pobierają dane 3. Iteracja treningu w węzłach 4. Obliczone gradienty przesyłane do serwera 5. Główny model aktualizowany na podstawie otrzymanych parametrów 6. Kolejna iteracja z nowym modelem - powrót do kroku 1. https://medium.com/accenture-the-dock/instilling-responsible-and-reliable-ai-development-with- federated-learning-d23c366c5efd
  • 6. 6 Synchroniczny SGD Agregator Uczestnik 1 Uczestnik 2 1 Model 2 3 Gradient
  • 7. 7 Federated SGD Agregator Uczestnik 1 Uczestnik 2 1 Model 2 3 Gradient 2 3 1
  • 8. 8 Federated Averaging Agregator Uczestnik 1 Uczestnik 2 1 Model 2 3 Gradient 2 3 1
  • 9. Wyzwania podczas treningu 9 Rysunki poglądowe z: - Koneff, Mark D., et al. "Evaluation of harvest and information needs for North American sea ducks." PloS one 12.4 (2017): e0175411. - Li, Hao, et al. "Visualizing the loss landscape of neural nets." In NeurIPS (2018). - Cao, Yue, Mingsheng Long, and Jianmin Wang. "Unsupervised domain adaptation with distribution matching machines." In AAAI (2018). Profil 1 Profil 2
  • 10. Inferencja vs Trening 10 X Y Inferencja Trening
  • 11. Modele 11 ✔ ❌ ❌ TabNet Arik, Sercan O., and Tomas Pfister. "Tabnet: Attentive interpretable tabular learning." In AAAI (2019). ✔ ✔
  • 12. 12 Wspierane modele ML XGBoost Sieci neuronowe Federated XGBoost ✔ ❌ Secure XGBoost ✔ ❌ PySyft ❌ ✔ TF Federated ❌ ✔
  • 13. 13 Charakterystyka bibliotek do FL Remote Execution Encrypted Computation Differential Privacy Federated XGBoost ✔ ❌ ❌ Secure XGBoost ✔ ✔ ❌ PySyft ✔ ✔ ✔ TF Federated ✔ ✔ ✔
  • 14. 14 Inne biblioteki - FATE - Diffprivlib: The IBM Differential Privacy Library - FedML - … - Li, Qinbin, et al. "A survey on federated learning systems: vision, hype and reality for data privacy and protection." arXiv preprint arXiv:1907.09693 (2019). - https://github.com/chaoyanghe/Awesome-Federated-Learning - https://github.com/poga/awesome-federated-learning
  • 15. 15 Federated XGBoost - Rozszerzenie biblioteki XGBoost do wersji Federated - Każdy uczestnik trenuje lokalny model na własnych danych - Agregator łączy aktualizacje modeli uczestników - Nowy model jest z powrotem rozsyłany do uczestników - Leung, Chester, Andrew Law, and Octavian Sima. "Towards Privacy-Preserving Collaborative Gradient Boosted Decision Trees." - https://github.com/mc2-project/federated-xgboost - https://federated-xgboost.readthedocs.io/en/latest/
  • 16. 16 Secure XGBoost - Bezpieczny wspólny trening (secure collaborative learning) - Zaszyfrowane dane - Ochrona przed potencjalnie niebezpiecznym środowiskiem dzięki enklawom - Drugi poziom ochrony - https://secure-xgboost.readthedocs.io/en/latest/ - https://github.com/mc2-project/secure-xgboost - https://towardsdatascience.com/secure-collaborative-xgboost-on-encrypted-data-ac7bc0ec7741
  • 17. 17 PySyft Alternatywa: TensorFlow Federated, https://github.com/tensorflow/federated https://blog.openmined.org/federated-learning-additive-secret-sharing-pysyft/
  • 18. 18 Nasza infrastruktura do FL Profil 1 Profil 2 Profil N Agregator Baza danych NoSQL z danymi z FB Get private data Train model
  • 19. 19 Feature engineering Dane publiczne Cechy zostały stworzone na publicznych danych, np.: • Rozkład w czasie i stosunek liczby polubień, komentarzy i udostępnień • Liczba postów danego profilu przed / po danym poście, czas od ostatniego / kolejnego postu Dane prywatne danego profilu Nie można wykorzystywać danych prywatnych konkretnego profilu, np. liczby wyświetleń wszystkich postów danego profilu w zeszłym miesiącu. Dane prywatne zagregowanych profili Do tworzenia cech na poziomie grup profili, np. liczba wyświetleń postów wszystkich profili w danej kategorii, trzeba by wykorzystać zabezpieczone agregowanie (secure aggregation).
  • 20. 20 Zabezpieczone agregowanie ● Wykorzystywane do agregacji danych z zachowaniem prywatności danych ● Dane przesyłane są w sposób, który uniemożliwia odczytanie właściwych wartości, umożliwiając obliczenie agregacji Przykład - jeśli chcemy obliczyć sumę wartości, do każdej z nich dodajemy jedną z losowych wartości, które sumują się do 0.
  • 21. 21 Obserwacje z wykorzystania FL • Spadki wyników modelu • Niekoniecznie te same hiperparametry modelu co podczas treningu scentralizowanego • Dłuższy trening • Wyższe wymagania sprzętowe • Dostępne jedynie eksperymentalne biblioteki do treningu klasycznych modeli ML lub komitetów drzew • Zwiększony nacisk na wykorzystanie sieci neuronowych, np. architektury TabNet
  • 22. 22 Podsumowanie Federated Learning 1. Stosowany gdy dane potrzebne do treningu modelu objęte są ochroną prawną 2. Nie tylko gdy dane znajdują się na prywatnym urządzeniu 3. Trenuje globalny model bez łączenia danych poprzez przesyłanie gradientów 4. Wykorzystuje specjalne biblioteki, jak np. Federated XGBoost, PySyft 5. Wymaga odpowiedniego podejścia do przetwarzania danych, np. zabezpieczonego agregowania Your problem and FL have liked each other PROBLEM FEDERATED LEARNING
  • 23. Dziękujemy za oglądanie! Zapraszamy do zadawania pytań oraz oceny prelekcji pod nagraniem. ↘ www.WarszawskieDniInformatyki.pl
  • 24. 24
  • 25. Inne przykłady zastosowania FL Predykcja następnego słowa (GBoard) 25 https://arxiv.org/pdf/1811.03604.pdf Odkrywanie leków (MELLODDY) https://blogs.nvidia.com/blog/2019/10/13/what-is-federated-learning