Machine Learning é uma área em constante evolução, às vezes lentamente, e outras vezes experimentamos o equivalente técnico da Explosão Cambriana com um avanço rápido que faz com que muitos Cientistas de Dados tenham um caso sério de síndrome do impostor (achar que não sabe o suficiente).

Considere o caso de uma nova forma de aprendizado de máquina chamada “Aprendizado Federado” (Federated Learning), que foi introduzido pela primeira vez pelo Google AI em 2017 em uma postagem do blog “Aprendizado federado: aprendizado de máquina colaborativo sem dados de treinamento centralizado” (link ao final do artigo) junto com um artigo de pesquisa seminal que definiu o estágio para aprendizagem federada com uma discussão profunda de uma nova abordagem chamada otimização federada: “Otimização federada: Aprendizado de máquina distribuído para inteligência no dispositivo”.

Em apenas alguns anos, esta nova metodologia deu passos significativos.

Neste artigo, vamos explorar a Aprendizagem Federada em termos de seus primórdios, benefícios, desafios, bem como alguns avanços recentes com Edge Computing

Aprendizagem Federada em Poucas Palavras

O aprendizado de máquina tradicional envolve um pipeline de dados que usa um servidor central (local ou nuvem) que hospeda o modelo treinado para fazer previsões. A desvantagem dessa arquitetura é que todos os dados coletados por dispositivos e sensores locais são enviados de volta ao servidor central para processamento e, posteriormente, devolvidos aos dispositivos. Essa viagem de ida e volta limita a capacidade de um modelo de aprender em tempo real.

O Aprendizado Federado (FL – Federated Learning), em contraste, é uma abordagem que baixa o modelo de Machine Learning e treina o modelo atualizado no próprio dispositivo (conceito de Edge Computing) usando dados locais. Esses modelos treinados localmente são então enviados dos dispositivos de volta ao servidor central, onde são agregados, ou seja, ponderações médias e, em seguida, um único modelo global consolidado e aprimorado é enviado de volta aos dispositivos.

O Que e Federated Learning

Observe a imagem acima.

Seu telefone personaliza o modelo localmente, com base no seu uso ( A ). Muitas atualizações de usuários são agregadas ( B ) para formar uma mudança de consenso ( C ) para o modelo compartilhado, após o qual o procedimento é repetido.

Fonte: https://ai.googleblog.com/2017/04/federated-learning-collaborative.html

Em um sentido mais amplo, FL permite que algoritmos de aprendizado de máquina ganhem experiência de uma ampla gama de conjuntos de dados localizados em locais diferentes. A abordagem permite que várias organizações colaborem no desenvolvimento de modelos, mas sem a necessidade de compartilhar dados seguros diretamente entre si.

Ao longo de várias iterações de treinamento, os modelos compartilhados são expostos a uma gama significativamente mais ampla de dados do que qualquer organização possui internamente. Em outras palavras, o FL descentraliza o aprendizado de máquina, eliminando a necessidade de agrupar dados em um único local. Em vez disso, o modelo é treinado em várias iterações em locais diferentes.

O Google descreve como FL funciona dessa forma com relação a telefones celulares. Funciona assim: seu dispositivo baixa o modelo atual, melhora-o ao aprender com os dados do seu telefone e, em seguida, resume as alterações como uma pequena atualização focada. Apenas esta atualização do modelo é enviada para a nuvem, usando comunicação criptografada, onde é imediatamente calculada a média com outras atualizações do usuário para melhorar o modelo compartilhado. Todos os dados de treinamento permanecem no seu dispositivo e nenhuma atualização individual é armazenada na nuvem.

Benefícios

Aqui estão alguns benefícios principais do aprendizado de máquina federado:

O FL permite que dispositivos como telefones celulares aprendam de forma colaborativa um modelo de predição compartilhado, enquanto mantém os dados de treinamento no dispositivo, em vez de exigir que os dados sejam carregados e armazenados em um servidor central.

Leva o treinamento de modelos ao limite, ou seja, dispositivos como smartphones, tablets, IoT ou mesmo “organizações” como hospitais que devem operar sob estritas restrições de privacidade. Manter os dados pessoais locais é um grande benefício de segurança.

