Semântica de privacidade diferencial para a personalização no dispositivo

Este documento resume a abordagem de privacidade para a personalização no dispositivo (ODP, na sigla em inglês) especificamente no contexto da privacidade diferencial. Outras implicações de privacidade e decisões de design, como a minimização de dados, foram intencionalmente deixadas de fora para manter o foco deste documento.

Privacidade diferencial

A privacidade diferencial 1 é um padrão amplamente adotado de proteção de privacidade na análise de dados estatísticos e no aprendizado de máquina 2 3. Informalmente, ele diz que um invasor aprende quase a mesma coisa sobre um usuário com base na saída de um algoritmo de privacidade diferencial, independentemente de o registro dele aparecer ou não no conjunto de dados. Isso implica proteções fortes para os indivíduos: qualquer inferência feita sobre uma pessoa só pode ser devido a propriedades agregadas do conjunto de dados que seriam mantidas com ou sem o registro dessa pessoa.

No contexto do aprendizado de máquina, a saída do algoritmo deve ser considerada como os parâmetros do modelo treinado. A frase quase a mesma coisa é quantificada matematicamente por dois parâmetros (ε, δ), em que ε é normalmente escolhido para ser uma constante pequena e δ≪1/(número de usuários).

Semântica de privacidade

O design da ODP busca garantir que cada execução de treinamento tenha privacidade diferencial no nível do usuário (ε,δ). A seguir, descrevemos nossa abordagem para alcançar essa semântica.

Modelo de ameaça

Definimos as diferentes partes e declaramos suposições sobre cada uma delas:

  • Usuário:o proprietário do dispositivo e consumidor dos produtos ou serviços fornecidos pelo desenvolvedor. As informações particulares estão totalmente disponíveis para elas.
  • Ambiente de execução confiável (TEE): os dados e as computações confiáveis que ocorrem nos TEEs são protegidos contra invasores usando várias tecnologias. Portanto, a computação e os dados não precisam de proteção extra. Os TEEs atuais podem permitir que os administradores do projeto acessem as informações. Propomos recursos personalizados para impedir e validar que o acesso não está disponível para um administrador.
  • O invasor:pode ter informações secundárias sobre o usuário e tem acesso total a todas as informações que saem do TEE, como os parâmetros de modelo publicados.
  • Desenvolvedor:quem define e treina o modelo. É considerado não confiável (e tem a capacidade total de um invasor).

Nosso objetivo é projetar a ODP com a seguinte semântica de privacidade diferencial:

  • Limite de confiança:do ponto de vista de um usuário, o limite de confiança consiste no próprio dispositivo do usuário e no TEE. Todas as informações que saem desse limite de confiança precisam ser protegidas pela privacidade diferencial.
  • Agressor:proteção completa de privacidade diferencial em relação ao invasor. Qualquer entidade fora do limite de confiança pode ser um invasor (incluindo o desenvolvedor e outros usuários, todos potencialmente envolvidos em uma conspiração). O invasor, considerando todas as informações fora do limite de confiança (por exemplo, o modelo publicado), qualquer informação secundária sobre o usuário e recursos infinitos, não é capaz de inferir outros dados particulares sobre o usuário (além daqueles que já estão nas informações secundárias), até as probabilidades fornecidas pelo orçamento de privacidade. Isso implica uma proteção completa de privacidade diferencial em relação ao desenvolvedor. Todas as informações divulgadas ao desenvolvedor (como parâmetros de modelo treinado ou inferências agregadas) são protegidas pela privacidade diferencial.

Parâmetros do modelo local

A semântica de privacidade anterior acomoda o caso em que alguns dos parâmetros do modelo são locais para o dispositivo, por exemplo, um modelo que contém uma incorporação de usuário específica para cada usuário e não compartilhada entre os usuários. Para esses modelos, esses parâmetros locais permanecem dentro do limite de confiança (não são publicados) e não exigem proteção, enquanto os parâmetros de modelo compartilhados são publicados (e protegidos pela privacidade diferencial). Isso às vezes é chamado de modelo de privacidade de 4.

Recursos públicos

Em alguns aplicativos, alguns recursos são públicos. Por exemplo, em um problema de recomendação de filmes, os recursos de um filme (diretor, gênero ou ano de lançamento) são informações públicas e não precisam de proteção, enquanto os recursos relacionados ao usuário (como informações demográficas ou quais filmes o usuário assistiu) são dados particulares e precisam de proteção.

As informações públicas são formalizadas como uma matriz de recursos pública (no exemplo anterior, essa matriz conteria uma linha por filme e uma coluna por recurso do filme) que está disponível para todas as partes. O algoritmo de treinamento com privacidade diferencial pode usar essa matriz sem a necessidade de protegê-la. Confira o exemplo 5. A plataforma ODP planeja implementar esses algoritmos.

