.

Aurich Lawson / Getty Images
A multiplicação de matrizes está no centro de muitas inovações de aprendizado de máquina e ficou mais rápida – duas vezes. Na semana passada, a DeepMind anunciou que descobriu uma forma mais eficiente de realizar a multiplicação de matrizes, conquistando um recorde de 50 anos. Esta semana, dois pesquisadores austríacos da Universidade Johannes Kepler Linz afirmam que superaram esse novo recorde em um passo.
A multiplicação de matrizes, que envolve a multiplicação de duas matrizes retangulares de números, é frequentemente encontrada no centro do reconhecimento de fala, reconhecimento de imagem, processamento de imagem de smartphone, compactação e geração de gráficos de computador. As unidades de processamento gráfico (GPUs) são particularmente boas para realizar a multiplicação de matrizes devido à sua natureza massivamente paralela. Eles podem dividir um grande problema matemático de matriz em muitas partes e atacar partes dele simultaneamente com um algoritmo especial.
Em 1969, um matemático alemão chamado Volker Strassen descobriu o melhor algoritmo anterior para multiplicar matrizes 4×4, o que reduz o número de etapas necessárias para realizar um cálculo de matriz. Por exemplo, multiplicar duas matrizes 4×4 usando um método tradicional de sala de aula levaria 64 multiplicações, enquanto o algoritmo de Strassen pode realizar a mesma façanha em 49 multiplicações.

DeepMind
Usando uma rede neural chamada AlphaTensor, a DeepMind descobriu uma maneira de reduzir essa contagem para 47 multiplicações, e seus pesquisadores publicaram um artigo sobre a conquista na Nature na semana passada.
Passar de 49 etapas para 47 não parece muito, mas quando você considera quantos trilhões de cálculos de matriz ocorrem em uma GPU todos os dias, até melhorias incrementais podem se traduzir em grandes ganhos de eficiência, permitindo que aplicativos de IA sejam executados mais rapidamente em hardware.
Quando a matemática é apenas um jogo, a IA vence

AlphaTensor é descendente do AlphaGo (que superou o campeão mundial Vai jogadores em 2017) e AlphaZero, que abordou xadrez e shogi. A DeepMind chama o AlphaTensor de “o primeiro sistema de IA para descobrir algoritmos novos, eficientes e comprovadamente corretos para tarefas fundamentais, como multiplicação de matrizes”.
Para descobrir algoritmos matemáticos de matriz mais eficientes, o DeepMind configurou o problema como um jogo para um jogador. A empresa escreveu sobre o processo com mais detalhes em uma postagem no blog na semana passada:
Neste jogo, o tabuleiro é um tensor tridimensional (matriz de números), capturando o quão longe de correto está o algoritmo atual. Através de um conjunto de movimentos permitidos, correspondentes às instruções do algoritmo, o jogador tenta modificar o tensor e zerar suas entradas. Quando o jogador consegue fazer isso, isso resulta em um algoritmo de multiplicação de matriz comprovadamente correto para qualquer par de matrizes, e sua eficiência é capturada pelo número de passos dados para zerar o tensor.
A DeepMind então treinou o AlphaTensor usando aprendizado por reforço para jogar este jogo de matemática fictício – semelhante a como o AlphaGo aprendeu a jogar Vai— e melhorou gradualmente ao longo do tempo. Eventualmente, redescobriu o trabalho de Strassen e de outros matemáticos humanos, então os superou, de acordo com a DeepMind.
Em um exemplo mais complicado, o AlphaTensor descobriu uma nova maneira de realizar a multiplicação de matrizes 5×5 em 96 etapas (versus 98 para o método mais antigo). Esta semana, Manuel Kauers e Jakob Moosbauer de Johannes A Universidade Kepler em Linz, na Áustria, publicou um artigo alegando ter reduzido essa contagem em um, para 95 multiplicações. Não é coincidência que esse novo algoritmo aparentemente recorde veio tão rapidamente porque foi construído a partir do trabalho do DeepMind. Em seu artigo, Kauers e Moosbauer escrevem: “Esta solução foi obtida a partir do esquema de [DeepMind’s researchers] aplicando uma sequência de transformações que levam a um esquema do qual uma multiplicação pode ser eliminada.”
O progresso tecnológico se desenvolve e, com a IA agora procurando novos algoritmos, é possível que outros registros matemáticos de longa data caiam em breve. Semelhante a como o design auxiliado por computador (CAD) permitiu o desenvolvimento de computadores mais complexos e mais rápidos, a IA pode ajudar os engenheiros humanos a acelerar seu próprio lançamento.
.