Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificial
RESUMEN: En la actualidad diferentes contextos industriales y científicos participan del crecimiento de la producción de datos, lo cual conlleva igualmente a la necesidad de procesarlos de la manera más rápida posible. Dos de estos contextos de particular interés para este trabajo son la física expe...
- Autores:
-
Montoya Vásquez, Daniel Alfonso
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2020
- Institución:
- Universidad de Antioquia
- Repositorio:
- Repositorio UdeA
- Idioma:
- spa
- OAI Identifier:
- oai:bibliotecadigital.udea.edu.co:10495/17662
- Acceso en línea:
- http://hdl.handle.net/10495/17662
- Palabra clave:
- Inteligencia artificial
Artificial intelligence
Redes neurales (Computadores)
Neural networks (Computer science)
Física - Procesamiento de datos
Physics - Data processing
Aprendizaje profundo
Lógica programable
http://vocabularies.unesco.org/thesaurus/concept3052
- Rights
- openAccess
- License
- Atribución-NoComercial-SinDerivadas 2.5 Colombia (CC BY-NC-ND 2.5 CO)
id |
UDEA2_78ea79012f1ff92c35053ff0bddeb7cd |
---|---|
oai_identifier_str |
oai:bibliotecadigital.udea.edu.co:10495/17662 |
network_acronym_str |
UDEA2 |
network_name_str |
Repositorio UdeA |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificial |
dc.title.alternative.spa.fl_str_mv |
Implementation and evaluation of the performance of dense neural networks implemented on FPGAs for fast inference, applied to problems in physics and computer vision |
title |
Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificial |
spellingShingle |
Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificial Inteligencia artificial Artificial intelligence Redes neurales (Computadores) Neural networks (Computer science) Física - Procesamiento de datos Physics - Data processing Aprendizaje profundo Lógica programable http://vocabularies.unesco.org/thesaurus/concept3052 |
title_short |
Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificial |
title_full |
Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificial |
title_fullStr |
Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificial |
title_full_unstemmed |
Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificial |
title_sort |
Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificial |
dc.creator.fl_str_mv |
Montoya Vásquez, Daniel Alfonso |
dc.contributor.advisor.none.fl_str_mv |
Jaramillo Gallego, Johny Alexander |
dc.contributor.author.none.fl_str_mv |
Montoya Vásquez, Daniel Alfonso |
dc.subject.unesco.none.fl_str_mv |
Inteligencia artificial Artificial intelligence |
topic |
Inteligencia artificial Artificial intelligence Redes neurales (Computadores) Neural networks (Computer science) Física - Procesamiento de datos Physics - Data processing Aprendizaje profundo Lógica programable http://vocabularies.unesco.org/thesaurus/concept3052 |
dc.subject.lemb.none.fl_str_mv |
Redes neurales (Computadores) Neural networks (Computer science) Física - Procesamiento de datos Physics - Data processing |
dc.subject.proposal.spa.fl_str_mv |
Aprendizaje profundo Lógica programable |
dc.subject.unescouri.none.fl_str_mv |
http://vocabularies.unesco.org/thesaurus/concept3052 |
description |
RESUMEN: En la actualidad diferentes contextos industriales y científicos participan del crecimiento de la producción de datos, lo cual conlleva igualmente a la necesidad de procesarlos de la manera más rápida posible. Dos de estos contextos de particular interés para este trabajo son la física experimental y la visión artificial, donde las técnicas de la inteligencia artificial como las redes neuronales, vienen mostrando precisión y efectividad en ciertas tareas, pero tienen limitaciones en cuanto a la velocidad de su implementación debidas principalmente al hardware con que se implementan. Alternativas de hardware como ASICS, GPUs, y FPGAs compiten en la carrera por acelerar el entrenamiento y la inferencia de redes neuronales. Características como la flexibilidad, bajo consumo de energía, costos asequibles, y velocidad hacen de las FPGAs uno de los competidores más prometedores y aplicables, especialmente en contextos académicos. En el presente trabajo se presentan las bases teóricas y conceptuales que se encuentran en la intersección de la física, el aprendizaje profundo y las FPGAs, se ilustra el proceso de implementación de diferentes redes neuronales en FPGA mediante el uso de la síntesis de alto nivel, y se evalúa el rendimiento de éstas respecto a otros sistemas como GPUs, y CPUs programadas en entornos Python y C, en cuanto a latencia y consumo de recursos, en particular, respecto a los problemas de inferencia de redes neuronales para clasificación de subestructura de jets, y un problema de visión artificial: la clasificación de dígitos escritos a mano. Los resultados muestran la superioridad en cuanto a tiempo de inferencia, de una FPGA de bajo costo respecto a los otros sistemas, en ordenes desde 10.72x hasta 805x veces más rápida sin perder exactitud. Estos resultados validan estos dispositivos como fuertes candidatos para mejorar el rendimiento de las redes neuronales. Finalmente se discuten limitaciones y direcciones futuras. |
publishDate |
2020 |
dc.date.accessioned.none.fl_str_mv |
2020-12-07T16:22:31Z |
dc.date.available.none.fl_str_mv |
2020-12-07T16:22:31Z |
dc.date.issued.none.fl_str_mv |
2020 |
dc.type.spa.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
dc.type.coarversion.fl_str_mv |
http://purl.org/coar/version/c_b1a7d7d4d402bcce |
dc.type.hasversion.spa.fl_str_mv |
info:eu-repo/semantics/draft |
dc.type.coar.spa.fl_str_mv |
http://purl.org/coar/resource_type/c_7a1f |
dc.type.redcol.spa.fl_str_mv |
https://purl.org/redcol/resource_type/TP |
dc.type.local.spa.fl_str_mv |
Tesis/Trabajo de grado - Monografía - Pregrado |
format |
http://purl.org/coar/resource_type/c_7a1f |
status_str |
draft |
dc.identifier.uri.none.fl_str_mv |
http://hdl.handle.net/10495/17662 |
url |
http://hdl.handle.net/10495/17662 |
dc.language.iso.spa.fl_str_mv |
spa |
language |
spa |
dc.rights.*.fl_str_mv |
Atribución-NoComercial-SinDerivadas 2.5 Colombia (CC BY-NC-ND 2.5 CO) |
dc.rights.spa.fl_str_mv |
info:eu-repo/semantics/openAccess |
dc.rights.uri.*.fl_str_mv |
http://creativecommons.org/licenses/by-nc-nd/2.5/co/ |
dc.rights.accessrights.spa.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.rights.creativecommons.spa.fl_str_mv |
https://creativecommons.org/licenses/by-nc-nd/4.0/ |
rights_invalid_str_mv |
Atribución-NoComercial-SinDerivadas 2.5 Colombia (CC BY-NC-ND 2.5 CO) http://creativecommons.org/licenses/by-nc-nd/2.5/co/ http://purl.org/coar/access_right/c_abf2 https://creativecommons.org/licenses/by-nc-nd/4.0/ |
eu_rights_str_mv |
openAccess |
dc.format.extent.spa.fl_str_mv |
64 |
dc.format.mimetype.spa.fl_str_mv |
application/pdf |
dc.publisher.group.spa.fl_str_mv |
Instrumentación Científica y Microelectrónica |
dc.publisher.place.spa.fl_str_mv |
Medellín, Colombia |
institution |
Universidad de Antioquia |
bitstream.url.fl_str_mv |
http://bibliotecadigital.udea.edu.co/bitstream/10495/17662/3/license_rdf http://bibliotecadigital.udea.edu.co/bitstream/10495/17662/1/MontoyaDaniel_2020_FpgaRedesNeuronales.pdf http://bibliotecadigital.udea.edu.co/bitstream/10495/17662/4/license.txt |
bitstream.checksum.fl_str_mv |
b88b088d9957e670ce3b3fbe2eedbc13 60bd1d2bb2a931b1e06d00f1dfb5c36f 8a4605be74aa9ea9d79846c1fba20a33 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio Institucional Universidad de Antioquia |
repository.mail.fl_str_mv |
andres.perez@udea.edu.co |
_version_ |
1812173124035149824 |
spelling |
Jaramillo Gallego, Johny AlexanderMontoya Vásquez, Daniel Alfonso2020-12-07T16:22:31Z2020-12-07T16:22:31Z2020http://hdl.handle.net/10495/17662RESUMEN: En la actualidad diferentes contextos industriales y científicos participan del crecimiento de la producción de datos, lo cual conlleva igualmente a la necesidad de procesarlos de la manera más rápida posible. Dos de estos contextos de particular interés para este trabajo son la física experimental y la visión artificial, donde las técnicas de la inteligencia artificial como las redes neuronales, vienen mostrando precisión y efectividad en ciertas tareas, pero tienen limitaciones en cuanto a la velocidad de su implementación debidas principalmente al hardware con que se implementan. Alternativas de hardware como ASICS, GPUs, y FPGAs compiten en la carrera por acelerar el entrenamiento y la inferencia de redes neuronales. Características como la flexibilidad, bajo consumo de energía, costos asequibles, y velocidad hacen de las FPGAs uno de los competidores más prometedores y aplicables, especialmente en contextos académicos. En el presente trabajo se presentan las bases teóricas y conceptuales que se encuentran en la intersección de la física, el aprendizaje profundo y las FPGAs, se ilustra el proceso de implementación de diferentes redes neuronales en FPGA mediante el uso de la síntesis de alto nivel, y se evalúa el rendimiento de éstas respecto a otros sistemas como GPUs, y CPUs programadas en entornos Python y C, en cuanto a latencia y consumo de recursos, en particular, respecto a los problemas de inferencia de redes neuronales para clasificación de subestructura de jets, y un problema de visión artificial: la clasificación de dígitos escritos a mano. Los resultados muestran la superioridad en cuanto a tiempo de inferencia, de una FPGA de bajo costo respecto a los otros sistemas, en ordenes desde 10.72x hasta 805x veces más rápida sin perder exactitud. Estos resultados validan estos dispositivos como fuertes candidatos para mejorar el rendimiento de las redes neuronales. Finalmente se discuten limitaciones y direcciones futuras.ABSTRACT: Currently, many industrial and scientific contexts participate in the worldwide growth of data production, which also leads to the need to process these data as quickly as possible. Two of these contexts of particular interest for this work are experimental physics and computer vision, where artificial intelligence techniques such as neural networks have been showing good precision and effectiveness in certain tasks, but have limitations in terms of the speed of their implementation due mainly to the hardware in which they are implemented. Hardware alternatives such as ASICS, GPUs, and FPGAs compete in the race to accelerate neural network training and inference. Features such as flexibility, low power consumption, affordable costs, and speed make FPGAs one of the most promising and applicable competitors, especially in academic contexts. This work presents the theoretical and conceptual basis at the intersection of physics, deep learning, and FPGA, illustrates the process of implementing different neural networks in FPGAs using high-level synthesis, and evaluates the performance of FPGAs with respect to other systems such as GPUs, and CPUs programmed in Python and C environments, in terms of latency and resource consumption, particularly with respect to neural network inference problems for jet substructure classification, and a machine vision problem: the classification of handwritten digits. The results show the superiority in terms of inference time of a low-cost FPGA over other systems, in orders from 10.72x to 805x times faster without losing accuracy. These results validate these devices as strong candidates for improving neural network performance. Finally, limitations and future directions are discussed.64application/pdfspainfo:eu-repo/semantics/draftinfo:eu-repo/semantics/bachelorThesishttp://purl.org/coar/resource_type/c_7a1fhttps://purl.org/redcol/resource_type/TPTesis/Trabajo de grado - Monografía - Pregradohttp://purl.org/coar/version/c_b1a7d7d4d402bcceAtribución-NoComercial-SinDerivadas 2.5 Colombia (CC BY-NC-ND 2.5 CO)info:eu-repo/semantics/openAccesshttp://creativecommons.org/licenses/by-nc-nd/2.5/co/http://purl.org/coar/access_right/c_abf2https://creativecommons.org/licenses/by-nc-nd/4.0/Implementación y evaluación del rendimiento de redes neuronales densas en FPGA para la inferencia rápida, aplicadas a problemas en física y visión artificialImplementation and evaluation of the performance of dense neural networks implemented on FPGAs for fast inference, applied to problems in physics and computer visionInstrumentación Científica y MicroelectrónicaMedellín, ColombiaInteligencia artificialArtificial intelligenceRedes neurales (Computadores)Neural networks (Computer science)Física - Procesamiento de datosPhysics - Data processingAprendizaje profundoLógica programablehttp://vocabularies.unesco.org/thesaurus/concept3052FísicoPregradoFacultad de Ciencias Exactas y Naturales. Carrera de FísicaUniversidad de AntioquiaCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8823http://bibliotecadigital.udea.edu.co/bitstream/10495/17662/3/license_rdfb88b088d9957e670ce3b3fbe2eedbc13MD53ORIGINALMontoyaDaniel_2020_FpgaRedesNeuronales.pdfMontoyaDaniel_2020_FpgaRedesNeuronales.pdfTrabajo de grado de pregradoapplication/pdf2785896http://bibliotecadigital.udea.edu.co/bitstream/10495/17662/1/MontoyaDaniel_2020_FpgaRedesNeuronales.pdf60bd1d2bb2a931b1e06d00f1dfb5c36fMD51LICENSElicense.txtlicense.txttext/plain; charset=utf-81748http://bibliotecadigital.udea.edu.co/bitstream/10495/17662/4/license.txt8a4605be74aa9ea9d79846c1fba20a33MD5410495/17662oai:bibliotecadigital.udea.edu.co:10495/176622021-06-14 10:10:40.649Repositorio Institucional Universidad de Antioquiaandres.perez@udea.edu.coTk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo= |