Improving data locality of bagging ensembles for data streams through mini-batching
| dc.contributor.advisor1 | Senger, Hermes | |
| dc.contributor.advisor1Lattes | http://lattes.cnpq.br/3691742159298316 | por |
| dc.contributor.author | Cassales, Guilherme | |
| dc.contributor.authorlattes | http://lattes.cnpq.br/6191125593821481 | por |
| dc.date.accessioned | 2021-11-26T14:46:36Z | |
| dc.date.available | 2021-11-26T14:46:36Z | |
| dc.date.issued | 2021-08-27 | |
| dc.description.abstract | Machine Learning techniques have been employed in virtually all domains in the past few years. In many applications, learning algorithms will have to cope with dynamic environments, under both memory and time constraints, to provide a (near) real-time answer. In this scenario, Ensemble learning comprises a class of stream mining algorithms that achieved remarkable predictive performance. Ensembles are implemented as a set of (several) individual learners whose predictions are aggregated to predict new incoming instances. Although ensembles can be computationally more expensive, they are naturally amendable for task-parallelism. However, the incremental learning and dynamic data structures used to capture the concept drift increase the cache misses and hinder the benefit of parallelism. In this thesis, we devise a method capable of reducing the execution time and increasing the energy efficiency of several bagging ensembles for data streams. The method is based on a task-parallel model capable of leveraging the natural independence of the underlying learners from this class of ensembles (bagging). The parallel model is combined with a mini-batching technique that can improve the memory access locality of the ensembles. We consistently achieve speedups of 4X to 5X with 8 cores, with even a superlinear speedup of 12X in one case. We demonstrate that mini-batching can significantly decrease the reuse distance and the number of cache-misses.We provide data regarding the trade-off regarding the reduction of execution time with a loss in predictive performance (ranging from less than 1% up to 12%). We conclude that loss in predictive performance depends on dataset characteristics and the mini-batch size used. We present evidence that using small mini-batch sizes (e.g., up to 50 examples) provides a good compromise between execution time and predictive performance. We demonstrate that energy efficiency can be improved under three different workloads. Although the biggest reduction in energy consumption happens in the smallest workload, it comes at the cost of a big delay in response time, which may hinder the idea of real-time processing. In the higher workloads, however, the proposed method presents a better performance in both the energy consumption and the delay in response time when compared to the baseline version. We evaluate our method using many hardware platforms, with a total of six different hardware platforms used among all experimental frameworks. At the same time, we use up to six different algorithms and up to five different datasets on the experimental frameworks. By providing data about the execution of the proposed method in such a wide range of setups, we believe that the proposed method is a viable solution for improving the performance of online bagging ensembles. | eng |
| dc.description.resumo | As técnicas de aprendizado de máquina foram empregadas em praticamente todos os domínios nos últimos anos. Em muitas aplicações, os algoritmos de aprendizagem terão que lidar com ambientes dinâmicos, onde precisam fornecer uma resposta em (quase)tempo real enquanto aderem com restrições tanto de memória quanto de tempo. Nesse cenário, os comitês de aprendizagem compreendem uma classe de algoritmos de mineração de fluxo de dados capaz de alcançar um notável desempenho preditivo. Os comitês de aprendizagem são implementados como um conjunto de (vários) classificadores individuais, cujas predições são agregadas para classificar novas instâncias de entrada. Embora os comitês de aprendizagem possam ser computacionalmente mais caros, eles são naturalmente modificáveis para o paralelismo de tarefas. No entanto, o aprendizado incremental e as estruturas de dados dinâmicas usadas para capturar o desvio de conceito aumentam as falhas de cache e podem reduzir o benefício do paralelismo. Nesta tese, um método capaz de reduzir o tempo de execução e aumentar a eficiência energética de diversos comitês de aprendizagem do tipo bagging para fluxos de dados é proposto. O método é baseado em um modelo de paralelismo de tarefas capaz de aproveitar a independência natural dos classificadores internos que compõem os comitês de aprendizagem da classe bagging. O modelo paralelo é combinado com uma técnica de mini-batching, a qual pode melhorar a localidade de acesso à memória dos comitês de aprendizagem. Speedups de 4X a 5X são alcançados onsistentemente com 8 núcleos de processamento, apresentando, inclusive, um Speedup superlinear de 12X em um caso específico. Demonstra-se que o mini-batching pode diminuir significativamente a distância de reuso e o número de falhas de cache. Fornece-se dados sobre a relação de compromisso da redução do tempo de execução com a perda no desempenho preditivo, perda que pode variar de menos de 1% a até 12%. Conclui-se que a perda de desempenho preditivo depende, principalmente, das características do conjunto de dados e do tamanho do mini-batch utilizado. Apresenta-se evidências de que o uso de mini-batches pequenos (por exemplo, até 50 exemplos) fornece um bom compromisso entre o tempo de execução e o desempenho preditivo. Demonstra-se que a eficiência energética pode ser melhorada em utilizando três níveis de carga de trabalho diferentes. Embora a maior redução no consumo de energia aconteça com o menor nível de carga de trabalho a contrapartida é um grande atraso no tempo de resposta, o que pode atrapalhar a ideia de processamento em tempo real. Nos níveis de cargas de trabalho mais altos, entretanto, o método proposto apresenta melhor desempenho tanto no consumo de energia quanto no atraso no tempo de resposta quando comparado à versão base. Avalia-se o método utilizando diversas plataformas de hardware, com um total de seis plataformas diferentes utilizadas entre todos os frameworks experimentais. Ao mesmo tempo, utiliza-se de até seis algoritmos diferentes e até cinco conjuntos de dados diferentes nos frameworks experimentais. Ao fornecer dados sobre a execução do método proposto em uma gama tão ampla de configurações, acredita-se que o método proposto é uma solução viável para melhorar o desempenho de comitês de aprendizagem da classe bagging para fluxos de dados. | por |
| dc.description.sponsorship | Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES) | por |
| dc.description.sponsorship | Fundação de Amparo à Pesquisa do Estado de São Paulo (FAPESP) | por |
| dc.description.sponsorshipId | Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - Brasil (CAPES) - Finance Code 001 | por |
| dc.description.sponsorshipId | Programa Institucional de Internacionalização CAPES-PrInt UFSCar (Contract 88887.373234/2019-00) | por |
| dc.description.sponsorshipId | Fundação de Amparo à Pesquisa do Estado de São Paulo (FAPESP - contract number 2018/22979-2) | por |
| dc.identifier.citation | CASSALES, Guilherme. Improving data locality of bagging ensembles for data streams through mini-batching. 2021. Tese (Doutorado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2021. Disponível em: https://repositorio.ufscar.br/handle/20.500.14289/15176. | * |
| dc.identifier.uri | https://repositorio.ufscar.br/handle/20.500.14289/15176 | |
| dc.language.iso | eng | por |
| dc.publisher | Universidade Federal de São Carlos | por |
| dc.publisher.address | Câmpus São Carlos | por |
| dc.publisher.initials | UFSCar | por |
| dc.publisher.program | Programa de Pós-Graduação em Ciência da Computação - PPGCC | por |
| dc.rights | Attribution-NonCommercial-NoDerivs 3.0 Brazil | * |
| dc.rights.uri | http://creativecommons.org/licenses/by-nc-nd/3.0/br/ | * |
| dc.subject | Aprendizagem de fluxo de dados | por |
| dc.subject | Paralelismo de tarefas multicore | por |
| dc.subject | Comitês de aprendizagem | por |
| dc.subject | Algoritmos de bagging | por |
| dc.subject | Múltiplas plataformas | por |
| dc.subject | Consumo de energia | por |
| dc.subject | Data stream learning | eng |
| dc.subject | Multicore task-parallelism | eng |
| dc.subject | Ensemble learners | eng |
| dc.subject | Bagging algorithms | eng |
| dc.subject | Multiple platforms | eng |
| dc.subject | Energy consumption | eng |
| dc.subject.cnpq | CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO | por |
| dc.title | Improving data locality of bagging ensembles for data streams through mini-batching | eng |
| dc.title.alternative | Melhorando a localidade de dados dos comitês classificadores do tipo bagging para fluxos contínuos de dados através da técnica de mini-batching | por |
| dc.type | Tese | por |
Arquivos
Pacote Original
1 - 2 de 2
Carregando...
- Nome:
- Tese_FA_Guilherme_Cassales.pdf
- Tamanho:
- 2.85 MB
- Formato:
- Adobe Portable Document Format
- Descrição:
- Tese com Folha de aprovação
Carregando...
- Nome:
- Carta-Tese-Guilherme.pdf
- Tamanho:
- 117.02 KB
- Formato:
- Adobe Portable Document Format
- Descrição:
- Carta orientador