Latest / Entre Chaves / Snippet #22 Federated Learning para treinar modelos com dados descentralizados
Transcript
- 0:02Ei, pessoal, aqui é a Rafa, sua engenheira de dados, o WP
- 0:05Research, um time focado em desenvolver pesquisas e soluções
- 0:09com IA e muito relacionado ao trabalho do nosso time.
- 0:12Hoje eu gostaria de falar sobre um tópico de machine learning,
- 0:15que é o federated learning. Também chamado de fl ou em bom
- 0:19português, aprendizado federado. Em muitos cenários reais, o
- 0:22desafio de se treinar o modelo de machine learning nem é
- 0:26puramente arquitetural, mas sim você ter acesso aos dados que
- 0:30esse modelo precisa para melhorar, né?
- 0:32Uma diversidade de cenários que esse modelo precisa aprender,
- 0:35como por exemplo, no marketing, onde os dados relevantes, né?
- 0:38Para esse contexto, para a gente prever performance de campanhas
- 0:41de marketing. Raramente vão estar no mesmo
- 0:44lugar, né? Muito pelo contrário, eles são
- 0:45descentralizados em diferentes plataformas, diferentes
- 0:49organizações, eles são regidos por regulamentações.
- 0:52E também questões contratuais. E na prática, isso cria um
- 0:56dilema muito comum em machine learning, que é, quanto mais
- 0:59dados, né? Diversos você tem, melhor vai
- 1:02ser o seu modelo. Mas ao mesmo tempo, se esses
- 1:04dados forem sensíveis, proprietários, regulados e
- 1:08descentralizados, mais vai ser difícil você resolver toda a
- 1:12burocracia necessária pra você ter isso centralizado, pra um
- 1:17modelo poder consumir em um único ambiente e isso pode até
- 1:21mesmo inviabilizar. Utilização de machine learning
- 1:24em cenários onde isso acontece, né?
- 1:26E eu falei de marketing, mas a gente vai ver esse problema
- 1:28acontecendo. Por exemplo, na área da saúde,
- 1:30quando você tem hospitais que tem dados valiosos de pacientes,
- 1:34mas eles não podem compartilhar essas bases clínicas, né?
- 1:37Entre si. Ou então, por exemplo, bancos
- 1:40onde você tem instituições financeiras com modelos anti
- 1:43fraudes que eles não podem compartilhar dados de cliente,
- 1:46basicamente em qualquer setor que você tenha esses problemas,
- 1:49né? Do dos dados estarem
- 1:51distribuídos. Qualquer tentativa de aplicação
- 1:54de machine learning vai resultar em um modelo que vai ser muito
- 1:57limitado. Então, a partir disso surge um
- 1:59problema central, né? Que é como treinar esses modelos
- 2:03de machine learning aproveitando esses dados distribuídos e sem
- 2:06que eu tenha que centralizar esses dados de alguma forma.
- 2:10E é exatamente este o problema que o federated learning resolve
- 2:14com essa técnica. Em vez da gente levar os dados
- 2:17para treinar o modelo, a gente faz o contrário, a gente leva o
- 2:19modelo até os dados. Mas o pulo do gato aqui?
- 2:22Que é que não vai ser exportado nenhum dado sensível, nenhum
- 2:26dado que foi utilizado no treinamento bruto ou features
- 2:30individuais, né? O que vai ser exportado vão ser
- 2:32as atualizações do modelo, né? Ou seja, pesos, né, variações os
- 2:37parâmetros, dependendo de como seu modelo foi treinado e esse
- 2:40processo, ele vai acontecer em várias interações, né, que a
- 2:44gente chama de rodadas de comunicação.
- 2:46Em que cada uma delas, a cada unidade, os participantes, eles
- 2:50vão refinar esse modelo localmente, mandar para o
- 2:52servidor. E aí esse servidor ele vai agir
- 2:55como um agregador, né? De de cada uma dessas
- 2:58contribuições para. Gerar uma nova versão global
- 3:02desse modelo, né? Que vai conter o treinamento ali
- 3:05de todas as unidades. E uma forma muito comum de fazer
- 3:07essa agregação é utilizar o federated everging, que você
- 3:11pega todas essas atualizações locais de cada unidade e combina
- 3:15isso através de uma média ponderada.
- 3:17E na prática, né? Ser ponderado significa que
- 3:21unidades que contenham mais dados, elas vão ter um peso
- 3:24maior nessa atualização final do modelo global.
- 3:27E essa nova versão, né? Gerada nessa rodada de
- 3:30comunicação. Ação?
- 3:31Ela então vai ser redistribuída para cada um dos participantes
- 3:35das unidades que vai poder utilizar, né?
- 3:38Esse modelo atualizado para fazer um novo treinamento local
- 3:42e assim por diante até que obtenha se a convergência.
- 3:45E é exatamente essa ideia que motivou um dos estudos que foram
- 3:49feitos no wpiper Research, onde a gente utilizou o federated
- 3:53learning. Aplicado no contexto de
- 3:55marketing que eu mencionei lá no começo, né, que é um contexto
- 3:58onde há muita descentralização e a pergunta principal a ser
- 4:03respondida no artigo foi. Será que a performance de um
- 4:06modelo confederated learning ela vai chegar perto bastante de um
- 4:10modelo que foi treinado de forma convencional, com acesso aos
- 4:15dados centralizados? Será que vai haver uma perda de
- 4:18performance? E se houver essa perda de
- 4:20performance, será que ela vai ser aceitável dentro, né?
- 4:24De todos os ganhos que a gente tem ali, com privacidade, com
- 4:28segurança. E uma parte muito interessante
- 4:30desses experimentos é que a gente utilizou geração de dados
- 4:34sintéticos. Pra gente conseguir simular
- 4:36diferentes tipos de configurações de campanha, que
- 4:39tenham, por exemplo, diferentes públicos, alvos, marcas,
- 4:42plataformas, localizações geográficas, pra que a gente
- 4:46possa avaliar esse modelo em diferentes condições de
- 4:49treinamento. E no geral, os resultados foram
- 4:51bem promissores, principalmente avaliando em um número menor de
- 4:56participantes, né? Que nesse cenário ele conseguiu
- 4:59chegar. Muito perto do resultado do
- 5:01modelo centralizado, cara. Isso é muito legal porque o
- 5:04modelo treinado com dados centralizados, ele tem uma
- 5:07vantagem natural muito grande, porque ele enxerga todos os
- 5:11dados que são utilizados no treinamento ao mesmo tempo e
- 5:15mesmo assim a perda de performance foi relativamente
- 5:17pequena. Que compensou, né?
- 5:19Justamente por ter esse benefício da privacidade de
- 5:22dados. O estudo também mostrou que a
- 5:24medida que você adiciona mais participantes, mais unidades,
- 5:28né? E a rede fica mais fragmentada,
- 5:30também há uma queda de performance.
- 5:32Mas isso também vale, né, para o modelo que foi treinado com
- 5:34dados centralizados. Mas ainda assim, né?
- 5:36Todos esses resultados. Eles indicam que essa troca faz
- 5:40sentido, né? Um trade off, claro, mas que a
- 5:43gente tem todos esses benefícios, né, que já foram
- 5:46mencionados. Bom, mas eu recomendo muito que
- 5:48vocês leem o artigo, porque lá tem todos os detalhes de
- 5:51implementação, né? Dos experimentos onde a gente
- 5:54utilizou um frame work open source muito conhecido, que é o
- 5:57flower. É lá também tem todos os
- 5:59resultados, as discussões e também as métricas, né?
- 6:02Que foram utilizadas para fazer todas essas comparações.
- 6:05Os links vão estar aí na descrição do episódio, tanto a
- 6:07versão mais detalhada, mais técnica, quanto uma versão mais
- 6:11alto nível. Mas é claro que vale mencionar
- 6:13que também existem desafios, né? E os pontos principais que a
- 6:16gente pode mencionar é o custo de comunicação, né?
- 6:19Entre participantes e servidor. Outro ponto também é a
- 6:22heterogeneidade dos dados que você pode ter, porque a gente
- 6:26está falando de dados descentralizados que pode.
- 6:28Em ter diferentes formatos, que podem ter distribuições
- 6:32diferentes. E por fim, também é necessário
- 6:35tomar cuidados extras com segurança, porque apesar da
- 6:38gente ter comentado que a privacidade é o principal
- 6:40benefício, as atualizações desses modelos que são
- 6:43transmitidas entre os participantes e o servidor
- 6:48principal ou coordenador, é necessário que a gente tenha
- 6:51esse cuidado, né? Pra que essas informações sobre
- 6:53os modelos não possam ser explorados de alguma forma.
- 6:56Por engenharia reversa, então existem mecanismo que podem ser
- 6:59adotados para reduzir esse risco.
- 7:01E se você quiser se aprofundar mais e tem muito interesse em
- 7:05IA, dados e marketing, vou deixar aqui também o link do do
- 7:09site da WPP Research, onde a gente tem vários artigos,
- 7:12conteúdos relacionados que vão muito além de Federer e
- 7:15tedlearning. E aí fica de olho quem sempre tá
- 7:18saindo mais coisas lá e acho que é isso até a próxima, muito
- 7:22obrigada.