
Basta pensar, qual é o poder total de computação de todos os smartphones do mundo? Este é um enorme recurso de computação que pode até simular o trabalho do cérebro humano. Esse recurso não pode ficar ocioso, queima estupidamente quilowatts de energia em salas de bate-papo e feeds de mídia social. Se você der esses recursos de computação a uma única IA distribuída do mundo e fornecer dados de smartphones dos usuários - para treinamento -, esse sistema poderá dar um salto quântico nessa área.
Os métodos padrão de aprendizado de máquina exigem que o conjunto de dados para o treinamento do modelo ("primário") seja coletado em um único local - em um computador, servidor ou em um data center ou nuvem. A partir daqui, ele é levado por um modelo treinado nesses dados. No caso de um cluster de computadores no datacenter,
o método Stochastic Gradient Descent (SGD) é usado - um algoritmo de otimização que é executado constantemente em partes de um conjunto de dados distribuído homogeneamente nos servidores da nuvem.
Google, Apple, Facebook, Microsoft e outros players de IA fazem exatamente isso há muito tempo: eles coletam dados - às vezes confidenciais - dos computadores e smartphones dos usuários em um único armazenamento (supostamente) seguro no qual suas redes neurais são treinadas.
Agora, cientistas da Pesquisa do Google propuseram uma adição interessante a esse método padrão de aprendizado de máquina. Eles propuseram uma abordagem inovadora chamada Aprendizado Federado. Ele permite que todos os dispositivos que participam do aprendizado de máquina compartilhem um único modelo para previsão, mas
não compartilhem dados primários para o treinamento do modelo !
Essa abordagem incomum, talvez, reduz a eficácia do aprendizado de máquina (embora isso não seja um fato), mas reduz significativamente os custos do Google para manutenção de data centers. Por que uma empresa investirá grandes quantias de dinheiro em seus equipamentos se possui bilhões de dispositivos Android em todo o mundo que podem compartilhar a carga? Os usuários podem ficar satisfeitos com essa carga, pois ajudam a criar melhores serviços que eles mesmos usam. E eles protegem seus dados confidenciais sem enviá-los ao data center.
O Google enfatiza que, nesse caso, não é apenas que o modelo já treinado seja executado diretamente no dispositivo do usuário, como é o caso da
API do
Mobile Vision e dos serviços de
resposta inteligente no dispositivo . Não, é o
treinamento do modelo que é realizado nos dispositivos finais.
O sistema de aprendizado federado funciona de acordo com o princípio padrão da computação distribuída, como o SETI @ Home, quando milhões de computadores resolvem um grande problema complexo. No caso do SETI @ Home, era uma busca por anomalias no sinal de rádio do espaço em toda a largura do espectro. E, no caso do aprendizado de máquina federado, o Google está aperfeiçoando um modelo único e comum de IA (até agora) fraca. Na prática, o ciclo de treinamento é implementado da seguinte forma:
- o smartphone baixa o modelo atual;
- com a ajuda da mini versão, o TensorFlow realiza um ciclo de treinamento com os dados exclusivos de um usuário específico;
- melhora o modelo;
- calcula a diferença entre os modelos de origem aprimorados, compila um patch usando o protocolo criptográfico da Secure Aggregation , que permite a descriptografia de dados somente se houver centenas ou milhares de patches de outros usuários;
- envia o patch para o servidor central;
- a correção adotada é imediatamente calculada a média com milhares de correções recebidas de outros participantes do experimento usando o algoritmo de média federada;
- uma nova versão do modelo é lançada;
- um modelo aprimorado é enviado aos participantes do experimento.
A média federada é muito semelhante ao método de gradiente estocástico mencionado anteriormente; somente aqui os cálculos iniciais não ocorrem em servidores na nuvem, mas em milhões de smartphones remotos. A principal conquista da média federada é de 10 a 100 vezes menos tráfego com clientes do que tráfego com servidores usando o método de gradiente estocástico. A otimização foi alcançada devido à
compactação de alta qualidade das atualizações enviadas dos smartphones para o servidor. Bem, a vantagem aqui é o protocolo criptográfico de agregação segura.

O Google promete que o smartphone só realizará cálculos para um sistema global de AI distribuído em períodos de inatividade, para que isso não afete o desempenho de nenhuma maneira. Além disso, você pode definir o tempo de operação apenas para o momento em que o smartphone estiver conectado à rede elétrica. Portanto, esses cálculos nem sequer afetam a vida útil da bateria. No momento, o aprendizado de máquina federado está sendo testado em solicitações contextuais no teclado do Google -
Gboard no Android .
O algoritmo de média federada é descrito em mais detalhes no artigo científico
Aprendizado com eficiência de comunicação de redes profundas a partir de dados descentralizados , publicado em 17 de fevereiro de 2016 em arXiv.org (arXiv: 1602.05629).