Blockchain Assisted Federated Learning Over Wireless Channels: Dynamic Resource Allocation and Client Scheduling Xiumei Deng , Student Member, IEEE, Jun Li , Senior Member, IEEE, Chuan Ma , Member, IEEE, Kang Wei , Graduate Student Member, IEEE, Long Shi , Senior Member, IEEE, Ming Ding , Senior Member, IEEE, Wen Chen , Senior Member, IEEE, and H. Vincent Poor , Life Fellow, IEEE Contribuições • Propõe uma rede BFL onde o cliente pode ser um treinador para seu modelo local ou um minerador para o modelo global • Cliente transmite o modelo treinado para outros, agrega os outros que recebe e compete para minerar um bloco sem a intervenção de qualquer rede blockchain de terceiros • Estuda uma rede BFL sem fio onde o modelo de comunicações entre clientes diferentes ocorrem através de fading channels sem fio • Propõe um protocolo de escalonamento para alcançar os requisitos de latência no FL, onde os cliented com condições qualificadas de canal são escalonados para treinar seus modelos em cada round de comunicação • Os resultados experimentais mostram que o algoritmo proposto pode garantir a estabilidade do consumo de energia médio a longo prazo, além de que alcança melhor acurácia do que as estratégias de escalonamento de cliente comparadas. Modelo do Sistema • Rede BFL consiste em N clientes • Cada cliente carrega um dataset local • Integração do treinamento e mineração no lado do cliente • • • Os papéis dos clientes incluem treinamento local de modelos, transmissão de modelos, e mineração de blocos Fluxo de cada round de comunicação: Passo 1 (Escalonamento dos Clientes para • Treinamento e Treinamento dos Modelos Locais): Um grupo de clientes treinadores é selecionado para treinamento do modelo local; Passo 2 (Transmissão do Modelo Local e Verificação Cruzada): Os clientes treinadores criptografam seus parâmetros locais do modelo com suas assinaturas digitais únicas e troca os parâmetros com os outros. Depois, todos os clientes de N verificam as assinaturas associadas com cada set de parâmetros de modelos locais, e os armazenam localmente; Passo 3 (Agregação Global e Mineração de • blocos): Cada cliente agrega os sets de parâmetros verificados, e depois adicionaos ao seu bloco candidato. Com o mecanismo PoW, todos os clientes competem para trocar seu nonce e o hash do cabeçalho do bloco. O primeiro cliente a achar um nonce válido é o vencedor, e é autorizado a adicionar seu bloco candidato ao blockchain; Passo 4 (Verificação de Bloco e Atualização do Modelo Global): O campeão da mineração propaga o novo bloco para a rede inteira. Ao receber o novo bloco, cada cliente N valida o novo bloco ao comparar os parâmetros do modelo no novo bloco com os armazenados localmente. O novo bloco é anexado ao blockchain se puder ser verificado pela maioria dos clientes. Finalmente, cada cliente atualiza os parâmetros locais com os globais no novo bloco para o próximo round. Modelo do Sistema • Treinamento de modelo local e mineração de bloco do lado do cliente têm o objetivo de mitigar as ameaças em potencial de vazamento de privacidade e adulteração de dados por agentes maliciosos de uma rede blockchain de terceiros, das quais outras propostas BFL existentes dependem para agregação descentralizada do modelo global: • Ataque de inversão de modelo: recuperação de dados brutos a partir dos modelos locais coletados; • Ataque de adulteração de dados: Agentes maliciosos da rede de terceiros podem manipular a agregação ao adulterar as atualizações dos modelos locais. Modelo do Sistema – Escalonamento dos Clientes de Treino e Treinamento do Modelo Local • O objetivo de aprendizagem em cada round de comunicação é minimizar a função loss; • No começo de cada round, os parâmetros locais dos clientes treinadores são inicializados pelos parâmetros globais; • Os parâmetros locais são atualizados de acordo com o método de Gradient Descent Transmissão do Modelo Local • Em um sistema BFL sem fio, um ponto de acesso (AP) serve como um roteador sem fio para troca de dados entre diferentes clientes • Os clientes transmitem os parâmetros do modelo local e os novos blocos gerados para o AP por conexão sem fio, e o AP encaminha para cada cliente na rede • A proposta adota, para acesso múltiplo aos canais, o método OFDM • É considerado que os canais são atenuados por desvanecimentos independentes e identicamente distribuídos dos blocos • O canal se mantém estático no mesmo round de comunicação, mas varia entre diferentes rounds Agregação Global • Ao receber os modelos dos clientes treinadores, cada cliente na rede performa a agregação global ao calcular a média ponderada dos parâmetros dos modelos locais de todos os clientes Mineração de Bloco • Depois da atualização dos parâmetros do modelo global, todos os clientes competem Latência • O tempo de espera para cada cliente na rede coletar todos os modelos locais depende do último cliente completar seu treinamento e transmissão Formulação do Problema • A performance de treinamento de um dado round t é medida pela diferença entre a loss global em t e a loss dos parâmetros globais ótimos • Sua minimização é representada pela minimização da sua esperança, que é inversamente proporcional ao tamanho dos dados de treino • Portanto, os autores fazem a maximização do tamanho dos dados de treino para otimizar a performance de treino em cada round de comunicação • Adicionalmente, devido à capacidade limitada da bateria e a taxa de carregamento do suprimento de energia, é crucial garantir que o LTA do consumo de energia não pode exceder o LTA do suprimento • Portanto, o objetivo o artigo é maximizar o LTA do tamanho dos dados de treino sob um limite de LTA de consumo de energia Algoritmo de Alocação Dinâmica de Recursos e Escalonamento de Clientes • Primeiro, há a transformação do limite da desigualdade da média de tempo para limite de estabilidade da fila em P1, depois transforma o problema estocástico de longo prazo P1 em um problema determinístico P2 em cada round ao caracterizar a função drift-plus-penalty ratio de Lyapunov • Ao transformar o problema fracional combinatorial P2 no problema subtrativo P3, a alocação de recursos e política de escalonamento de clientes ótimas podem ser obtidas pelo método Dinkelbach de uma maneira iterativa com baixa complexidade • O algoritmo proposto é roda no lado do cliente para otimizar o escalonamento do cliente treinador e a alocação de recursos em cada round de comunicação • Todos os clientes da rede BFL trocam informações sobre o tamanho da fila virtual e do estado do canal no começo de cada round • Baseado nessas informações, o algoritmo proposto otimiza, em cada cliente, o vetor de escalonamento de clientes treinadores, Potência de transmissão e frequência de computação em cada round Resultados Experimentais – Arranjo Experimental • Datasets Utilizados: • ADULT: 45222 registros de informação individual de 14 características para uma tarefa de classificação binária para predizer se a renda anual de um indivíduo vai exceder 50000 • IPUMS-BR: Inclui 38000 registros de informação individual de 53 características para uma tarefa de classificação binária da faixa de renda mensal de um indivíduo • MNIST: 60000 imagens de treino de dígitos manuscritos em 10 classes, 10000 imagens de teste • Fashion MNIST: 60000 imagens de treino de 10 categorias de moda, 10000 imagens de teste • Modelos: • Squared-SVM , treinada nos dois primeiros datasets para classificação binária • CNN, treinada nos dois últimos para classificação de imagens • Número de clientes igual a 20 • Dois tipos: Tipo 1 tem tamanho do dataset local igual a 1000 e LTA suprimento de energia 600mW e Tipo 2datasetde tamanho 4000 e energia 200mW Performance do Algoritmo de Alocação de Recursos e Escalonamento de Clientes • Resultados experimentais do algoritmo DRACS para treinar um modelo CNN no dataset FashionMNIST • LTA do consumo de energia dos dois tipos de clientes diminui no começo e finalmente se aproxima do LTA de suprimento ao longo do tempo. • Quanto maior V, maior consumo de energia • V é um parâmetro de controle que representa o quanto ignora-se a minimização do consumo de energia, colocando mais ênfase na maximização do tamanho dos dados de treino Performance do Algoritmo de Alocação de Recursos e Escalonamento de Clientes • Acúmulo de filas aumenta no início e estabiliza rapidamente • Aumenta com o aumento de V e com aumento do tamanho dos dados de treino Performance do Algoritmo de Alocação de Recursos e Escalonamento de Clientes • A princípio, a LTA do consumo de energia cresce com V, mas estabiliza • Revela que um valor relativamente grande de V pode ser adotado para usar completamente a energia fornecida • Clientes do tipo 1 consomem menos energia para treinamento do modelo local e muito mais energia para mineração de bloco • Devido ao fato de que são equipados com menores datasets locais, mas maior suprimento de energia, ou seja, clientes do tipo 1 podem usar completamente a energia local para ajudar na geração de blocos • Clientes tipo 2 consomem mais energia para transmissão do modelo local quando V<1000, e menos energia quando V>1000 Performance do Algoritmo de Alocação de Recursos e Escalonamento de Clientes • Channel State (CS): Clientes com alta taxa de transmissão são escolhidos para o treinamento dos modelos locais em cada round de comunicação; • Energy Consumption (EC): Clientes com baixo LTA consumo de energia são escolhidos • Select All Scheduling (AS): Todos os clientes são selecionados • DRACS melhora o LTA do tamanho de dados de treinamento, devido ao fato de que conta com a informação toda (consumo de energia e estado do canal), ao invés de informação parcial • LTA do tamanho de dados de treinamento aumenta rapidamente com V no começo e estabiliza gradualmente quando V>3000 • DRACS consome mais energia, mas satisfaz os limites de consumo de energia de C5, ou seja, consegue fazer melhor uso da energia no sistema BFL com energia limitada Performance de Loss de Teste e Acurácia • Sob tempo e energia limitados, o modelo DRACS proposto performa melhor, porque consegue executar mais rounds de comunicação (mais rounds de agregação de modelo) ao otimizar, conjuntamente, comunicação, computação, e alocação de recursos energéticos, assim como escalonamento de clientes treinadores • Os resultados experimentais mostram que DRACS provê baixa latência e alocação eficiente de recursos energéticos e escalonamento para funções loss convexas e não convexas Conclusão • No artigo foram investigados gerenciamento dinâmico de recursos e escalonamento de clientes treinadores em uma rede BFL. • Primeiro, foi desenvolvida uma framework BFL onde as funcionalidades do FL e BC são convergidas do lado do cliente • Segundo, foi formulado um problema de otimização conjunta de escalonamento e alocação dinâmica de recursos para maximizar o tamanho dos dados de treino LTA sob um limite de consumo de energia LTA • Resultados experimentais mostraram a estabilidade dos backlogs das filas virtuais e confirmaram o trade-off entre o tamanho dos dados de treino e o consumo de energia • Além disso, também mostraram que o algoritmo DRACS proposto consegue atingir maior acurácia de treino, comparado com algoritmos usuais, sob as condições de limitação do tempo de treino e de suprimento de energia Estudos Futuros • Análise da convergência teórica para as funções loss não convexas • Como consequência, o design dos algoritmos de escalonamento de clientes e alocação de recursos devem ser melhor investigados • Para reduzir ainda mais latência e consumo de energia, são interessantes designs de mecanismos de consenso lightweight como Proof-os-Stake (PoS) para a framework BFL proposta