- Considerando que seria difícil obter melhorias em linguagens no nível de C/C++, tentaram otimizar no nível de assembly
- Como em um jogo, o algoritmo explora continuamente respostas que correspondam à solução esperada
- Em comparação com a biblioteca de ordenação do LLVM libc++, apresentou desempenho 70% mais rápido em conjuntos menores e 1,7% mais rápido em sequências com mais de 250 mil itens
- Como a maior parte das ordenações ocorre em sequências curtas, o foco foi maior nesse ponto
- Não é apenas mais rápido: também mostra uma abordagem engenhosa comparável ao lance 37 do AlphaGo
- Também está melhorando algoritmos de hashing
4 comentários
É realmente impressionante que a IA também consiga encontrar algoritmos de ordenação melhores.
Pelo que vi, recentemente também têm sido feitas várias tentativas de encontrar optimizers usados em deep learning desse jeito. E o desempenho também é bom.
"Em vez de algo como 'como a maioria das ordenações acontece em sequências curtas, vamos focar mais nisso', eles simplesmente o treinaram para descobrir algoritmos em assembly que ordenassem uma quantidade fixa de números — 3, 4, ... até 8."
Olhando o texto original, parece que os pesquisadores que criaram o AlphaDev o treinaram com essa intenção em mente.