Torna a previsão em tempo real possível, já que a previsão acontece no próprio dispositivo. FL reduz o lapso de tempo que ocorre devido à transmissão de dados brutos de volta para um servidor central e, em seguida, envia os resultados de volta para o dispositivo.

Como os modelos residem no dispositivo, o processo de previsão funciona mesmo quando não há conectividade com a Internet.

FL reduz a quantidade de infraestrutura de hardware necessária. FL usa hardware mínimo e o que está disponível em dispositivos móveis é mais do que suficiente para executar os modelos FL.

Desafios

Existem vários desafios principais associados à FL. Primeiro, a comunicação é um gargalo crítico em redes FL, onde os dados gerados em cada dispositivo permanecem locais. Para treinar um modelo usando dados gerados pelos dispositivos na rede, é necessário desenvolver métodos eficientes de comunicação que reduzam o número total de rodadas de comunicação e também enviar iterativamente pequenas atualizações de modelo como parte do processo de treinamento, ao invés de enviar todo o conjunto de dados.

Além disso, os métodos FL devem: antecipar baixos níveis de participação do dispositivo, ou seja, apenas uma pequena fração dos dispositivos sendo ativos ao mesmo tempo; tolerar a variabilidade no hardware que afeta os recursos de armazenamento, computação e comunicação de cada dispositivo em uma rede federada; e ser capaz de lidar com dispositivos descartados na rede.

Por fim, o FL ajuda a proteger os dados gerados em um dispositivo, compartilhando atualizações de modelo, em vez de dados brutos. Porém, a comunicação das atualizações do modelo durante o processo de treinamento ainda pode revelar informações confidenciais, seja para terceiros ou para o servidor central.

Avanços Recentes na Aprendizagem Federada

Devido à importância do que a FL traz para a mesa de aprendizado de máquina em um mundo hiperconectado, essa tecnologia se tornou uma área fértil de pesquisa. Por exemplo, uma implementação simplista da estrutura FL requer que cada dispositivo envie um modelo completo (ou atualização do modelo completo) de volta ao servidor central para cada rodada. Para modelos maiores, esta etapa pode criar um gargalo devido a fatores como velocidades de conexão de internet assimétricas (por exemplo, velocidades de upload mais lentas versus download). Uma nova pesquisa, como “Aprendizado federado: estratégias para melhorar a eficiência da comunicação” (outubro de 2017), investiga métodos que podem reduzir os custos de comunicação do uplink.

Além disso, vários grupos estão trabalhando para revisar as características e desafios exclusivos da FL e fornecer uma perspectiva detalhada das abordagens atuais e avaliar as direções para trabalhos futuros que sejam relevantes para uma série de áreas de aplicação. Um artigo recente, “Aprendizagem federada: desafios, métodos e direções futuras” (agosto de 2019), por um grupo de pesquisadores da Carnegie Mellon University, estabeleceu o fato de que FL é uma área de pesquisa ativa e contínua e forneceu um extenso resumo de trabalhos recentes. Link ao final do artigo.

Há também um artigo que descreve um sistema de produção escalonável para FL para dispositivos móveis, “Rumo ao Aprendizado Federado em Escala: Design de Sistema” (março de 2019), que inclui o design de alto nível resultante, visão geral de novos desafios com soluções e também alguns problemas abertos com direções futuras.

Conclusão

Neste artigo, apresentamos uma nova configuração para aprendizado de máquina distribuído (problemas de otimização), que é chamado de aprendizado federado. Essa configuração é motivada pela metodologia em que os usuários não enviam os dados que geram localmente para os servidores centrais, mas fornecem parte de seu poder computacional para ser usado para realizar o treinamento de aprendizado de máquina local. Isso traz com um conjunto único de desafios. No entanto, os pesquisadores de FL estão ativamente engajados em trazer essa nova tecnologia para o nosso dia a dia.

Quer fazer parte da revolução dos dados? Então inicie sua capacitação agora mesmo clicando aqui

Referências:

Formação Cientista de Dados

Federated Learning: Collaborative Machine Learning without Centralized Training Data

Federated Optimization: Distributed Machine Learning for On-Device Intelligence

Federated Learning: Strategies for Improving Communication Efficiency

Federated Learning: Challenges, Methods, and Future Directions

What is Federated Learning?

TensorFlow Federated: Machine Learning on Decentralized Data