BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Nova técnica acelera o Deep Learning com TensorFlow em 2x

Nova técnica acelera o Deep Learning com TensorFlow em 2x

Favoritos

Pesquisadores da Universidade Estadual da Carolina do Norte apresentaram recentemente um artigo na Conferência Internacional de Supercomputação (ICS) sobre a nova técnica, "deep reuse" (DR), que pode acelerar o tempo para redes neurais deep learning em execução no TensorFlow em até 2x, sem quase perder a precisão.

O Dr. Xipeng Shen, em conjunto com o aluno de graduação Lin Ning, foram os autores do artigo que descreve a técnica, que não requer hardware especial ou alterações no modelo de deep learning. Ao tirar proveito dessas semelhanças e nos valores de dados que são inseridos em uma camada de rede neural, o DR elimina a computação redundante durante a inferência, reduzindo o total de tempo gasto. A redução computacional também reduz o consumo de energia, um recurso essencial para aplicativos móveis ou incorporados. Executando vários modelos comuns em deep learning da visão computacional em GPUs, incluindo CifarNet, AlexNet e VGG-19, o DR alcançou de 1,75X a 2,02X, com um aumento de 0,0005. Em alguns casos, o DR melhorou ligeiramente a precisão. Em experimentos semelhantes em um telefone celular, o DR "alcança uma velocidade média de 2,12x para o CifarNet e 2,55X para o AlexNet".

Uma grande parte do processamento durante a inferência da rede neural é gasta multiplicando um vetor de dados por uma matriz de peso. O vetor pode ser dados de entrada ou os mapas de ativação que são alimentados nas camadas ocultas da rede. Embora existam técnicas de treinamento para produzir modelos menores que possuam menos produtos com matriz vetorial, o DR não exige nenhuma alteração no processo de treinamento ou no modelo.

No momento da inferência, o DR usa o hash sensível à localidade (LSH) para agrupar a entrada de cada camada de rede. O centróide do cluster é usado no produto da matriz vetorial, em vez do vetor de entrada real. O resultado é salvo na memória, e sempre que uma nova entrada é encontrada, é mapeada rapidamente para o cluster e o resultado do produto da matriz vetorial é salvo, em vez de ser recalculado com a nova entrada. Isso pode reduzir a precisão dos cálculos, mas, de acordo com a equipe, "a margem de comparação está entre 54-78% de precisão geral de inferência". Também há alguma sobrecarga necessária para aplicar o algoritmo LSH, mas, novamente, os ganhos totais mais do que compensam.

O tempo de execução aprimorado do DR significa menor consumo de energia, o que é atraente para dispositivos móveis ou incorporados, no entanto, não reduz os requisitos de armazenamento e memória do modelo. Muitos modelos deep learning são grandes para serem executados em celulares, por exemplo, a equipe de pesquisa não pôde executar o modelo VGG-19 nos dispositivos móveis. Esse problema pode ser solucionado através da produção de modelos menores ou de técnicas de compactação, como a quantização pós-treinamento. Os pesquisadores investigaram o desempenho do DR com redes compactadas e descobriram que havia alcançado uma velocidade de 2x a 3x nas camadas convolucionais de um AlexNet compactado.

A equipe implementou o DR usando o TensorFlow para experimentos com GPU e o TensorFlow Lite para experimentos com dispositivos móveis. Em um artigo anterior, os pesquisadores investigaram o uso de DR para acelerar o treinamento. Nessas experiências mais recentes, a equipe usou modelos pré treinados da biblioteca TensorFlow slim como linha de base para comparar as melhorias de inferência do DR.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT