Diseño de un sistema en un FPGA para una red neuronal configurable entrenada mediante un EKF
Autores: Renteria-Cedano, Juan; Rivera, Jorge; Sandoval-Ibarra, F.; Ortega-Cisneros, Susana; Loo-Yau, Raúl
Idioma: Inglés
Editor: MDPI
Año: 2019
Acceso abierto
Artículo científico
2019
Diseño de un sistema en un FPGA para una red neuronal configurable entrenada mediante un EKF
Categoría
Ingeniería y Tecnología
Subcategoría
Ingeniería Eléctrica y Electrónica
Palabras clave
Arquitectura configurable
Red neuronal artificial
Array de Puertas Programables en Campo
Red Neuronal Multicapa de Alimentación Adelantada
Filtro de Kalman extendido
Lenguaje de Descripción de Hardware Verilog
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 28
Citaciones: Sin citaciones
Este trabajo presenta una arquitectura configurable para una red neuronal artificial implementada con un Array de Puertas Programables en Campo (FPGA) en un entorno de Sistema en Chip (SoC). Esta arquitectura puede reproducir la función de transferencia de diferentes configuraciones de Redes Neuronales de Alimentación Multicapa (MFNN). La funcionalidad de esta arquitectura configurable se basa en un solo perceptrón, multiplexores y bloques de memoria que permiten enrutamiento, almacenamiento y procesamiento de información. El filtro de Kalman extendido es el algoritmo de entrenamiento que obtiene los valores óptimos de peso para el MFNN. La arquitectura presentada fue desarrollada utilizando el Lenguaje de Descripción de Hardware Verilog, que permite diseñar hardware con una cantidad justa de recursos lógicos y facilita la portabilidad a diferentes modelos de FPGAs sin problemas de compatibilidad. Se propone un SoC que incorpora principalmente un microprocesador y un FPGA, donde el microprocesador se utiliza para configurar el MFNN y habilitar y deshabilitar algunos bloques funcionales en el FPGA. El hardware se probó con mediciones de un amplificador de potencia de clase F de GaN, utilizando una señal de Evolución a Largo Plazo de 2.1 GHz con 5 MHz de ancho de banda. En particular, se consideró un caso especial de un MFNN con dos capas, es decir, una red neuronal autorregresiva no lineal de valores reales con una entrada exógena. Los resultados revelan que se logró un valor de error cuadrático medio normalizado de -32.82 dB en estado estacionario, con una generalización del 71.36% utilizando muestras desconocidas.
Descripción
Este trabajo presenta una arquitectura configurable para una red neuronal artificial implementada con un Array de Puertas Programables en Campo (FPGA) en un entorno de Sistema en Chip (SoC). Esta arquitectura puede reproducir la función de transferencia de diferentes configuraciones de Redes Neuronales de Alimentación Multicapa (MFNN). La funcionalidad de esta arquitectura configurable se basa en un solo perceptrón, multiplexores y bloques de memoria que permiten enrutamiento, almacenamiento y procesamiento de información. El filtro de Kalman extendido es el algoritmo de entrenamiento que obtiene los valores óptimos de peso para el MFNN. La arquitectura presentada fue desarrollada utilizando el Lenguaje de Descripción de Hardware Verilog, que permite diseñar hardware con una cantidad justa de recursos lógicos y facilita la portabilidad a diferentes modelos de FPGAs sin problemas de compatibilidad. Se propone un SoC que incorpora principalmente un microprocesador y un FPGA, donde el microprocesador se utiliza para configurar el MFNN y habilitar y deshabilitar algunos bloques funcionales en el FPGA. El hardware se probó con mediciones de un amplificador de potencia de clase F de GaN, utilizando una señal de Evolución a Largo Plazo de 2.1 GHz con 5 MHz de ancho de banda. En particular, se consideró un caso especial de un MFNN con dos capas, es decir, una red neuronal autorregresiva no lineal de valores reales con una entrada exógena. Los resultados revelan que se logró un valor de error cuadrático medio normalizado de -32.82 dB en estado estacionario, con una generalización del 71.36% utilizando muestras desconocidas.