Fundamentos de IA

O que ÃĐ Aprendizado Federado?

mm
Adicione Unite.AI às suas fontes preferidas no Google

O que ÃĐ Aprendizado Federado?

O mÃĐtodo tradicional de treinamento de modelos de IA envolve a configuraçÃĢo de servidores onde os modelos sÃĢo treinados em dados, muitas vezes por meio do uso de uma plataforma de computaçÃĢo baseada em nuvem. No entanto, nos Últimos anos, uma forma alternativa de criaçÃĢo de modelos surgiu, chamada de aprendizado federado. Aprendizado federado traz modelos de aprendizado de mÃĄquina para a fonte de dados, em vez de trazer os dados para o modelo. O aprendizado federado liga vÃĄrios dispositivos computacionais em um sistema descentralizado que permite que os dispositivos individuais que coletam dados ajudem a treinar o modelo.

Em um sistema de aprendizado federado, os vÃĄrios dispositivos que fazem parte da rede de aprendizado tÊm uma cÃģpia do modelo no dispositivo. Os diferentes dispositivos/clients treinam sua prÃģpria cÃģpia do modelo usando os dados locais do cliente, e entÃĢo os parÃĒmetros/pesos dos modelos individuais sÃĢo enviados para um dispositivo mestre, ou servidor, que agrega os parÃĒmetros e atualiza o modelo global. Esse processo de treinamento pode ser repetido atÃĐ que um nível de precisÃĢo desejado seja alcançado. Em resumo, a ideia por trÃĄs do aprendizado federado ÃĐ que nenhum dos dados de treinamento ÃĐ transmitido entre dispositivos ou entre partes, apenas as atualizaçÃĩes relacionadas ao modelo sÃĢo.

O aprendizado federado pode ser dividido em trÊs etapas ou fases diferentes. O aprendizado federado geralmente começa com um modelo genÃĐrico que atua como uma linha de base e ÃĐ treinado em um servidor central. Na primeira etapa, esse modelo genÃĐrico ÃĐ enviado para os clientes da aplicaçÃĢo. As cÃģpias locais sÃĢo entÃĢo treinadas em dados gerados pelo sistema do cliente, aprendendo e melhorando seu desempenho.

Na segunda etapa, os clientes enviam seus parÃĒmetros de modelo aprendidos para o servidor central. Isso ocorre periodicamente, em um cronograma definido.

Na terceira etapa, o servidor agrega os parÃĒmetros aprendidos quando os recebe. ApÃģs os parÃĒmetros serem agregados, o modelo central ÃĐ atualizado e compartilhado novamente com os clientes. O processo inteiro entÃĢo se repete.

O benefício de ter uma cÃģpia do modelo nos vÃĄrios dispositivos ÃĐ que as latÊncias de rede sÃĢo reduzidas ou eliminadas. Os custos associados ao compartilhamento de dados com o servidor tambÃĐm sÃĢo eliminados. Outros benefícios dos mÃĐtodos de aprendizado federado incluem o fato de que os modelos de aprendizado federado sÃĢo preservados da privacidade, e as respostas do modelo sÃĢo personalizadas para o usuÃĄrio do dispositivo.

Exemplos de modelos de aprendizado federado incluem motores de recomendaçÃĢo, modelos de detecçÃĢo de fraude e modelos mÃĐdicos. Motores de recomendaçÃĢo de mídia, do tipo usado pelo Netflix (NFLX ) ou Amazon (AMZN ), podem ser treinados em dados coletados de milhares de usuÃĄrios. Os dispositivos clientes treinariam seus prÃģprios modelos separados e o modelo central aprenderia a fazer previsÃĩes mais precisas, mesmo que os pontos de dados individuais sejam Únicos para os diferentes usuÃĄrios. Da mesma forma, modelos de detecçÃĢo de fraude usados por bancos podem ser treinados em padrÃĩes de atividade de muitos dispositivos diferentes, e um punhado de bancos diferentes poderia colaborar para treinar um modelo comum. Em termos de um modelo de aprendizado federado mÃĐdico, vÃĄrios hospitais poderiam se unir para treinar um modelo comum que pudesse reconhecer possíveis tumores por meio de exames mÃĐdicos.

Tipos de Aprendizado Federado

Esquemas de aprendizado federado geralmente caem em uma de duas classes diferentes: sistemas de mÚltiplas partes e sistemas de uma parte. Sistemas de aprendizado federado de uma parte sÃĢo chamados de “uma parte” porque apenas uma entidade ÃĐ responsÃĄvel por supervisionar a captura e o fluxo de dados em todos os dispositivos clientes da rede de aprendizado. Os modelos que existem nos dispositivos clientes sÃĢo treinados em dados com a mesma estrutura, embora os pontos de dados sejam típicos Únicos para os vÃĄrios usuÃĄrios e dispositivos.