Uma abordagem de privacidade durante a previsão ou inferência

As inferências são baseadas nos parâmetros do modelo e nos atributos de entrada. Os parâmetros do modelo são treinados com semântica de privacidade diferencial. Aqui, discutimos o papel dos elementos de entrada.

Em alguns casos de uso, quando o desenvolvedor já tem acesso total aos recursos usados na inferência, não há preocupação com a privacidade da inferência, e o resultado da inferência pode ficar visível para o desenvolvedor.

Em outros casos (quando os recursos usados na inferência são particulares e não acessíveis ao desenvolvedor), o resultado da inferência pode ser ocultado do desenvolvedor, por exemplo, fazendo com que a inferência (e qualquer processo downstream que use o resultado da inferência) seja executada no dispositivo, em um processo e área de exibição pertencentes ao SO, com comunicação restrita fora desse processo.

Procedimento de treinamento

Arquitetura de alto nível do sistema de treinamento
Figura 1. Arquitetura de alto nível do sistema de treinamento.

Visão geral

Esta seção oferece uma visão geral da arquitetura e como o treinamento é realizado. Consulte a Figura 1. O ODP implementa os seguintes componentes:

  • Um distribuidor confiável, como seleção federada, download confiável ou recuperação de informações particulares, que desempenha o papel de transmissão de parâmetros do modelo. Supõe-se que o distribuidor confiável pode enviar um subconjunto de parâmetros para cada cliente, sem revelar quais parâmetros foram transferidos por qual cliente. Essa "transmissão parcial" permite que o sistema minimize o impacto no dispositivo do usuário final: em vez de enviar uma cópia completa do modelo, apenas uma fração dos parâmetros do modelo é enviada para qualquer usuário.

  • Um agregador confiável, que agrega informações de vários clientes (por exemplo, gradientes ou outras estatísticas), adiciona ruído e envia o resultado ao servidor. A suposição é que há canais confiáveis entre o cliente e o agregador e entre o cliente e o distribuidor.

  • Algoritmos de treinamento de DP executados nessa infraestrutura. Cada algoritmo de treinamento consiste em diferentes cálculos executados nos diferentes componentes (servidor, cliente, agregador, distribuidor).

Uma rodada de treinamento típica consiste nas seguintes etapas:

  1. O servidor transmite os parâmetros do modelo para o distribuidor confiável.
  2. Cálculo do cliente
    • Cada dispositivo cliente recebe o modelo de transmissão (ou o subconjunto de parâmetros relevantes para o usuário).
    • Cada cliente realiza algum cálculo (por exemplo, calculando gradientes ou outras estatísticas suficientes).
    • Cada cliente envia o resultado da computação para o agregador confiável.
    • O agregador confiável coleta, agrega e protege as estatísticas dos clientes usando mecanismos de privacidade diferencial adequados e envia o resultado ao servidor.
  3. Computação do servidor
  4. O servidor (não confiável) executa cálculos nas estatísticas protegidas pela privacidade diferencial (por exemplo, usa gradientes agregados diferencialmente particulares para atualizar os parâmetros do modelo).

Modelos fatorados e minimização alternada diferencialmente particular

A plataforma ODP planeja fornecer algoritmos de treinamento de privacidade diferencial de uso geral que podem ser aplicados a qualquer arquitetura de modelo (como DP-SGD 6 7 8 ou DP-FTRL 9 10), além de algoritmos especializados em modelos fatorizados.

Os modelos fatorizados são aqueles que podem ser decompostos em submodelos (chamados de codificadores ou torres). Por exemplo, considere um modelo do formulário f(u(θu, xu), v(θv, xv)), em que u() codifica os recursos do usuário xu (e tem parâmetros θu) e v() codifica os recursos que não são do usuário xv (e tem parâmetros θv). As duas codificações são combinadas usando f() para produzir a previsão final do modelo. Por exemplo, em um modelo de recomendação de filmes, xu são os recursos do usuário e xv são os recursos do filme.

Esses modelos são adequados para a arquitetura de sistema distribuída mencionada (já que separam os recursos do usuário e de quem não é usuário).

Os modelos fatorizados serão treinados usando a minimização alternada diferencialmente particular (DPAM, na sigla em inglês), que alterna entre a otimização dos parâmetros θu (enquanto θv é fixo) e vice-versa. Os algoritmos de DPAM têm uma utilidade melhor em várias configurações 4 11, principalmente na presença de recursos públicos.

Referências