Identificador persistente para citar o vincular este elemento: http://hdl.handle.net/10662/21123
Títulos: Recommender system implementations for embedded collaborative filtering applications
Autores/as: Pajuelo Holguera, Francisco
Gómez Pulido, Juan Antonio
Lara Ortega, Fernando
Granado Criado, José María
Palabras clave: Sistemas de recomendación;Recommender systems;Computación reconfigurable;Reconfigurable computing;Factorización matricial;Matrix factorization;Collaborative filtering;FPGAs;High level synthesis
Fecha de publicación: 2020
Editor/a: Elsevier
Resumen: Este artículo propone un sistema de recomendación implementado en hardware reconfigurable para probar aplicaciones de filtrado colaborativo integradas en chip y de bajo consumo energético. Aunque el tiempo de computación es inferior al obtenido con los microprocesadores multinúcleo habituales, esta propuesta tiene la ventaja de proporcionar un enfoque para resolver cualquier problema de predicción basado en el filtrado colaborativo utilizando un entorno informático ligero, off-line y altamente transportable. Este enfoque se ha probado con éxito con conjuntos de datos de última generación. Como resultado de la mejora de ciertas tareas relacionadas con el sistema de recomendación en chip, proponemos además un circuito paralelo personalizado de grano fino para la multiplicación rápida de matrices con números de coma flotante. Este circuito se diseñó para acelerar las predicciones del modelo obtenido por el sistema de recomendación, y se probó con dos pequeños conjuntos de datos con fines experimentales. El acelerador está construido a partir de dos niveles de paralelismo. Por un lado, varias predicciones se ejecutan en paralelo a través de la multiplicación simultánea de diferentes vectores de dos matrices. Por otro lado, la operación de cada vector se ejecuta en paralelo multiplicando pares de valores en coma flotante para posteriormente sumar los resultados correspondientes también en paralelo. Este circuito se comparó con otros enfoques diseñados con el mismo fin: circuitos construidos con herramientas automatizadas de síntesis de alto nivel, un microprocesador de propósito general y unidades de procesamiento gráfico de alto rendimiento. El rendimiento del acelerador de predicción en términos de tiempo superó al de los otros enfoques. También evaluamos la escalabilidad del circuito a problemas prácticos utilizando el enfoque de síntesis de alto nivel, y confirmamos que las implementaciones basadas en hardware reconfigurable permiten aceleraciones aceptables de procesadores multinúcleo.
This paper starts proposing a complete recommender system implemented on reconfigurable hardware with the purpose of testing on-chip, low-energy embedded collaborative filtering applications. Although the computing time is lower than the one obtained from usual multicore microprocessors, this proposal has the advantage of providing an approach to solve any prediction problem based on collaborative filtering by using an off-line, highly-portable light computing environment. This approach has been successfully tested with state-of-the-art datasets. Next, as a result of improving certain tasks related to the on-chip recommender system, we propose a custom, fine-grained parallel circuit for quick matrix multiplication with floating-point numbers. This circuit was designed to accelerate the predictions from the model obtained by the recommender system, and tested with two small datasets for experimental purposes. The accelerator is built from two levels of parallelism. On the one hand, several predictions run in parallel through the simultaneous multiplication of different vectors of two matrices. On the other hand, the operation of each vector is executed in parallel by multiplying pairs of floating-point values to later add the corresponding results in parallel as well. This circuit was compared with other approaches designed for the same purpose: circuits built using automatized tools of high-level synthesis, a general-purpose microprocessor, and high-performance graphical processing units. The performance of the prediction accelerator in terms of time surpassed that of the other approaches. We also evaluated the scalability of the circuit to practical problems using the high-level synthesis approach, and confirmed that implementations based on reconfigurable hardware allow acceptable speedups of multi-core processors.
URI: http://hdl.handle.net/10662/21123
ISSN: 0141-9331
DOI: 10.1016/j.micpro.2020.102997
Colección:DTCYC - Artículos

Archivos
Archivo Descripción TamañoFormato 
rsi20.pdf1,29 MBAdobe PDFDescargar


Este elemento está sujeto a una licencia Licencia Creative Commons Creative Commons