Semantyka prywatności różnicowej w przypadku personalizacji na urządzeniu

Ten dokument podsumowuje podejście do prywatności w ramach personalizacji na urządzeniu (ODP) w kontekście prywatności różnicowej. Aby zachować spójność tego dokumentu, świadomie pominięto inne konsekwencje i decyzje projektowe związane z ochroną prywatności, takie jak minimalizacja danych.

Prywatność różnicowa

Prywatność różnicowa 1 to powszechnie stosowany standard ochrony prywatności w statystycznej analizie danych i uczeniu maszynowym 2 3. Nieformalnie oznacza to, że atakujący dowiaduje się prawie tego samego o użytkowniku z wyników algorytmu prywatności różnicowej, niezależnie od tego, czy jego rekord występuje w podstawowym zbiorze danych. Oznacza to silną ochronę osób: wszelkie wnioski dotyczące danej osoby mogą być wyciągane tylko na podstawie zbiorczych właściwości zbioru danych, które byłyby takie z lub bez rekordu tej osoby.

W kontekście uczenia maszynowego dane wyjściowe algorytmu należy traktować jako wytrenowane parametry modelu. Wyrażenie prawie to samo jest wyrażane matematycznie za pomocą 2 parametrów (ε, δ), gdzie ε jest zwykle małą stałą, a δ ≪ 1/(liczba użytkowników).

Semantyka ochrony prywatności

Projekt ODP ma na celu zapewnienie, aby każda sesja treningowa była chroniona przez prywatność różnicową na poziomie użytkownika (ε,δ). Poniżej przedstawiamy nasze podejście do osiągania tej semantyki.

Model zagrożenia

Określamy różne strony i zakładamy, że:

  • Użytkownik: użytkownik, który jest właścicielem urządzenia i korzysta z usług lub produktów dewelopera. Ich prywatne informacje są w pełni dostępne dla nich samych.
  • Zaufane środowisko wykonawcze (TEE): dane i obliczenia zaufania, które występują w zaufanych środowiskach wykonawczych, są chronione przed atakami za pomocą różnych technologii. Dlatego obliczenia i dane nie wymagają dodatkowej ochrony. Istniejące TEE mogą zezwolić administratorom projektu na dostęp do informacji. Proponujemy niestandardowe funkcje, które uniemożliwiają administratorowi dostęp i potwierdzają, że jest on niedostępny.
  • Atakujący: może mieć informacje poboczne o użytkowniku i ma pełny dostęp do wszystkich informacji wychodzących z TEE (takich jak opublikowane parametry modelu).
  • Deweloper: osoba definiująca i trenowana model. jest uważany za niewiarygodny (i ma pełne możliwości atakującego);

Staramy się projektować ODP z uwzględnieniem tej semantyki prywatności różnicowej:

  • Granica zaufania: z perspektywy użytkownika granica zaufania obejmuje jego urządzenie i TEE. Wszystkie informacje, które opuszczają tę granicę zaufania, powinny być chronione przez prywatność różnicową.
  • Atakujący: pełna ochrona prywatności różnicowej w odniesieniu do atakującego. Każdy podmiot spoza granicy zaufania może być atakującym (w tym deweloper i inni użytkownicy, którzy mogą współpracować). Atakujący, dysponując wszystkimi informacjami spoza granicy zaufania (np. opublikowanym modelem), wszelkimi informacjami pobocznymi o użytkowniku i nieograniczonymi zasobami, nie jest w stanie wywnioskować dodatkowych danych prywatnych o użytkowniku (poza tymi, które są już zawarte w informacjach pobocznych), aż do prawdopodobieństwa określonego przez budżet prywatności. Oznacza to w szczególności pełną ochronę prywatności różnicowej w odniesieniu do dewelopera. Wszystkie informacje udostępniane deweloperowi (np. parametry trenowanego modelu czy zbiorcze wnioskowania) są chronione za pomocą prywatności różnicowej.

Parametry lokalnego modelu

Poprzednia semantyka prywatności uwzględnia przypadki, w których niektóre parametry modelu są lokalne na urządzeniu (np. model, który zawiera uczenie się użytkownika specyficzne dla każdego użytkownika i nie jest udostępniane innym użytkownikom). W przypadku takich modeli te parametry lokalne pozostają w granicach zaufania (nie są publikowane) i nie wymagają ochrony, podczas gdy parametry udostępnionego modelu są publikowane (i są chronione przez prywatność różnicową). Czasami nazywa się to modelem prywatności typu billboard 4.

Funkcje publiczne

W niektórych aplikacjach niektóre funkcje są publiczne. Na przykład w przypadku problemu z rekomendacją filmu funkcje filmu (reżyser, gatunek czy rok wydania) są informacjami publicznymi i nie wymagają ochrony, podczas gdy funkcje związane z użytkownikiem (takie jak dane demograficzne czy filmy, które obejrzał) są danymi prywatnymi i wymagają ochrony.

