Un motor de aceleración LSTM basado en FPGA para marcos de aprendizaje profundo
Autores: He, Dazhong; He, Junhua; Liu, Jun; Yang, Jie; Yan, Qing; Yang, Yang
Idioma: Inglés
Editor: MDPI
Año: 2021
Acceso abierto
Artículo científico
2021
Un motor de aceleración LSTM basado en FPGA para marcos de aprendizaje profundo
Categoría
Ingeniería y Tecnología
Subcategoría
Ingeniería Eléctrica y Electrónica
Palabras clave
Lstm
Fpga
Cpu
Gpu
Rnn
Aceleración
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 27
Citaciones: Sin citaciones
Durante las últimas dos décadas, las redes de Memoria a Corto y Largo Plazo (LSTM) se han utilizado para resolver problemas que requieren modelar secuencias largas porque pueden recordar selectivamente ciertos patrones durante un largo período, superando así a las redes neuronales tradicionales de alimentación directa y a las Redes Neuronales Recurrentes (RNN) en el aprendizaje de dependencias a largo plazo. Sin embargo, LSTM se caracteriza por la dependencia de retroalimentación, lo que limita el alto paralelismo de procesadores de propósito general como CPU y GPU. Además, en cuanto a la eficiencia energética de las aplicaciones de centros de datos, el alto consumo de cómputo de GPU y CPU no puede ser ignorado. Para hacer frente a los problemas mencionados, los Arreglos de Puertas Programables en Campo (FPGA) se están convirtiendo en una alternativa ideal. FPGA tiene las características de bajo consumo de energía y baja latencia, lo que es útil para la aceleración y optimización de LSTM y otras RNN. Este artículo propone un esquema de implementación del motor de aceleración de redes LSTM basado en FPGA y optimiza aún más la implementación a través de aritmética de punto fijo, matriz sística y tabla de búsqueda para funciones no lineales. Sobre esta base, para una implementación y aplicación sencillas, integramos el motor de aceleración propuesto en Caffe, uno de los marcos de trabajo de aprendizaje profundo más populares. Los resultados experimentales muestran que, en comparación con CPU y GPU, el motor de aceleración basado en FPGA puede lograr una mejora de rendimiento de 8.8 y 2.2 veces y una mejora de eficiencia energética de 16.9 y 9.6 veces, respectivamente, dentro del marco de trabajo de Caffe.
Descripción
Durante las últimas dos décadas, las redes de Memoria a Corto y Largo Plazo (LSTM) se han utilizado para resolver problemas que requieren modelar secuencias largas porque pueden recordar selectivamente ciertos patrones durante un largo período, superando así a las redes neuronales tradicionales de alimentación directa y a las Redes Neuronales Recurrentes (RNN) en el aprendizaje de dependencias a largo plazo. Sin embargo, LSTM se caracteriza por la dependencia de retroalimentación, lo que limita el alto paralelismo de procesadores de propósito general como CPU y GPU. Además, en cuanto a la eficiencia energética de las aplicaciones de centros de datos, el alto consumo de cómputo de GPU y CPU no puede ser ignorado. Para hacer frente a los problemas mencionados, los Arreglos de Puertas Programables en Campo (FPGA) se están convirtiendo en una alternativa ideal. FPGA tiene las características de bajo consumo de energía y baja latencia, lo que es útil para la aceleración y optimización de LSTM y otras RNN. Este artículo propone un esquema de implementación del motor de aceleración de redes LSTM basado en FPGA y optimiza aún más la implementación a través de aritmética de punto fijo, matriz sística y tabla de búsqueda para funciones no lineales. Sobre esta base, para una implementación y aplicación sencillas, integramos el motor de aceleración propuesto en Caffe, uno de los marcos de trabajo de aprendizaje profundo más populares. Los resultados experimentales muestran que, en comparación con CPU y GPU, el motor de aceleración basado en FPGA puede lograr una mejora de rendimiento de 8.8 y 2.2 veces y una mejora de eficiencia energética de 16.9 y 9.6 veces, respectivamente, dentro del marco de trabajo de Caffe.