Em contraste com os sistemas de uma parte, os sistemas de mÚltiplas partes sÃĢo gerenciados por duas ou mais entidades. Essas entidades cooperam para treinar um modelo compartilhado, utilizando os vÃĄrios dispositivos e conjuntos de dados a que tÊm acesso. Os parÃĒmetros e estruturas de dados sÃĢo tipicamente semelhantes nos dispositivos pertencentes às mÚltiplas entidades, mas nÃĢo precisam ser exatamente os mesmos. Em vez disso, o prÃĐ-processamento ÃĐ feito para padronizar as entradas do modelo. Uma entidade neutra pode ser empregada para agregar os pesos estabelecidos pelos dispositivos Únicos das diferentes entidades.

Frameworks para Aprendizado Federado

Frameworks populares usados para aprendizado federado incluem Tensorflow Federated, Federated AI Technology Enabler (FATE) e PySyft. PySyft ÃĐ uma biblioteca de aprendizado federado de cÃģdigo aberto baseada na biblioteca de aprendizado profundo PyTorch. PySyft ÃĐ destinado a garantir aprendizado profundo privado e seguro em servidores e agentes usando computaçÃĢo criptografada. Enquanto isso, o Tensorflow Federated ÃĐ outro framework de cÃģdigo aberto construído na plataforma Tensorflow do Google. AlÃĐm de permitir que os usuÃĄrios criem seus prÃģprios algoritmos, o Tensorflow Federated permite que os usuÃĄrios simulem vÃĄrios algoritmos de aprendizado federado incluídos em seus prÃģprios modelos e dados. Finalmente, o FATE tambÃĐm ÃĐ um framework de cÃģdigo aberto projetado pelo Webank AI e destinado a fornecer ao ecossistema de IA Federada um framework de computaçÃĢo seguro.

Desafios do Aprendizado Federado

Como o aprendizado federado ainda ÃĐ relativamente novo, vÃĄrios desafios ainda precisam ser superados para que ele alcance seu potencial total. As capacidades de treinamento dos dispositivos de borda, rotulagem e padronizaçÃĢo de dados e convergÊncia do modelo sÃĢo obstÃĄculos potenciais para as abordagens de aprendizado federado.

As capacidades computacionais dos dispositivos de borda, quando se trata de treinamento local, precisam ser consideradas ao projetar abordagens de aprendizado federado. Embora a maioria dos smartphones, tablets e outros dispositivos compatíveis com IoT sejam capazes de treinar modelos de aprendizado de mÃĄquina, isso geralmente prejudica o desempenho do dispositivo. Compromissos precisarÃĢo ser feitos entre a precisÃĢo do modelo e o desempenho do dispositivo.

Rotulagem e padronizaçÃĢo de dados sÃĢo outro desafio que os sistemas de aprendizado federado precisam superar. Modelos de aprendizado supervisionado exigem dados de treinamento que sejam claramente e consistentemente rotulados, o que pode ser difícil de fazer em todos os dispositivos clientes que fazem parte do sistema. Por essa razÃĢo, ÃĐ importante desenvolver pipelines de dados de modelo que apliquem automaticamente rÃģtulos de forma padronizada com base em eventos e açÃĩes do usuÃĄrio.

O tempo de convergÊncia do modelo ÃĐ outro desafio para o aprendizado federado, pois os modelos de aprendizado federado geralmente levam mais tempo para convergir do que os modelos treinados localmente. O nÚmero de dispositivos envolvidos no treinamento adiciona um elemento de imprevisibilidade ao treinamento do modelo, pois problemas de conexÃĢo, atualizaçÃĩes irregulares e atÃĐ mesmo diferentes horÃĄrios de uso do aplicativo podem contribuir para um tempo de convergÊncia mais longo e confiabilidade reduzida. Por essa razÃĢo, as soluçÃĩes de aprendizado federado sÃĢo geralmente mais Úteis quando fornecem vantagens significativas sobre o treinamento central de um modelo, como instÃĒncias em que os conjuntos de dados sÃĢo extremamente grandes e distribuídos.

Foto: Jeromemetronome via Wikimedia Commons, CC By S.A. 4.0 (https://en.wikipedia.org/wiki/File:Federated_learning_process_central_case.png)

Blogueiro e programador com especialidades em Machine Learning e Deep Learning tÃģpicos. Daniel espera ajudar os outros a usar o poder da IA para o bem social.