Informacje publiczne są formułowane jako publiczna tablica cech (w poprzednim przykładzie zawierałaby ona 1 wiersz na film i 1 kolumnę na cechę filmu) i są dostępne dla wszystkich stron. Algorytm trenowania z zasadami prywatności różnicowej może korzystać z tej macierzy bez konieczności jej ochrony (patrz 5). Platforma ODP planuje wdrożenie takich algorytmów.

podejście do prywatności podczas prognozowania lub wnioskowania;

Wnioski są formułowane na podstawie parametrów modelu i cech wejściowych. Parametry modelu są trenowane z użyciem semantyki prywatności różnicowej. W tym rozdziale omawiamy rolę cech wejściowych.

W niektórych przypadkach, gdy deweloper ma już pełny dostęp do funkcji używanych w inferencji, nie ma żadnych problemów z prywatnością i wynik może być widoczny dla dewelopera.

W innych przypadkach (gdy funkcje używane w inferencji są prywatne i niedostępne dla dewelopera) wynik inferencji może być ukryty przed deweloperem, np. przez uruchomienie inferencji (i wszelkich dalszych procesów, które wykorzystują wynik inferencji) na urządzeniu w ramach procesu i obszaru wyświetlania należącego do systemu operacyjnego, z ograniczoną komunikacją poza ten proces.

Procedura szkolenia

Architektura ogólna systemu szkoleniowego
Rysunek 1. Architektura systemu treningowego na wysokim poziomie.

Omówienie

W tej sekcji znajdziesz omówienie architektury i procesu szkolenia (patrz rys. 1). ODP zawiera te komponenty:

  • zaufany dystrybutor, np. federacyjne wybieranie, zaufane pobieranie lub pobieranie prywatnych informacji, który odgrywa rolę rozpowszechniania parametrów modelu; Zakłada się, że zaufany dystrybutor może wysyłać podzbiór parametrów do każdego klienta, nie ujawniając, które parametry zostały pobrane przez danego klienta. Ta „częściowa transmisja” pozwala systemowi zminimalizować ślad na urządzeniu użytkownika: zamiast wysyłać pełną kopię modelu, do danego użytkownika wysyłana jest tylko część parametrów modelu.

  • zaufany agregator, który agreguje informacje z wielu klientów (np. gradienty lub inne statystyki), dodaje szum i przesyła wynik do serwera; Zakładamy, że istnieją zaufane kanały między klientem a agregatorem oraz między klientem a dystrybutorem.

  • algorytmy DP do trenowania, które działają w ramach tej infrastruktury; Każdy algorytm treningowy składa się z różnych obliczeń wykonywanych na różnych komponentach (serwer, klient, agregator, dystrybutor).

Typowe szkolenie obejmuje te etapy:

  1. Serwer przekazuje parametry modelu zaufanemu dystrybutorowi.
  2. Obliczenia po stronie klienta
    • Każde urządzenie klienckie otrzymuje model transmisji (lub podzbiór parametrów istotnych dla użytkownika).
    • Każdy klient wykonuje pewne obliczenia (np. obliczanie gradientów lub innych wystarczających statystyk).
    • Każdy klient wysyła wynik obliczeń do zaufanego agregatora.
    • Zaufany agregator zbiera i agreguje statystyki z klientów, a następnie chroni je za pomocą odpowiednich mechanizmów prywatności różnicowej i przesyła wyniki do serwera.
  3. Obliczenia na serwerze
  4. (nieuczciwy) serwer wykonuje obliczenia na podstawie statystyk chronionych prywatnością różnicową (np. używa agregatów gradientów chronionych prywatnością różnicową do aktualizowania parametrów modelu).

Modele czynnikowe i alternatywna minimalizacja z zasadami prywatności różnicowej

Platforma ODP ma udostępniać ogólne algorytmy treningowe z prywatnością różnicową, które można stosować w przypadku dowolnej architektury modelu (np. DP-SGD 6 7 8 lub DP-FTRL 9 10), a także algorytmy specjalizowane do modeli faktoryzowanych.

Modele czynnikowe to modele, które można rozłożyć na modele podrzędne (nazywane koderami lub wieżami). Weźmy na przykład model o postaci f(u(θu, xu), v(θv, xv)), w którym funkcja u() koduje cechy użytkownika xu (i ma parametry θu), a funkcja v() koduje cechy inne niż użytkownika xv (i ma parametry θv). Te dwa kodowania są łączone za pomocą funkcji f(), aby uzyskać ostateczne przewidywanie modelu. Na przykład w modelu rekomendacji filmów xu to cechy użytkownika, a xv to cechy filmu.

Takie modele dobrze sprawdzają się w przypadku wspomnianej wcześniej architektury rozproszonego systemu (ponieważ oddzielają funkcje dotyczące użytkowników od funkcji nieobejmujących użytkowników).

Modele czynnikowe będą trenowane za pomocą techniki różnicowej prywatności z alternatywnym minimalizowaniem (DPAM), która naprzemiennie optymalizuje parametry θu (podczas gdy θv jest stały) i na odwrót. Wykazano, że algorytmy DPAM zapewniają większą użyteczność w różnych ustawieniach 4 11, zwłaszcza w przypadku funkcji publicznych.

Odniesienia