Fully parallel implementation of an SVM with SGD-based training on FPGA
| Ano de defesa: | 2021 |
|---|---|
| Autor(a) principal: | |
| Orientador(a): | |
| Banca de defesa: | |
| Tipo de documento: | Dissertação |
| Tipo de acesso: | Acesso aberto |
| Idioma: | por |
| Instituição de defesa: |
Universidade Federal do Rio Grande do Norte
Brasil UFRN PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA E DE COMPUTAÇÃO |
| Programa de Pós-Graduação: |
Não Informado pela instituição
|
| Departamento: |
Não Informado pela instituição
|
| País: |
Não Informado pela instituição
|
| Palavras-chave em Português: | |
| Link de acesso: | https://repositorio.ufrn.br/handle/123456789/32057 |
Resumo: | Artificial intelligence, machine learning, and deep learning have proven to be powerful techniques for solving natural language processing problems, computer vision, and others. However, its computational and statistical performance depends on other factors of the algorithms used for training, the computing platform used, and even the numerical precision used to represent the data. One of the main machine learning algorithms is the Support Vector Machine (SVM), most commonly trained through minimal sequential optimization, contributing to low computational performance. As an alternative, algorithms based on Stochastic Gradient Descent (SGD) have better scalability and can be used as good options for training machine learning algorithms. However, even with algorithms based on the stochastic gradient, the training and inference times can become long depending on the computing platform employed. Thus, accelerators based on Field Programmable Gate Arrays (FPGAs) can be used to improve performance in terms of processing speed. This work proposes a fully parallel FPGA implementation of an SVM with SGD-based training. Results associated with hardware occupation, processing speed (or throughput), and accuracy for training and inference in various quantization formats are presented. |
| id |
UFRN_26a7c560fc610cf3fa901aafa6ebd716 |
|---|---|
| oai_identifier_str |
oai:repositorio.ufrn.br:123456789/32057 |
| network_acronym_str |
UFRN |
| network_name_str |
Repositório Institucional da UFRN |
| repository_id_str |
|
| spelling |
Fully parallel implementation of an SVM with SGD-based training on FPGAFPGASGDSVMAprendizagem de máquinaArtificial intelligence, machine learning, and deep learning have proven to be powerful techniques for solving natural language processing problems, computer vision, and others. However, its computational and statistical performance depends on other factors of the algorithms used for training, the computing platform used, and even the numerical precision used to represent the data. One of the main machine learning algorithms is the Support Vector Machine (SVM), most commonly trained through minimal sequential optimization, contributing to low computational performance. As an alternative, algorithms based on Stochastic Gradient Descent (SGD) have better scalability and can be used as good options for training machine learning algorithms. However, even with algorithms based on the stochastic gradient, the training and inference times can become long depending on the computing platform employed. Thus, accelerators based on Field Programmable Gate Arrays (FPGAs) can be used to improve performance in terms of processing speed. This work proposes a fully parallel FPGA implementation of an SVM with SGD-based training. Results associated with hardware occupation, processing speed (or throughput), and accuracy for training and inference in various quantization formats are presented.Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPESInteligência artificial, aprendizagem de máquina e aprendizagem profunda têm se mostrado técnicas poderosas para resolver problemas em áreas como processamento de linguagem natural, visão computacional e outras. No entanto, seu desempenho computacional e estatístico depende além de outros fatores dos algoritmos usados para o treinamento, da plataforma de computação usada e até mesmo da precisão numérica usada para representar os dados. Um dos principais algoritmos de aprendizagem de máquina é o Support Vector Machine (SVM) sendo mais comumente treinada por meio da otimização sequencial mínima, o que contribui para um baixo desempenho computacional. Como uma alternativa, algoritmos baseados em Stochastic Gradient Descent (SGD) apresentam melhor escalabilidade e podem ser utilizados como boas opções para o treinamento de algoritmos de aprendizado de máquina. Porém, mesmo com o uso de algoritmos baseados no gradiente estocástico, os tempos de treinamento e inferência podem se tornar grandes dependendo da plataforma de computação empregada. Por esse motivo, aceleradores baseados em Field Programmable Gate Arrays (FPGAs) podem ser utilizados para melhorar o desempenho em termos de velocidade de processamento. Este trabalho propõe uma implementação em FPGA de uma SVM, totalmente paralela com treinamento baseado no SGD. Resultados associados a ocupação em hardware, velocidade de processamento (throughput), e acurácia para o treinamento e inferência em vários formatos de quantização são apresentados.Universidade Federal do Rio Grande do NorteBrasilUFRNPROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA E DE COMPUTAÇÃOFernandes, Marcelo Augusto Costahttp://lattes.cnpq.br/8291687873735152http://lattes.cnpq.br/3475337353676349Silva, Ivanovitch Medeiros Dantas dahttp://lattes.cnpq.br/3608440944832201Santana Júnior, Orivaldo Vieira dehttp://lattes.cnpq.br/5050555219716698Sablon, Vicente Idalberto Becerrahttp://lattes.cnpq.br/6350047853320576Lopes, Felipe Fernandes2021-04-06T19:39:32Z2021-04-06T19:39:32Z2021-01-29info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfLOPES, Felipe Fernandes. Fully parallel implementation of an SVM with SGD-based training on FPGA. 2021. 93f. Dissertação (Mestrado em Engenharia Elétrica e de Computação) - Centro de Tecnologia, Universidade Federal do Rio Grande do Norte, Natal, 2021.https://repositorio.ufrn.br/handle/123456789/32057info:eu-repo/semantics/openAccessporreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRN2021-04-11T09:05:14Zoai:repositorio.ufrn.br:123456789/32057Repositório InstitucionalPUBhttp://repositorio.ufrn.br/oai/repositorio@bczm.ufrn.bropendoar:2021-04-11T09:05:14Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false |
| dc.title.none.fl_str_mv |
Fully parallel implementation of an SVM with SGD-based training on FPGA |
| title |
Fully parallel implementation of an SVM with SGD-based training on FPGA |
| spellingShingle |
Fully parallel implementation of an SVM with SGD-based training on FPGA Lopes, Felipe Fernandes FPGA SGD SVM Aprendizagem de máquina |
| title_short |
Fully parallel implementation of an SVM with SGD-based training on FPGA |
| title_full |
Fully parallel implementation of an SVM with SGD-based training on FPGA |
| title_fullStr |
Fully parallel implementation of an SVM with SGD-based training on FPGA |
| title_full_unstemmed |
Fully parallel implementation of an SVM with SGD-based training on FPGA |
| title_sort |
Fully parallel implementation of an SVM with SGD-based training on FPGA |
| author |
Lopes, Felipe Fernandes |
| author_facet |
Lopes, Felipe Fernandes |
| author_role |
author |
| dc.contributor.none.fl_str_mv |
Fernandes, Marcelo Augusto Costa http://lattes.cnpq.br/8291687873735152 http://lattes.cnpq.br/3475337353676349 Silva, Ivanovitch Medeiros Dantas da http://lattes.cnpq.br/3608440944832201 Santana Júnior, Orivaldo Vieira de http://lattes.cnpq.br/5050555219716698 Sablon, Vicente Idalberto Becerra http://lattes.cnpq.br/6350047853320576 |
| dc.contributor.author.fl_str_mv |
Lopes, Felipe Fernandes |
| dc.subject.por.fl_str_mv |
FPGA SGD SVM Aprendizagem de máquina |
| topic |
FPGA SGD SVM Aprendizagem de máquina |
| description |
Artificial intelligence, machine learning, and deep learning have proven to be powerful techniques for solving natural language processing problems, computer vision, and others. However, its computational and statistical performance depends on other factors of the algorithms used for training, the computing platform used, and even the numerical precision used to represent the data. One of the main machine learning algorithms is the Support Vector Machine (SVM), most commonly trained through minimal sequential optimization, contributing to low computational performance. As an alternative, algorithms based on Stochastic Gradient Descent (SGD) have better scalability and can be used as good options for training machine learning algorithms. However, even with algorithms based on the stochastic gradient, the training and inference times can become long depending on the computing platform employed. Thus, accelerators based on Field Programmable Gate Arrays (FPGAs) can be used to improve performance in terms of processing speed. This work proposes a fully parallel FPGA implementation of an SVM with SGD-based training. Results associated with hardware occupation, processing speed (or throughput), and accuracy for training and inference in various quantization formats are presented. |
| publishDate |
2021 |
| dc.date.none.fl_str_mv |
2021-04-06T19:39:32Z 2021-04-06T19:39:32Z 2021-01-29 |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
| format |
masterThesis |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
LOPES, Felipe Fernandes. Fully parallel implementation of an SVM with SGD-based training on FPGA. 2021. 93f. Dissertação (Mestrado em Engenharia Elétrica e de Computação) - Centro de Tecnologia, Universidade Federal do Rio Grande do Norte, Natal, 2021. https://repositorio.ufrn.br/handle/123456789/32057 |
| identifier_str_mv |
LOPES, Felipe Fernandes. Fully parallel implementation of an SVM with SGD-based training on FPGA. 2021. 93f. Dissertação (Mestrado em Engenharia Elétrica e de Computação) - Centro de Tecnologia, Universidade Federal do Rio Grande do Norte, Natal, 2021. |
| url |
https://repositorio.ufrn.br/handle/123456789/32057 |
| dc.language.iso.fl_str_mv |
por |
| language |
por |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.publisher.none.fl_str_mv |
Universidade Federal do Rio Grande do Norte Brasil UFRN PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA E DE COMPUTAÇÃO |
| publisher.none.fl_str_mv |
Universidade Federal do Rio Grande do Norte Brasil UFRN PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA E DE COMPUTAÇÃO |
| dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFRN instname:Universidade Federal do Rio Grande do Norte (UFRN) instacron:UFRN |
| instname_str |
Universidade Federal do Rio Grande do Norte (UFRN) |
| instacron_str |
UFRN |
| institution |
UFRN |
| reponame_str |
Repositório Institucional da UFRN |
| collection |
Repositório Institucional da UFRN |
| repository.name.fl_str_mv |
Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN) |
| repository.mail.fl_str_mv |
repositorio@bczm.ufrn.br |
| _version_ |
1855758797636632576 |