{"id":113,"date":"2025-03-06T15:45:59","date_gmt":"2025-03-06T18:45:59","guid":{"rendered":"https:\/\/idric.ic.unicamp.br\/?page_id=113"},"modified":"2025-03-06T15:45:59","modified_gmt":"2025-03-06T18:45:59","slug":"inteligencia-artificial-distribuida","status":"publish","type":"page","link":"https:\/\/idric.ic.unicamp.br\/index.php\/inteligencia-artificial-distribuida\/","title":{"rendered":"Intelig\u00eancia Artificial Distribu\u00edda"},"content":{"rendered":"\n<p>A linha tem\u00e1tica&nbsp;<strong>Intelig\u00eancia Artificional Distribu\u0131\u0301da<\/strong>&nbsp;abordar\u00e1 o desenvolvimento de t\u00e9cnicas em IA, e especialmente aprendizado federado para manuten\u00e7\u00e3o da privacidade. Abaixo s\u00e3o descritas as tarefas envolvidas nessa linha tem\u00e1tica.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"tarefa-1-framework-para-an\u00e1lise-comparativa-de-algoritmos-de-aprendizado-federado\">Tarefa 1: Framework para An\u00e1lise Comparativa de Algoritmos de Aprendizado Federado<\/h3>\n\n\n\n<p>Aprendizado Federado (FL) \u00e9 uma abordagem de aprendizado de m\u00e1quina focada em privacidade, que treina modelos de forma distribu\u0131\u0301da mantendo os dados descentralizados. No FL, clientes individuais treinam modelos locais usando seus pr\u00f3prios dados, enviando tais modelos para um servidor central para serem agregados em um modelo global. Esse conceito \u00e9 \u00fatil para a computa\u00e7\u00e3o de borda, ampliando a privacidade dos dados e otimizando os custos de comunica\u00e7\u00e3o. FL pode ser aplicado a dispositivos como smartphones, sensores e outros dispositivos IoT. Embora a aprendizagem de m\u00e1quina tradicional centralizada possa superar o FL em termos de desempenho de previs\u00e3o, abordagens trandicionais requerem o compartilhamento de todo o conjunto de dados. O primeiro uso do FL foi no Google GBoard para aprender os padr\u00f5es de digita\u00e7\u00e3o dos usu\u00e1rios sem compartilhar esses dados. Atualmente, esta abordagem \u00e9 utilizada em aplica\u00e7\u00f5es como ve\u0131\u0301culos aut\u00f4nomos, monitoramento de sa\u00fade, telecomunica\u00e7\u00f5es entre outras.<\/p>\n\n\n\n<p>Um dos muitos desafios que surgiram com o avan\u00e7o do FL \u00e9 como lidar com o desequil\u0131\u0301brio e a heterogeneidade dos dados. No FL, usando seus dados locais, cada n\u00f3 deborda treina um modelo compartilhado. Como resultado, a distribui\u00e7\u00e3o dos dados desses dispositivos de borda \u00e9 baseada em suas caracter\u0131\u0301sticas. Imagine um cen\u00e1rio, por exemplo, da distribui\u00e7\u00e3o de c\u00e2meras em sistemas de vigil\u00e2ncia. Em compara\u00e7\u00e3o com c\u00e2meras localizadas em \u00e1reas pouco movimentadas, c\u00e2meras em um parque, por exemplo, capturam mais fotos de pessoas. Al\u00e9m disso, o tamanho do conjunto de dados que cada uma dessas c\u00e2meras ter\u00e1 para treinar seus modelos locais pode diferir em grande magnitude. Muitas abordagens foram propostas na literatura para abordar dinamicamente o peso dos modelos locais de clientes com dados heterog\u00eaneos participando do modelo global de FL. Um problema relevante nesse contexto \u00e9 que testar e avaliar solu\u00e7\u00f5es de FL pode ser razoavelmente mais complexo do que testar solu\u00e7\u00f5es de aprendizado de m\u00e1quina tradicionais (com dados centralizados). Quest\u00f5es como, consumo de recursos de rede, tempo de treinamento dos modelos distribu\u0131\u0301dos com recursos limitados dos dispositivos de borda, consumo de energia de dispositivos alimentados por bateria, entre outros, precisam ser levados em considera\u00e7\u00e3o no design da solu\u00e7\u00e3o.<\/p>\n\n\n\n<p>Alinhado aos objetivos deste projeto de avaliar a efici\u00eancia de arquiteturas e algoritmos para dotar de intelig\u00eancia distribu\u0131\u0301da a infraestrutura e servi\u00e7os de IoT, esta tarefa visa propor um arcabou\u00e7o para testar algoritmos de FL, que permita aos usu\u00e1rios criar facilmente diferentes cen\u00e1rios de treinamento simplesmente alterando par\u00e2metros de configura\u00e7\u00e3o. Isso inclui modelos de distribui\u00e7\u00f5es de computa\u00e7\u00e3o, conjuntos de da- dos, modelos de agrega\u00e7\u00e3o globais, modelos de clientes e par\u00e2metros de treinamento tando do servidor quando de clientes. O arcabou\u00e7o proposto ser\u00e1 desenvolvido utilizando ferramentas cloud-native para implanta\u00e7\u00e3o e monitoramento dos modelos de FL a serem avaliados (e.g., Kubernetes, Prometheus, Grafana, etc.). O arcabou\u00e7o tamb\u00e9m deve ser capaz de coletar resultados de treinamento e m\u00e9tricas de uso de recursos. Ser\u00e1 realizado um conjunto de experimentos utilizando equipamentos dispon\u0131\u0301veis nas institui\u00e7\u00f5es participantes do projeto que simulam um ambiente de computa\u00e7\u00e3o de nuvem e borda, considerando inclusive recursos de acelera\u00e7\u00e3o de processamento de modelos de aprendizado de m\u00e1quina na borda (i.e. NVidia Jetson). Diversos experimentos ser\u00e3o realizados, variando par\u00e2metros configura\u00e7\u00e3o dos modelos de FL sobre o arcabou\u00e7o proposto a fim de demonstrar as suas capacidades e os dados coletados ser\u00e3o analisados para fins de compara\u00e7\u00e3o entre as abordagens de FL.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"tarefa-2-intelig\u00eancia-artificial-explic\u00e1vel\">Tarefa 2: Intelig\u00eancia Artificial Explic\u00e1vel<\/h3>\n\n\n\n<p>A comunidade cient\u0131\u0301fica explora, atualmente, eXplainable Artificial Intelligence (XAI) para fazer modelos interpret\u00e1veis, transparentes e confi\u00e1veis para lidar com defici\u00eancias de explana\u00e7\u00e3o dos modelos. Explica\u00e7\u00e3o refere-se aos detalhes e raz\u00f5es que um modelo d\u00e1 para tornar seu funcionamento claro ou f\u00e1cil de entender (ou seja, produz explica\u00e7\u00f5es para modelos de caixa-preta). Interpretabilidade \u00e9 a capacidade de explicar ou apresentar a resposta de um sistema em termos compreens\u0131\u0301veis para um ser humano por meio de introspec\u00e7\u00e3o ou explica\u00e7\u00e3o. Transpar\u00eancia \u00e9 a capacidade do sistema de gerar explica\u00e7\u00f5es compreens\u0131\u0301veis no contexto de implanta\u00e7\u00e3o do sistema (oposto de caixa-preta). De fato, pesquisas recentes afirmam que a explana\u00e7\u00e3o, confiabilidade e transpar\u00eancia atingida a partir de XAI s\u00e3o um requisito inerente e um grande desafio. T\u00e9cnicas de XAI podem ser usadas para melhorar o desempenho de mecanismos baseados em IA. Como por exemplo, em redes 5G\/6G, o gerenciamento de recursos de fatias de redes baseado em modelos caixa preta, pode ser ajustado utilizando-se t\u00e9cnicas de XAI aplicado a FL, ou seja, Aprendizado Federado Explic\u00e1vel (Fed-XAI) torna explic\u00e1veis modelos derivados por FL, potencialmente minimizando a sobrecarga de comunica\u00e7\u00e3o e computa\u00e7\u00e3o. O Fed-XAI permite entender o racioc\u0131\u0301nio e as a\u00e7\u00f5es executadas pelos modelos de ML na tomada de suas decis\u00f5es.<\/p>\n\n\n\n<p>Shapley, uma das t\u00e9cnicas mais tradicionais de XAI, atribui pesos a diferentes componentes, computados atrav\u00e9s modelos baseados em Teoria dos Jogos. Como por exemplo, atribui pesos a diferentes caracter\u0131\u0301sticas (features) de um modelo de aprendizado de m\u00e1quina (ML). Shapley tem sido utilizado como m\u00e9todo para sele\u00e7\u00e3o de clientes para processamento em diferentes ciclos (rounds) no processamento FL. No entanto, o esses trabalhos tem se concentrado na acur\u00e1cia como m\u00e9trica \u00fanica de desempenho. A converg\u00eancia n\u00e3o tem sido considerada como crit\u00e9rio, o que \u00e9 especialmente impactante uma vez que uso de Shapley implica em alto custo computacional. Pretende-se, nesta tarefa, definir crit\u00e9rios para o c\u00e1lculo de pesos que acelerem a converg\u00eancia da computa\u00e7\u00e3o do modelo agregado, impactando, minimamente, a acur\u00e1cia, por\u00e9m que reduza consideravelmente o tempo para obten\u00e7\u00e3o de modelo global.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"tarefa-3-sele\u00e7\u00e3o-de-clientes-em-aprendizado-federado\">Tarefa 3: Sele\u00e7\u00e3o de Clientes em Aprendizado Federado<\/h3>\n\n\n\n<p>O problema de sele\u00e7\u00e3o de clientes para aprendizagem federada \u00e9 definido como determinar quais clientes participar\u00e3o da rodada de treinamento. Este \u00e9 um processo essencial e influencia na converg\u00eancia do modelo e no seu desempenho. Em cen\u00e1rios tradicionais com servidor central e dispositivos de borda, ap\u00f3s a execu\u00e7\u00e3o do treinamento nos clientes e a agrega\u00e7\u00e3o do modelo, o algoritmo de sele\u00e7\u00e3o de clientes \u00e9 executado no servidor central para determinar o conjunto de clientes que participar\u00e3o da pr\u00f3xima rodada de treinamento, baseado no desempenho corrente do modelo e tamb\u00e9m nas informa\u00e7\u00f5es de contexto reportadas pelos clientes.<\/p>\n\n\n\n<p>Clientes podem n\u00e3o estar constantemente dispon\u0131\u0301veis para participar do aprendizado federado devido a restri\u00e7\u00f5es de energia, conectividade intermitente ou outras limita\u00e7\u00f5es. Al\u00e9m disso, as caracter\u0131\u0301sticas dos dispositivos devem ser consideradas durantes a sele\u00e7\u00e3o para ajustar a escolha de acordo com os requisitos de treinamento e tempo de converg\u00eancia do modelo para n\u00e3o drenar recursos de energia, processamento e comunica\u00e7\u00e3o dos dispositivos. Outro fator que deve ser considerado \u00e9 o balanceamento e justi\u00e7a de sele\u00e7\u00e3o para distribuir melhor o treinamento e tamb\u00e9m n\u00e3o enviesar o modelo, uma vez que \u00e9 essencial que a escolha dos clientes represente adequadamente a diversidade e a distribui\u00e7\u00e3o dos dados da popula\u00e7\u00e3o de usu\u00e1rios. A falta de representatividade pode levar a um vi\u00e9s no aprendizado federado, resultando em modelos que n\u00e3o s\u00e3o generaliz\u00e1veis ou que favorecem certos grupos de usu\u00e1rios.<\/p>\n\n\n\n<p>No entanto, a maioria dos crit\u00e9rios de sele\u00e7\u00e3o existentes considera um n\u00famero limitado de caracter\u0131\u0301sticas, o que n\u00e3o explora completamente todos os aspectos que podem influenciar o desempenho do FL e como esses aspectos podem mudar ao longo do tempo. Nesses crit\u00e9rios de sele\u00e7\u00e3o, alguns recursos podem ser super-utilizados enquanto outros subutilizados. Al\u00e9m disso, a maioria das abordagens existentes para sele\u00e7\u00e3o de clientes escolhe um intervalo fixo entre as sele\u00e7\u00f5es. Na abordagem a ser adotada na presente tarefa, a determina\u00e7\u00e3o dos tempos de sele\u00e7\u00e3o de clientes considera o trade-off entre a aloca\u00e7\u00e3o de recursos e o desempenho do modelo, bem como uma pluralidade de contextos e caracter\u0131\u0301sticas dos clientes e da rede que podem influenciar na converg\u00eancia e desempenho do modelo.<\/p>\n\n\n\n<p>Pretende-se identificar caracter\u0131\u0301sticas relevantes relacionadas aos recursos dos dispositivos de borda e empregar t\u00e9cnicas de clusteriza\u00e7\u00e3o, tais como Summarization by Grouping Nodes on Attributes and Pairwise Relationships (SNAP). Para a sele\u00e7\u00e3o das caracter\u0131\u0301sticas, pretende-se utilizar a t\u00e9cnica de An\u00e1lise de Vari\u00e2ncia (ANOVA), apoiada por dados gerados atrav\u00e9s de simula\u00e7\u00f5es envolvendo as bases de dados Adult e FMNIST. As bases de dados Mnist e CIFAR-10s ser\u00e3o, tamb\u00e9m, utilizadas e a valida\u00e7\u00e3o utilizar\u00e1 software Containernet, que administra servidores e recursos de borda atrav\u00e9s de cont\u00eaineres Docker. Quanto ao aprendizado federado, a implementa\u00e7\u00e3o utilizar\u00e1 a biblioteca de algoritmos IBM Federated Learning.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A linha tem\u00e1tica&nbsp;Intelig\u00eancia Artificional Distribu\u0131\u0301da&nbsp;abordar\u00e1 o desenvolvimento de t\u00e9cnicas em IA, e especialmente aprendizado federado para manuten\u00e7\u00e3o da privacidade. Abaixo s\u00e3o descritas as tarefas envolvidas nessa linha tem\u00e1tica. Tarefa 1:&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"class_list":["post-113","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/idric.ic.unicamp.br\/index.php\/wp-json\/wp\/v2\/pages\/113","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/idric.ic.unicamp.br\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/idric.ic.unicamp.br\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/idric.ic.unicamp.br\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/idric.ic.unicamp.br\/index.php\/wp-json\/wp\/v2\/comments?post=113"}],"version-history":[{"count":1,"href":"https:\/\/idric.ic.unicamp.br\/index.php\/wp-json\/wp\/v2\/pages\/113\/revisions"}],"predecessor-version":[{"id":114,"href":"https:\/\/idric.ic.unicamp.br\/index.php\/wp-json\/wp\/v2\/pages\/113\/revisions\/114"}],"wp:attachment":[{"href":"https:\/\/idric.ic.unicamp.br\/index.php\/wp-json\/wp\/v2\/media?parent=113"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}