O deep learning está por trás dos sucessos mais importantes do machine learning, como reconhecimento avançado de imagens; o AlphaGo, o campeão de jogos de tabuleiro, e modelos de linguagem como o GPT-3. Mas esse desempenho incrível tem um custo: o treinamento de modelos de deep learning requer grandes quantidades de energia.
Agora, uma nova pesquisa mostra como os cientistas que usam plataformas em nuvem para treinar algoritmos de deep learning podem reduzir drasticamente a energia que consomem e, portanto, as emissões que esse trabalho gera. Mudanças simples nas configurações de nuvem são a chave.
Desde que o primeiro artigo sobre o impacto dessa tecnologia no meio ambiente foi publicado, há três anos, cresceu um movimento entre os pesquisadores para autorrelatar a energia consumida e as emissões geradas pelos seus trabalhos. Ter números precisos é um passo importante para fazer mudanças, mas reuni-los de forma concreta pode ser um desafio.
“Você não pode melhorar o que não pode ser medido”, diz Jesse Dodge, pesquisador do Allen Institute for AI em Seattle (EUA). “O primeiro passo para nós, se quisermos progredir na redução de emissões, é fazermos uma boa medição”.
Por isso, o Allen Institute colaborou recentemente com a Microsoft, a empresa de IA Hugging Face e três universidades para criar uma ferramenta que mede o uso de eletricidade de qualquer programa de machine learning executado no Azure, o serviço de nuvem da Microsoft. Com ele, os usuários do Azure que criam novos modelos podem visualizar a eletricidade total consumida pelas unidades de processamento gráfico (GPUs) — chips de computador especializados para executar cálculos em paralelo — durante todas as fases de seu projeto, desde a seleção de um modelo até o treinamento e a colocação em uso. É o primeiro grande provedor de nuvem a dar aos usuários acesso a informações sobre o impacto energético de seus programas de machine learning.
Embora já existam ferramentas que medem o uso de energia e as emissões de algoritmos de machine learning executados em servidores locais, elas não funcionam quando os pesquisadores usam serviços em nuvem fornecidos por empresas como Microsoft, Amazon e Google. Eles não dão aos usuários visibilidade direta dos recursos de GPU, CPU e memória que suas atividades consomem, e as ferramentas existentes, como Carbontracker, Experiment Tracker, EnergyVis e CodeCarbon, precisam desses valores para fornecer estimativas precisas.
A nova ferramenta do Azure, que estreou em outubro do ano passado, atualmente evidencia o uso de energia, não as emissões. Então, Dodge e outros pesquisadores descobriram como mapear o uso de energia para as emissões e apresentaram um artigo complementar sobre esse trabalho na FAccT, uma importante conferência de ciência da computação, no final de junho. Os pesquisadores usaram um serviço chamado Watttime para estimar as emissões com base nos códigos postais de servidores em nuvem que executam 11 modelos de machine learning.
Eles descobriram que as emissões podem ser significativamente reduzidas se os pesquisadores usarem servidores em locais geográficos específicos e em determinados horários do dia. As emissões do treinamento de pequenos modelos de machine learning podem ser reduzidas em até 80% se o treinamento começar em momentos em que há mais eletricidade renovável disponível na rede, enquanto as emissões de modelos grandes podem ser reduzidas em mais de 20% se o trabalho de treinamento for interrompido quando a eletricidade renovável é escassa e retomada quando é mais abundante.
Os usuários de nuvem preocupados com a energia podem reduzir suas emissões ajustando esses fatores por meio de configurações de preferência nos três maiores serviços de nuvem (Microsoft Azure, Google Cloud e Amazon Web Services).
Mas Lynn Kaack, cofundadora da Climate Change AI, uma organização que estuda o impacto do machine learning nas mudanças climáticas, diz que os provedores de nuvem devem pausar e reiniciar esses projetos automaticamente para otimizar emissões mais baixas.
“Você pode agendar, é claro, quando executar o algoritmo, mas é muito trabalho manual”, diz Kaack. “Você precisa de incentivos políticos, provavelmente, para realmente fazer isso em escala”. Ela diz que políticas como a precificação de carbono podem incentivar os provedores de nuvem a criar fluxos de trabalho que permitem pausas e reinicializações automáticas e que os usuários possam aceitá-las.
Ainda muito mais trabalho precisa ser feito para tornar o machine learning mais ecológico, especialmente enquanto a maioria dos países ainda depende de combustíveis fósseis. E a Dodge diz que a ferramenta do Azure mede apenas a eletricidade consumida pelas GPUs. Um cálculo mais preciso do consumo de energia do machine learning incluiria o uso de CPU e memória, sem mencionar a energia para construir e resfriar os servidores físicos.
E mudar hábitos pode levar tempo. Apenas 13% dos usuários do Azure que executam programas de machine learning analisaram a ferramenta de medição de energia desde que foi lançada em outubro, diz Dodge. E Raghavendra Selvan, que ajudou a criar o Carbontracker, disse que até ele tem dificuldade em convencer os pesquisadores a usar a ferramenta em suas pesquisas de machine learning.
“Acho que não consegui convencer nem mesmo meu próprio grupo”, diz Selvan.
Mas ele está otimista. Mais pesquisadores estão adquirindo o hábito de reportar o uso de energia em seus artigos, incentivados por grandes conferências como o NeurIPS, que o sugerem. Selvan diz que se mais pessoas começarem a considerar esses custos de energia e emissões ao planejar projetos futuros, isso poderá começar a reduzir o impacto do machine learning nas mudanças climáticas.