Buscar

2020-tcc-imgomes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

UNIVERSIDADE FEDERAL DO CEARÁ
CAMPUS QUIXADÁ
CURSO DE GRADUAÇÃO EM ENGENHARIA DE SOFTWARE
ISAC MOURA GOMES
PREDIÇÃO DE VELOCIDADES UTILIZANDO DADOS DE SENSORES ATRAVÉS
DE TÉCNICAS DE APRENDIZADO DE MÁQUINA
QUIXADÁ
2020
ISAC MOURA GOMES
PREDIÇÃO DE VELOCIDADES UTILIZANDO DADOS DE SENSORES ATRAVÉS DE
TÉCNICAS DE APRENDIZADO DE MÁQUINA
Trabalho de Conclusão de Curso apresentado ao
Curso de Graduação em Engenharia de Software
do Campus Quixadá da Universidade Federal
do Ceará, como requisito parcial à obtenção do
grau de bacharel em Engenharia de Software.
Orientador: Prof. Dr. Regis Pires Maga-
lhães
QUIXADÁ
2020
Dados Internacionais de Catalogação na Publicação 
Universidade Federal do Ceará
Biblioteca Universitária
Gerada automaticamente pelo módulo Catalog, mediante os dados fornecidos pelo(a) autor(a)
G614p Gomes, Isac Moura.
 Predição de velocidades utilizando dados de sensores através de técnicas de aprendizado de máquina /
Isac Moura Gomes. – 2020.
 46 f. : il. color.
 Trabalho de Conclusão de Curso (graduação) – Universidade Federal do Ceará, Campus de Quixadá,
Curso de Engenharia de Software, Quixadá, 2020.
 Orientação: Prof. Dr. Regis Pires Magalhães.
 1. Aprendizado do computador. 2. Previsão. 3. Velocidade. 4. Trânsito. I. Título.
 CDD 005.1
ISAC MOURA GOMES
PREDIÇÃO DE VELOCIDADES UTILIZANDO DADOS DE SENSORES ATRAVÉS DE
TÉCNICAS DE APRENDIZADO DE MÁQUINA
Trabalho de Conclusão de Curso apresentado ao
Curso de Graduação em Engenharia de Software
do Campus Quixadá da Universidade Federal
do Ceará, como requisito parcial à obtenção do
grau de bacharel em Engenharia de Software.
Aprovada em: / / .
BANCA EXAMINADORA
Prof. Dr. Regis Pires Magalhães (Orientador)
Universidade Federal do Ceará (UFC)
Profa. Ma. Lívia Almada Cruz Rafael
Universidade Federal do Ceará (UFC)
Prof. Me. Victor Aguiar Evangelista de Farias
Universidade Federal do Ceará (UFC)
Em memória de minha tia, Creuza Medeiros de
Moura, e meu irmão, Marcos Anderson Medei-
ros de Moura. Suas ausências são sentidas.
AGRADECIMENTOS
Agradeço primeiramente ao Prof. Dr. Regis Pires Magalhães por me orientar em meu
Trabalho de Conclusão de Curso e por toda a paciência, compreensão e dicas. São ensinamentos
que levarei por toda a minha trajetória. Espero algum dia me tornar 1% da pessoa e profissional
que você é.
Agradecimentos especiais à minha tia (in memoriam) Creuza Medeiros de Moura
por todo o incentivo em persistir no meu sonho e por sempre ter se preocupado comigo.
Aos meus tios Moura Neto, Fátima Medeiros de Moura, Ivonaldo Medeiros e Ivan
Moura por todos os conselhos e incentivos durante a minha vida. Aos meus pais Francisco
Sergio Gomes da Silva e Iva Medeiros de Moura por terem me ensinado conhecimentos da vida
que hoje formam esta pessoa e por terem me ajudado durante toda a minha vida.
Aos meus irmãos Ester Moura Gomes, Israel Moura Gomes, Rafael Moura Gomes e
Gabriel Medeiros de Moura por todo o convívio durante anos e todo o suporte que me prestaram
enquanto estive longe de casa pleiteando meu diploma. São pequenas ações que possuem um
grande impacto, e sou muito grato.
Agradeço aos meus amigos de Instituto Atlântico: Ana Thaysa, Alberto Monteiro,
Nicolas Cidrão, Samuel Alves, Vitor Muniz, Thais Gouveia, Ivanda Gomes, Hareta Alves, Italo
Fernandes, Felipe Pinto, Igor Farias, Paulo Marcelo e Rebecca Dantas. Meus agradecimentos por
todo o apoio e incentivo durante esta trajetória e por todos os ensinamentos e bons momentos.
Aos meus amigos do curso de Engenharia de Software da Universidade Federal do
Ceará - Campus Quixadá: Isaac James Mangueira do Nascimento, Bruno de Carvalho Sobrinho,
Débora Ruth, Jonas Deyvid, Siqueira Neto, Jorge Saba, Daniel Garcês, Francisco Rosembergson,
Pedro Augusto, Matheus Rios, Clebson Dantas, Javel Queiroz, Igor Silva e Jonas Lopes.
Agradeço também aos meus amigos de outros cursos: Pedro Igor, Lucas Silva,
Ritiele Alves, Matheus Fernandes, Lucas Cruz, Kevin Coe
Aos meus grandes amigos de apartamento 404: Crislanio Macedo e Rodrigo Adamski
Parodes, que me acolheram em Fortaleza-CE. Ter convivido com vocês foi uma experiência de
vida engrandecedora.
À Profa. Dra. Ticiana Linhares Coelho da Silva pelo primeiro incentivo aos estudos
na área de Inteligência Artificial.
Agradeço a todos os professores por me proporcionar o conhecimento não apenas
racional, mas a manifestação do caráter e afetividade da educação no processo de formação
profissional, por tanto que se dedicaram a mim, não somente por terem me ensinado, mas por
terem me feito aprender.
Ao Doutorando em Engenharia Elétrica, Ednardo Moreira Rodrigues, e seu assistente,
Alan Batista de Oliveira, aluno de graduação em Engenharia Elétrica, pela adequação do template
utilizado neste trabalho para que o mesmo ficasse de acordo com as normas da biblioteca da
Universidade Federal do Ceará (UFC).
Por último mas não menos importante, meus agradecimentos a todas as iniciativas
que promovem a ciência aberta e o livre acesso ao conhecimento. Em uma era de desinformação
e negacionismo científico, cobrar caro pelo acesso à informação é um enorme retrocesso. Sem
os recursos de ciência aberta este trabalho não estaria completo.
“A História está repleta de pessoas que, como
resultado do medo, ou por ignorância, ou por
cobiça de poder, destruíram conhecimentos de
imensurável valor que, em verdade, pertenciam
a todos nós. Nós não devemos deixar isso acon-
tecer de novo.”
(Carl Sagan)
RESUMO
Um dos problemas crescentes em grandes centros urbanos se dá pela demora no deslocamento
de um ponto a outro da cidade devido a engarrafamentos, horários de pico, obras em vias etc. No
entanto, a alta disponibilidade atual de dados pode ajudar a criar soluções para este problema de
mobilidade urbana. Por conta disso, este trabalho propõe e avalia abordagens de Aprendizado de
Máquina com o objetivo de identificar a melhor técnica para predição de velocidades a partir de
dados obtidos por uma rede de sensores espalhados pela cidade de Fortaleza (Brasil), no decorrer
do ano de 2014. Para isso foram testadas diversas técnicas e algoritmos de Aprendizado de
Máquina com o intuito de identificar o algoritmo e seus hiperparâmetros que melhor conseguem
lidar com o problema proposto.
Palavras-chave: Aprendizado do computador. Previsão. Velocidade. Trânsito. XGBoost.
AutoML.
ABSTRACT
One of the growing problems in large urban centers is due to the delay in moving from one point
to another in the city, due to traffic jams, peak hours, road works, etc. However, the current
high availability of data can help to create solutions to this urban mobility problem. Because
of this, this work proposes and evaluates Machine Learning approaches in order to identify the
best technique for speed prediction from data obtained by a network of sensors spread over the
city of Fortaleza (Brazil), during the year of 2014. For this purpose, several Machine Learning
techniques and algorithms were tested, in order to identify the algorithm and its hyperparameters
that best deal with the proposed problem.
Keywords: Computer learning. Forecast. Velocity. Traffic. XGBoost. AutoML.
LISTA DE FIGURAS
Figura 1 – Hierarquia do Aprendizado de Máquina. . . . . . . . . . . . . . . . . . . . 21
Figura 2 – Pipeline de execução de experimentos em Aprendizado de Máquina . . . . 24
Figura 3 – Fluxo de execução utilizando AutoML . . . . . . . . . . . . . . . . . . . . 25
Figura 4 – Visão geral dos procedimentos metodológicos. . . . . . . . . . . . . . . . . 30
Figura 5 – Feature importance do melhor modelo de XGBoost. . . . . . . . . . . . . . 40
Figura 6 – Feature importance do melhor modelo de XGBoost para o dataset agregado
de agosto e setembro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
LISTA DE TABELAS
Tabela1 – Estatísticas dos dados do mês de Janeiro de 2014. . . . . . . . . . . . . . . 35
Tabela 2 – Comparação entre os meses de janeiro, agosto + setembro e outubro. . . . . 36
Tabela 3 – Hiperparâmetros escolhidos para Random Search. . . . . . . . . . . . . . . 38
Tabela 4 – Listagem dos melhores hiperparâmetros candidatos após o treinamento com
Randomized Search. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Tabela 5 – Hiperparâmetros utilizados para modelos de XGBoost. . . . . . . . . . . . . 39
Tabela 6 – Resultados obtidos na execução dos treinos testes com o dataset de janeiro. 42
Tabela 7 – Resultados obtidos na execução dos testes para o dataset de outubro após
treinamento com datasets de agosto e setembro. . . . . . . . . . . . . . . . 43
LISTA DE QUADROS
Quadro 1 – Comparação entre os trabalhos relacionados e o proposto . . . . . . . . . . 29
Quadro 2 – Variação dos hiperparâmetros para o modelo líder de XGBoost gerado pelo
AutoML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
LISTA DE ABREVIATURAS E SIGLAS
IBGE Instituto Brasileiro de Geografia e Estatística
ITS Intelligent Transportation System
GPS Sistemas de Posicionamento Global
GIS Sistemas de Informações Geográficas
V2V Veículo-a-Veículo
V2I Veículo-a-Infraestrutura
AM Aprendizado de Máquina
MLR Multivariable Linear Regression
GBM Gradient Boosting Machine
GBRT Gradient Boosted Regression Tree
RMSE Root Mean Square Error
SARIMA Seasonal Autoregressive Integrated Moving Average
SVR Support Vector Regressors
LSTM Long Short Term Memory
AMC Autarquia Municipal de Trânsito e Cidadania
DRF Distributed Random Forest
GLM Generalized Linear Model
XRT Extremely Randomized Trees
CSV Comma-separated values
RNA Rede Neural Artificial
GPU Graphics Processing Unit
SUMÁRIO
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2 FUNDAMENTAÇÃO TEÓRICA . . . . . . . . . . . . . . . . . . . . . . 19
2.1 Definição do problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2 Aprendizado de Máquina . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2.1 Regressão Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2.2 Random Forest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.3 Gradient Boosting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.3.1 XGBoost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.4 Random Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.5 AutoML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.3 Métricas de avaliação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.3.1 Root Mean Square Error (RMSE) . . . . . . . . . . . . . . . . . . . . . . 24
2.4 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3 TRABALHOS RELACIONADOS . . . . . . . . . . . . . . . . . . . . . 27
3.1 Short-term Traffic Flow Forecasting: An Experimental Comparison Of
Time-series Analysis And Supervised Learning . . . . . . . . . . . . . . 27
3.2 Deep Learning: A Generic Approach For Extreme Condition Traffic
Forecasting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3 Long Short-term Memory Neural Network For Traffic Speed Prediction
Using Remote Microwave Sensor Data . . . . . . . . . . . . . . . . . . . 28
3.4 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4 METODOLOGIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.1 Coleta dos dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2 Escolha dos datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.3 Pré-processamento dos dados . . . . . . . . . . . . . . . . . . . . . . . . 31
4.4 Engenharia de features . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.5 Implementação dos modelos preditivos . . . . . . . . . . . . . . . . . . . 31
4.6 Treinamento dos modelos . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.7 Avaliação dos modelos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.8 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5 EXPERIMENTOS E RESULTADOS . . . . . . . . . . . . . . . . . . . . 34
5.1 Coleta dos dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.2 Escolha dos datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.3 Pré-processamento dos dados . . . . . . . . . . . . . . . . . . . . . . . . 36
5.4 Engenharia de features . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.5 Implementação dos modelos preditivos . . . . . . . . . . . . . . . . . . . 37
5.6 Treinamento dos modelos . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.7 Avaliação dos modelos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6 CONCLUSÕES E TRABALHOS FUTUROS . . . . . . . . . . . . . . . 45
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
16
1 INTRODUÇÃO
O crescimento das cidades, principalmente dos centros urbanos, alinhado ao grande
número de automóveis que circulam diariamente de um ponto a outro destas cidades tornou
a questão dos engarrafamentos uma problemática a ser discutida. Como pontuado por Ma et
al. (2015b), o congestionamento do tráfego custa bilhões de dólares por ano devido à perda de
tempo, combustível desperdiçado, poluição excessiva e redução de produtividade e, considerando
que 80% da população brasileira vive em cidades, segundo dados de 2010 do Instituto Brasileiro
de Geografia e Estatística (IBGE)1, o ritmo frequente de congestionamentos tende a aumentar.
Sobre esta problemática algoritmos de predição de tráfego foram idealizados e cons-
truídos com o objetivo de melhorar a mobilidade urbana e o modo como utilizamos os meios
de transporte disponíveis para a realização do percurso desejado. Estas abordagens consideram
diversas necessidades, tais como: previsões de fluxo de tráfego, velocidade, tempo de viagem
e tamanho da fila; características que são necessárias para aplicativos específicos de gerenci-
amento de transporte (SMITH et al., 2002). As estratégias de controle para engarrafamento
frequentemente envolvem a tecnologia de previsão de tráfego de curto prazo para prever o
congestionamento potencial de modo a induzir as pessoas a fazerem rotas de viagem apropriadas
e aliviar congestionamentos de tráfego. Portanto, a previsão precisa de tráfego de curto prazo é
vital para o controle de tráfego, tornando-se uma parte indispensável do Sistema Inteligente de
Transporte2 (ZHAO et al., 2017).
Recentemente, o rápido desenvolvimento e implantação de tecnologias em Sistemas
Inteligentes de Transporte disponibilizou grandes quantidades de informações em tempo real
e históricas de tráfego. O ITS coleta as informações de tráfego com base nos Sistemas de
Posicionamento Global (GPS), Sistemas de Informações Geográficas (GIS), Veículo-a-Veículo
(V2V) e Veículo-a-Infraestrutura (V2I) e pode dar suporte ao motorista fornecendo informação
útil de predição de tráfego usando a informação combinada (PARK et al., 2011).
No entanto, as técnicas e abordagens aplicadas com a análise dos dados dos ITS
não levam em consideração a ocorrência de mudanças inesperadas no fluxo, como acidentes,
bloqueio de uma rede viária, mudanças no tráfego, mudanças estruturais entre outras. Nos casos
em que essas mudanças acontecem, os sistemas de gerenciamento de tráfego devem otimizar as
estratégias de gerenciamento e consultoria (VLAHOGIANNI et al., 2014)
1 http://www.brasil.gov.br/governo/2010/12/ibge-pais-migrou-para-o-interior-e-urbanizacao-ja-atinge-80-da-
populacao
2 Intelligent Transportation System (ITS)
17
Diante disto, em Magalhaes (2018) pensou-se em técnicas de análise de dados
de sensores de trânsito da cidade de Fortaleza-CE com os dados coletadosdurante o ano de
2014, aplicando-se abordagens de Aprendizado de Máquina para a realização da predição de
velocidades futuras em uma rede de sensores. No trabalho o autor propõe três abordagens para a
resolução do problema: uma abordagem local em que cada sensor é tratado separadamente do
restante da rede de sensores para treinar uma função preditiva específica, sendo necessário um
modelo preditivo para cada sensor. Esta abordagem sofre do problema de cold start (falta de
informação prévia sobre novos itens) e devido à dinamicidade dos sensores (adição e remoção
dos mesmos), este tipo de abordagem dificilmente é aplicado neste tipo de problema. Outra
abordagem é a abordagem global, que diferentemente do método local, considera toda a rede de
sensores e um único modelo de predição é criado para atender a esta rede. Seu benefício se dá
por conta das reduções em complexidade e custos. A última abordagem utilizada é a abordagem
baseada em cluster, onde sensores são agrupados homogeneamente em clusters e um modelo
é construído para cada cluster. Este método se assemelha em comportamento ao método local
quando muitos clusters são utilizados e se assemelha ao método global quando poucos clusters
são utilizados.
Este trabalho está interessado na problemática de predição de velocidades em deter-
minadas vias da cidade de Fortaleza utilizando dados de sensores instalados nas ruas da cidade,
podendo ser útil para os usuários de meios de transporte que os utilizam para se locomover pela
cidade. Deste modo, avalia-se a solução proposta em Magalhaes (2018), aplicando-se outros
algoritmos de Aprendizado de Máquina e incluindo arquiteturas e técnicas de Aprendizado de
Máquina Automatizado, visando alcançar melhores resultados de predição para as abordagens
escolhidas na análise dos dados dos sensores.
Para a realização deste projeto analisamos aproximadamente 1,3 bilhões de registros
do dataset original de sensores de tráfego de Fortaleza e selecionamos uma parte deste dados
(aproximadamente 5,6 milhões de registros) para o treinamento e avaliação de modelos preditivos.
Os registros foram coletados de 302 sensores de tráfego diferentes espalhados pela cidade. Com
estes dados serão construídos modelos a fim de treinar com os dados e realizar as devidas
predições. Ao final os resultados dos modelos serão analisados, comparando-os entre si para
visualizar os modelos e seus hiperparâmetros que obtiveram melhores desempenhos. Com isto,
as contribuições deste trabalho são:
– Construir um modelo de aprendizado de máquina para a predição de velocidades médias
18
em vias. Deste modo avalia-se a implementação de um modelo global para a malha de
sensores.
– Implementar modelos de predição utilizando a técnica de AutoML visando obter melhores
resultados de predição para as velocidades futuras.
O restante deste trabalho está estruturado da seguinte forma: no Capítulo 2 a funda-
mentação teórica para este trabalho é abordada, no Capítulo 3 realiza-se uma explanação dos
trabalhos relacionados a este trabalho que tratam sobre o assunto de predição de tráfego, no
Capítulo 4 explicita-se os procedimentos metodológicos utilizados neste trabalho, no Capítulo
5 os resultados obtidos a partir dos experimentos realizados são apresentados, e no Capítulo 6
são apresentadas as conclusões apoiadas no desenvolvimento deste trabalho assim como uma
recapitulação sintetizada dos resultados obtidos e sugestões de trabalhos futuros a partir deste
trabalho.
19
2 FUNDAMENTAÇÃO TEÓRICA
Neste capítulo serão introduzidos os conceitos, notações e definições importantes
presentes neste trabalho. Além disso, serão abordadas as métricas utilizadas para a avaliação do
desempenho do modelo proposto.
2.1 Definição do problema
O problema abordado neste trabalho trata da questão de predição de velocidades
médias de vias da cidade de Fortaleza que são monitoradas por sensores. Estes sensores
capturam a velocidade em km/h com a qual um veículo passou por uma determinada rua em um
determinado instante de tempo.
Deste modo, neste trabalho aborda-se grandes redes de sensores de tráfego e estamos
interessados em analisar técnicas de previsão de velocidade que consigam predizer corretamente
a velocidade média em uma via. Para tais problemas sugerimos a implementação de um
modelo preditivo global para um horizonte de predições de 6 horas. Esta abordagem é treinada
considerando os dados de todos os sensores, recebendo como entrada informações de velocidades
(limite de velocidade, velocidades mínima e máxima, número de registros, número de ruas,
médias e desvios padrões dos slots de 5, 30 minutos e 1 e 2 semanas no futuro), dia da semana, se
é um dia útil ou não, e ao final gerando um único modelo preditivo para toda a rede de sensores
capaz de predizer a velocidade média em um horizonte de predição de 6 horas no futuro. Este
trabalho é útil para serviços de planejamento de rotas, frotas de veículos para entrega etc.
2.2 Aprendizado de Máquina
Aprendizado de Máquina (AM) é uma área de Inteligência Artificial cujo objetivo é
o desenvolvimento de técnicas computacionais sobre o aprendizado bem como a construção de
sistemas capazes de adquirir conhecimento de forma automática (MONARD; BARANAUSKAS,
2003). A área de Aprendizado de Máquina estuda métodos computacionais para adquirir novos
conhecimentos, novas habilidades e novos meios de organizar o conhecimento já existente
(MITCHELL et al., 1990).
Os modelos de Aprendizado de Máquina podem ser classificados em várias aborda-
gens. Há, por exemplo, o aprendizado por hábito, por instrução, por dedução, por analogia e
por indução; e dentre estes o aprendizado indutivo é um dos mais úteis por permitir a obtenção
20
de novos conhecimentos a partir de exemplos, ou casos, particulares previamente observados
(BATISTA et al., 2003). Quanto ao aprendizado indutivo, existem dois tipos principais:
– Aprendizado Supervisionado: forma de aprendizado onde é fornecido ao algoritmo de
aprendizado um conjunto de exemplos de treinamento para os quais o rótulo da classe
associada é conhecido (MONARD; BARANAUSKAS, 2003). Quanto a este tipo de
aprendizado, há dois tipos principais de problemas:
– Classificação: este tipo de problema tem como objetivo a construção de um classi-
ficador que possa determinar corretamente a classe de novos exemplos ainda não
rotulados para rótulos de classe discretos (MONARD; BARANAUSKAS, 2003).
– Regressão: este tipo de problema tem como objetivo determinar valores quantitativos,
tratando-se de valores contínuos (FRIEDMAN et al., 2001).
– Aprendizado Não Supervisionado: forma de aprendizado que nos permite abordar pro-
blemas com pouca ou nenhuma ideia dos resultados esperados. Desta forma o algoritmo
deve ser capaz de agrupar os dados de forma que os dados mais semelhantes fiquem mais
próximos através de clusters.
Diante dos conceitos apresentados, o presente trabalho se enquadra nos problemas
de regressão com a tratativa de prever a velocidade média de uma via para dado sensor para um
horizonte de predições de 6 horas. A Figura 1 demonstra as técnicas a serem utilizadas neste
trabalho destacadas.
Para este trabalho destaca-se as utilizações dos algoritmos de Regressão Linear e
XGBoost, além do uso da técnica de AutoML.
2.2.1 Regressão Linear
Regressão linear é uma abordagem tradicional e bastante empregada em problemas
de séries históricas. O objetivo da regressão linear simples (uni-variada) é modelar a relação
entre uma única feature (variável explicativa x) e uma resposta contínua com valor (variável de
destino y) (RASCHKA, 2015).
Para este trabalho utiliza-se Multivariable Linear Regression (MLR)1(FREEDMAN,
2009), dado que o dataset utilizado neste trabalho é composto por 25 features e 1 rótulo para a
predição de velocidades e não apenas 1 feature como no caso da regressão linear uni-variada. A
1 Regressão Linear Multivariável
21
Figura 1 – Hierarquia do Aprendizado de Máquina.
Fonte: Adaptadode Monard e Baranauskas (2003).
Equação 2.1 demonstra uma regressão linear múltipla:
Y =W0 +W1X1 + ...+WmXm (2.1)
onde Y é o label, W0 é o interceptador, Xi e Wi correspondem à i-ésima variável e
seu coeficiente, respectivamente.
2.2.2 Random Forest
Random Forest (BREIMAN, 2001) é um algoritmo de aprendizado de máquina
da família de métodos ensemble, sendo utilizado para tarefas de classificação e regressão.
Métodos ensemble são caracterizados por combinarem diferentes modelos para produzirem um
melhor resultado, assim o resultado final é composto pelo resultado do conjunto de modelos
intermediários. Este método de combinação de modelos para obtenção de melhores resultados
é denominado de bagging. Deste modo, em Random Forests são combinadas várias Árvores
de Decisão —algoritmo em que pontos de decisão são construídos, com cada decisão levando
a um caminho diferente de um determinado fluxo —obtidas a partir de amostras do dataset
e realizadas predições utilizando a média dos valores obtidos (no caso de uma regressão) ou
utilizando o valor que mais aparece (em caso de classificação).
22
2.2.3 Gradient Boosting
Gradient Boosting Machine (GBM) ou Gradient Boosted Regression Tree (GBRT)
(FRIEDMAN, 2001; FRIEDMAN, 2002) é uma técnica de aprendizado de máquina bastante
popular para a criação de modelos para problemas de classificação e de regressão, incluída no
grupo denominado de métodos ensemble. O método de aprendizado do gradient boosting é
dado por um ajuste consecutivo a novos modelos com o objetivo de fornecer uma estimativa
mais precisa do label. A ideia principal por trás desse algoritmo é construir os novos aprendizes
básicos para serem correlacionados ao máximo com o gradiente negativo da função de perda
associado a todo o conjunto (NATEKIN; KNOLL, 2013).
Neste trabalho utilizamos o framework de gradient boosting chamado Extreme
Gradient Boosting (XGBooost).
2.2.3.1 XGBoost
O Extreme Gradient Boosting (XGBooost) é uma implementação eficiente e esca-
lonável do framework de gradient boosting (CHEN et al., 2015; CHEN; GUESTRIN, 2016).
O XGBoost pode ser utilizado para problemas de regressão e classificação e é bastante flexível
por conta do grande número de hiperparâmetros aperfeiçoáveis que possui, proporcionando um
ajuste mais adequado ao problema que se quer tratar.
Suas diferenças para as demais soluções, apontadas em Chen et al. (2015), são:
1. Velocidade: o XGBoost suporta paralelismo em sistemas operacionais Windows
e Linux, sendo geralmente 10 vezes mais rápido do que GBM.
2. Tipo de entrada: o XGBoost provê suporte a uma gama de tipos de dados de
entrada:
– Matrizes densas.
– Matrizes esparsas.
– Arquivos de dados locais.
– DMatrix: uma estrutura de dados interna utilizada pelo XGBoost, otimizada
para eficiência de memória e velocidade de treinamento.
3. Esparsidade: o XGBoost provê suporte a entradas esparsas para o reforço de
árvore e reforço linear e é otimizado para entrada esparsa.
4. Personalização: o XGBoost suporta funções de objetivo e avaliação personaliza-
23
das.
5. Desempenho: o XGBoost tem melhor desempenho em vários conjuntos de dados
diferentes.
Por conta destas diferenças o XGBoost é um algoritmo candidato a obter bons
resultados com o problema proposta otimizando o tempo para treinamento utilizado.
2.2.4 Random Search
A técnica de Random Search2 é uma abordagem de otimização de hiperparâmetros
capaz de selecionar combinações aleatórias para treinar o modelo e pontuar dado um conjunto de
valores de hiperparâmetros. Em Bergstra e Bengio (2012) o método de random search é definido,
tendo este método todas as vantagens práticas das soluções alternativas (simplicidade conceitual,
facilidade de implementação, paralelismo trivial) e troca uma pequena redução na eficiência em
espaços de baixa dimensão por uma grande melhoria na eficiência em espaços de busca em alta
dimensão.
O número de iterações da pesquisa aleatória é definido pelo usuário, assim como a
grade de parâmetros, modelo a ser testado com a pesquisa e dados de treino e testes.
2.2.5 AutoML
Projetar e ajustar sistemas de Aprendizado de Máquina é uma tarefa que consome
muito tempo e trabalho e exige um amplo conhecimento. O campo do Aprendizado de Máquina
Automatizado (ou AutoML) está focado em automatizar essa tarefa (GIJSBERS et al., 2019).
O AutoML tem como objetivo reduzir a demanda por cientistas de dados, permitindo que os
especialistas do domínio criem aplicativos de Aprendizado de Máquina automaticamente sem
amplo conhecimento de estatística e Aprendizado de Máquina (ZÖLLER; HUBER, 2019).
Deste modo, as tarefas de seleção de algoritmos, geração de features, ajuste de hiperparâmetros,
treinamento e avaliação de modelos de Aprendizado de Máquina são automatizadas. Esta
automatização de tarefas anteriormente repetitivas providenciada pela ferramenta permite uma
concentração maior em outras atividades como o pré-processamento de dados, engenharia
de features e a implantação do modelo. Há uma variedade de ferramentas disponíveis para
Aprendizado de Máquina Automatizado, e dentre as ferramentas citadas em Gijsbers et al. (2019)
há o H2O AutoML, tecnologia utilizada neste trabalho.
2 Pesquisa Aleatória
24
O fluxo de trabalho com AutoML inclui treinamento automático e ajuste dos modelos
dentro de um limite de tempo especificado. Deste modo, as ações manuais necessárias são as de
apontar para seu conjunto de dados, identificar a coluna de resposta (label) e, opcionalmente,
determinar um limite de tempo ou número total de modelos treinados. A Figura 2 exemplifica
um pipeline geral de execução de experimentos com Aprendizado de Máquina, constituindo
a limpeza dos dados, o processo de engenharia de features e a modelagem. Estes passos são
melhores descritos no Capítulo 4. Enquanto isso a Figura 3 demonstra o fluxo de execução
utilizando AutoML, com os passos de pré-processamento dos dados e engenharia de features
sendo realizados fora do escopo do AutoML e os passos de seleção de modelos, treinamento,
otimização de hiperparâmetros, avaliação de desempenho dos modelos construídos, listagem dos
modelos e armazenamento dos mesmos fazendo parte do escopo do AutoML.
Figura 2 – Pipeline de execução de experimentos em Aprendizado de Máquina
Fonte: Adaptado de Zöller e Huber (2019)
2.3 Métricas de avaliação
Nesta seção serão apresentadas as métricas utilizadas para avaliar o desempenho
do modelo a ser construído dada a problemática trabalhada. Estas métricas servirão como base
comparativa de desempenho entre os modelos escolhidos.
2.3.1 Root Mean Square Error (RMSE)
A Root Mean Square Error (RMSE)3 é uma métrica frequentemente utilizada para a
diferença entre os valores preditos por um modelo e seus valores reais observados. Esta métrica
retorna a raiz da média das diferenças entre os valores preditos e valores reais ao quadrado e tem
como benefício a penalização dos erros quando estes forem em valores que se distanciam muito
da média.
3 Raiz do Erro Quadrático Médio
25
Figura 3 – Fluxo de execução utilizando AutoML
Fonte: Próprio autor.
A Equação 2.2 demonstra a fórmula utilizada para realizar o cálculo da RMSE:
RMSE =
√
1
N
N
∑
i=1
(yi − ŷi)2 (2.2)
Onde ŷi trata-se do valor predito pelo modelo para o i-ésimo instante de tempo
enquanto yi trata-se do valor real e N do número de observações.
Nesta métrica quanto menor o seu valor de erro melhor a performance do modelo.
26
2.4 Conclusão
Neste capítulo foram apresentados os conceitos principais requeridos para o entendi-
mento deste trabalho. Diante disto, no próximo capítulo são apresentados trabalhos relacionados
a este e que utilizam de conceitos discutidos neste capítulo.
27
3 TRABALHOS RELACIONADOS
Foram identificados estudos prévios a este trabalho que o auxiliam no seu desenvol-
vimento e análise das similaridades e diferenças em relação ao trabalho proposto. Estes estudos
são apresentados neste capítulo, assim como suas principais contribuições,relações e diferenças
com o presente trabalho.
3.1 Short-term Traffic Flow Forecasting: An Experimental Comparison Of Time-series
Analysis And Supervised Learning
Em Lippi et al. (2013) foi realizada uma comparação das análises de séries temporais
e aprendizagem supervisionada utilizadas na problemática de previsão de fluxo de tráfego de
curto prazo. Os autores realizaram uma revisão das abordagens mais comuns na literatura para
este tipo de problema e ao final propuseram dois novos modelos para a abordagem Seasonal
Autoregressive Integrated Moving Average (SARIMA), os Support Vector Regressors (SVR)
empregando um kernel sazonal para medir a similaridade entre exemplos de séries temporais.
No trabalho, empregando as abordagens lineares construídas, os autores concluíram que a
sazonalidade é a feature chave para o alcance de uma grande acurácia.
3.2 Deep Learning: A Generic Approach For Extreme Condition Traffic Forecasting
Em Yu et al. (2017) os autores propõem uma abordagem utilizando Deep Learning1
para o problema de predição de tráfego. Os autores constroem uma rede neural baseada na
arquitetura de Long Short Term Memory (LSTM) para predizer o tráfego nos horários de pico. Os
autores também construíram uma arquitetura melhorada para a predição de acidentes utilizando
um modelo de Mixture Deep LSTM, modelando de maneira conjunta o tráfego normal e os
padrões de acidentes. Os modelos conseguiram um desempenho significativo em comparação
com outras arquiteturas.
1 Aprendizado Profundo
28
3.3 Long Short-term Memory Neural Network For Traffic Speed Prediction Using Re-
mote Microwave Sensor Data
Em Ma et al. (2015a) os autores propõem em sua obra uma arquitetura de LSTM
visando capturar a dinamicidade do tráfego da cidade de Beijing, na China. Para a resolução do
problema de predição de velocidades os autores implementam uma arquitetura de Memória de
Longo Prazo, que é capaz de lidar com séries temporais de maneira efetiva. Ao final do trabalho
os autores concluem que esta abordagem conseguiu superar as outras abordagens propostas na
literatura para a resolução da mesma problemática, sendo uma solução viável de acordo com as
métricas estabelecidas.
3.4 Conclusão
Neste capítulo foram apresentados os trabalhos de Lippi et al. (2013), Yu et al. (2017)
e Ma et al. (2015a). O Quadro 1 resume as semelhanças e diferenças observadas nos trabalhos
citados nesta seção com o trabalho atual.
Os trabalhos de Lippi et al. (2013), Yu et al. (2017) e Ma et al. (2015a) trabalham
com o domínio de predição de velocidades para instantes de tempo no futuro, assim como o
trabalho proposto. Dos trabalhos apresentados, apenas a obra de Lippi et al. (2013) trabalha com
uma abordagem diferente de Aprendizado Profundo, apresentando um modelo linear (SARIMA)
para a predição das velocidades futuras com dados de sensores da Califórnia. Das features mais
relevantes nos trabalhos citados destacam-se as referentes ao domínio temporal e volume.
29
Quadro 1 – Comparação entre os trabalhos relacionados e o proposto
Lippi et al. (2013) Yu et al. (2017) Ma et al. (2015a) Trabalho Pro-
posto
Domínio do Pro-
blema
Predição de fluxo
de tráfego 15 mi-
nutos no futuro
dado um instante
de tempo
Predição das veloci-
dades de tráfego em
horários de pico e
após acidentes
Predição de velo-
cidade de viagens
2 minutos no fu-
turo baseando-se no
fluxo do mesmo pe-
ríodo no dia ante-
rior
Predição de veloci-
dades de tráfego em
6 horas no futuro
para sensores dinâ-
micos
Solução Proposta Dois novos mode-
los para a aborda-
gem SARIMA
LSTM e Mixture
Deep LSTM
Uma abordagem
utilizando LSTM
Abordagens utili-
zando Aprendizado
de Máquina e
AutoML
Tipo de Modelo. Linear Não-linear Não-linear Não-linear
Dataset. Dados de sensores e
detectores ao redor
da Califórnia de Ja-
neiro a Setembro de
2009
Dados da rede rodo-
viária do condado
de Los Angeles
Dados de sensores
remotos da cidade
de Beijing, coleta-
dos durante todo o
mês de Junho de
2013
Dados de sensores
da cidade de Forta-
leza, coletados de
Janeiro a Dezembro
de 2014
Features Mais Utili-
zadas.
Sazonalidade Velocidade, ins-
tante de tempo e
dia da semana
Volume, ocupação
e velocidade
Features mais im-
portantes estão as-
sociadas a informa-
ções de velocidade
média
Fonte: Elaborado pelo autor.
30
4 METODOLOGIA
Neste capítulo são apresentados os passos necessários para a elaboração deste traba-
lho. A seguir, na Figura 4, é mostrada uma visão geral da metodologia adotada nesta obra.
Figura 4 – Visão geral dos procedimentos metodológicos.
Fonte: Próprio autor.
4.1 Coleta dos dados
A coleta de dados trata-se de um processo que visa reunir os dados para uso secun-
dário. Neste primeiro procedimento são coletados os dados necessários para treinar e testar o
modelo preditivo a ser construído. Diante disto, é realizada a coleta dos datasets disponibilizados
em Magalhaes (2018)1. O dataset original foi disponibilizado pela Autarquia Municipal de
Trânsito e Cidadania (AMC), órgão responsável pela supervisão e controle da rede rodoviária da
cidade de Fortaleza, Brasil, contendo registros efetuados durante o ano de 2014.
O objetivo desta etapa está em fornecer o material para que se possa mapear e
processar os dados com o intuito de realizar inferências a partir das coletas realizadas.
4.2 Escolha dos datasets
Com os conjuntos de dados coletados faz-se necessário analisar e escolher datasets
de meses com vasto número de registros, de modo que os modelos tenham insumos suficientes
para realizar corretamente suas predições. Deste modo, analisa-se o total de registros de cada
amostra coletada, sendo escolhidas as amostras do dataset com vasto número de observações
com o intuito de serem utilizadas para os processos de treino, validação e teste.
A análise e escolha eficaz das amostras é uma tarefa importante para evitar que o
modelo apresente comportamentos de overfitting (quando o modelo se adapta muito bem ao
1 https://zenodo.org/record/3469741/
31
conjunto de dados de treinamento, mas se mostra ineficaz para generalizar com novos dados).
4.3 Pré-processamento dos dados
Esta etapa consiste em preparar, organizar e estruturar o dataset. Em García et al.
(2015) o autor afirma que a coleta de dados é geralmente um processo vagamente controlado,
resultando em valores fora do intervalo, por exemplo, combinações de dados impossíveis, valores
ausentes, etc.
Em Magalhaes (2018) é disponibilizado o dataset pré-processado com as operações
de limpeza de dados, agregação de dados e criação de novos atributos realizadas. Neste trabalho
são realizadas as operações de agregação dos dados (junção de amostras), remoção de features e
ajuste do rótulo (label). Com os dados resultantes destas operações, o dataset é então submetido
para a etapa de engenharia de features.
4.4 Engenharia de features
Engenharia de features é o ato de extrair features de dados brutos e transformá-los
em formatos adequados para o modelo de aprendizado de máquina (ZHENG; CASARI, 2018).
Este passo consiste em adicionar ou remover features em um conjunto de dados com o objetivo
de normalizar os dados para obtenção de um melhor desempenho do modelo preditivo.
Nesta etapa em Magalhaes (2018) são realizadas operações de engenharia de features
nos dados originais de modo a normalizar os valores contidos no conjunto de dados.
4.5 Implementação dos modelos preditivos
Para a implementação dos modelos de predição são executados os algoritmos de
Regressão Linear, Random Forest, Gradient Boosting e XGBoost para a realização de treinos e
testes com os dados resultantes das operações realizadas nas seções anteriores.
Neste trabalho utiliza-se o algoritmo de Regressão Linear como um benchmark em
comparação com outros algoritmos de modo a avaliar se os resultados obtidos com cada modelo
justifique a utiilização de técnicas mais avançadas de Aprendizado de Máquina para este tipo de
problema.
Além disso, para este trabalho é utilizada a técnica de AutoMLpara implementar
automaticamente modelos preditivos de Distributed Random Forest (DRF), XGBoost, Deep
32
Learning e Generalized Linear Model (GLM).
4.6 Treinamento dos modelos
Com os algoritmos escolhidos na Seção 4.5 realizam-se treinamentos com o intuito
de averiguar o algoritmo que melhor se adapta aos dados. Posteriormente aplica-se a técnica
de Random Search somente para o algoritmo de XGBoost com o intuito de avaliar os melhores
hiperparâmetros candidatos para o modelo e então treinar o modelo de XGBoost com todos
os hiperparâmetros elencados, começando do melhor colocado até o pior colocado. Após a
finalização destes treinamentos, avalia-se então a importância das features.
Após os treinamentos realizados no passo anterior, os dados de treino são submetidos
para treinamentos utilizando a ferramenta H2O AutoML. Para a linguagem de programação
Python, a ferramenta H2O AutoML inclui algoritmos como Random Forest padrão, Extremely
Randomized Trees (XRT), GBM, XGBoost, redes neurais artificiais de Aprendizado Profundo,
GLM, além de dar suporte também a modelos conhecidos como Stacked Ensemble. O Stacked
Ensemble é um algoritmo de aprendizado de máquina supervisionado que encontra, através de
um processo denominado de stacking, a combinação ideal de um conjunto de algoritmos de
predição. Os Stacked Ensemble são treinados no final do processo, gerando como resultado dois
modelos: um conjunto contendo todos os modelos (otimizado para o desempenho do modelo)
e o segundo conjunto contendo somente o modelo de melhor desempenho de cada classe ou
família de algoritmos (otimizado para uso em produção). Os treinamentos são realizados para
cada família de algoritmos. Esta etapa ainda inclui a listagem dos hiperparâmetros não padrões
de cada modelo gerado pelo AutoML.
4.7 Avaliação dos modelos
Após a etapa de treinamentos, neste passo os modelos implementados são avaliados
considerando o conjunto de teste, utilizando-se de dados nunca antes vistos pelo modelo para
avaliar sua capacidade de generalização diante de novos dados.
Esta etapa visa a coleta da métrica apresentada na Seção 2.3.1. Esta métrica serve
como base para avaliar o desempenho de cada modelo preditivo. A partir da comparação do
desempenho de cada modelo torna-se possível determinar qual modelo preditivo melhor consegue
prever as velocidades médias.
33
Os resultados obtidos neste passo são tabulados de modo a propôr uma melhor
visualização da eficácia de cada modelo, considerando a técnica e hiperparâmetros utilizados.
4.8 Conclusão
Neste capítulo foram apresentadas as etapas requeridas para o desenvolvimento deste
trabalho. Diante disto, no próximo capítulo são apresentados os experimentos realizados e os
resultados obtidos a partir da execução dos procedimentos metodológicos apresentados neste
capítulo.
34
5 EXPERIMENTOS E RESULTADOS
Neste capítulo são apresentados os experimentos realizados assim como os resultados
obtidos na execução destes experimentos.
5.1 Coleta dos dados
Os conjuntos de dados foram disponibilizados em formato Comma-separated values
(CSV) e divididos num total de 12 arquivos com cada arquivo correspondendo aos registros de um
determinado mês do ano de 2014. Cada arquivo possui um total de 26 colunas (sendo 1 coluna o
label) e os datasets somados possuem aproximadamente 1,3 bilhões de registros, consistindo
de informações de sensores de tráfego espalhados pela cidade de Fortaleza e coletados por uma
malha de 302 sensores em diferentes vias da cidade. O dataset original foi disponibilizado pela
AMC, órgão responsável pela supervisão e controle da rede rodoviária da cidade de Fortaleza,
Brasil. A Tabela 1 apresenta as estatísticas para os registros coletados no mês de Janeiro de 2014.
Os registros são compostos por 26 colunas, sendo boa parte destas grupos de features
temporais. Assim, as features gerais do conjunto de dados são descritas abaixo:
(i) day_of_week: representando o dia da semana em que o sensor capturou a velocidade do
veículo. 0 corresponde à segunda-feira e 6 ao dia de domingo.
(ii) slot_of_day: representando o valor compreendido entre 0 a 287 devido à discretização do
tempo em intervalos de tempo de 5 minutos.
(iii) lane: indicando o número de ruas monitoradas pelo sensor.
(iv) size: representando o total de registros capturados pelo sensor no intervalo de tempo de 5
minutos.
(v) min: indicando a velocidade mínima registrada pelo sensor no intervalo de tempo de 5
minutos.
(vi) max: indicando a velocidade máxima registrada pelo sensor no intervalo de tempo de 5
minutos.
(vii) avg: indicando a velocidade média dos veículos que passam pelo sensor dentro do intervalo
de tempo de 5 minutos.
(viii) std: indicando o desvio padrão da velocidade dos veículos que passam pelo sensor dentro
do intervalo de tempo de 5 minutos.
(ix) working_day: representando se o dia se trata de um dia de trabalho ou não. Neste caso o
35
Tabela 1 – Estatísticas dos dados do mês de Janeiro de 2014.
Feature Média Desvio padrão Valor mínimo Valor máximo
day_of_week 2,99 1,82 0,00 6,00
slot_of_day 146,77 81,70 0,00 287,00
lane 2,46 0,75 1,00 5,00
size5 60,27 45,25 1,00 875,00
min5 17,54 11,06 1,00 79,00
max5 53,60 10,33 2,00 79,00
avg5 36,87 10,20 2,00 79,00
std5 8,57 3,24 0,00 32,50
size30 361,01 264,18 1,00 4509,00
min30 11,60 7,80 1,00 61,00
max30 60,05 9,30 9,00 79,00
avg30 36,87 9,71 6,33 62,33
std30 9,24 2,69 0,00 26,60
size1w 60,04 45,05 1,00 765,00
min1w 17,61 10,95 1,00 79,00
max1w 53,69 10,30 2,00 79,00
avg1w 36,91 10,20 2,00 79,00
std1w 8,57 3,21 0,00 30,40
size2w 57,27 43,59 1,00 924,00
min2w 17,90 11,02 1,00 79,00
max2w 53,78 10,26 2,00 79,00
avg2w 37,07 10,23 2,00 79,00
std2w 8,58 3,23 0,00 30,26
working_day 0,77 0,42 0,00 1,00
speed_limit 64,04 3,78 40,00 67,00
label 36,87 10,20 2,00 79,00
Fonte: Elaborado pelo autor.
valor é igual a 1 se o intervalo de tempo estiver dentro de um dia útil ou 0 caso contrário.
(x) speed_limit: representando a velocidade máxima permitida na via monitorada pelo sensor.
(xi) label: label a ser predito pelo modelo.
5.2 Escolha dos datasets
Nesta etapa foram escolhidos três subconjuntos do dataset original: os datasets
janeiro, agosto e setembro agregados e outubro. A Tabela 2 compara o número de registros para
cada conjunto de dados. Percebe-se que destes conjuntos o de janeiro é o que possui o menor
número de registros.
36
Tabela 2 – Comparação entre os meses de janeiro, agosto + setembro e outubro.
Mês Total de registros
Janeiro 981203
Agosto + Setembro 2950522
Outubro. 1715253
Fonte: Elaborado pelo autor.
5.3 Pré-processamento dos dados
Nesta etapa alguns passos de pré-processamento dos dados foram realizados para a
filtragem de possíveis anomalias que podem impactar nos resultados do modelos de predição.
A princípio, em Magalhaes (2018) são realizados os procedimentos abaixo:
1. Limpeza dos dados: através de particionamento das observações por mês e
cálculo da média µ e desvio padrão σ da velocidade de cada mês são removidas
as observações cuja velocidade tem uma distância de µ maior ou igual a 3σ
2. Agregação de dados: os dados são agregados em partições de intervalo de
tempo de 5 minutos.
3. Cálculo de atributos: para cada sensor e par de slot de tempo de 5 minutos
calculam-se os atributos de número de ruas monitoradas pelo sensor, velocidade
máxima permitida, timestamp de registro, número de veículos que passaram via
monitorada, velocidade média, desvio padrão de velocidade, velocidade mínima
registrada e velocidade máxima registrada.
No que concerne a este trabalho, os procedimentos realizados foram:
1. Agregação dos dados: realizou-se a agregação dos datasets dos meses de Agosto
e Setembro com o objetivo ter dados suficientes para realizar o treinamento dos
modelos preditivos.
2. Remoção de features: removidas as features que continham valores não numéri-
cos, como as features "sensor_id"e "timestamp5"; grupos de features temporais
relativasa 1 e 2 semanas atrás, como as features de "size", "min", "max", "avg"e
"std"e grupos de features temporais referentes a 30 minutos e 5 minutos.
3. Ajuste do rótulo: ajustou-se a feature de "label"para corresponder ao valor da
feature "avg5"de 6 horas posteriores ao slot de tempo atual
37
5.4 Engenharia de features
Nesta etapa, em Magalhaes (2018) foram realizadas algumas operações de engenharia
de features nos dados originais. Para todos os sensores projeta-se um conjunto de 25 features que
modelam as condições de tráfego. Este conjunto inclui slots de tempo de 5 minutos, 30 minutos,
1 semana e 2 semanas atrás.
Outra ação realizada foi a de transformar informações categóricas em numéricas,
como as features de "day_of_week", "slot_of_day"e "working_day":
1. "day_of_week": cada dia da semana foi transformado em um número de 0 a 6,
sendo a segunda-feira o identificador 0, terça-feira o identificador 1, quarta-feira
o identificador 2 e assim por diante, com domingo sendo o identificador 6.
2. "slot_of_day": discretização do tempo de 1 dia (24 · 60 minutos) dividido em
slots de tempo de 5 minutos, gerando um valor compreendido entre 0 a 287 (ou
seja, 24 · (605 ) intervalos).
3. "working_day": equivalente a 1 se for um dia útil, 0 caso contrário.
Por último, o autor utiliza a velocidade média de slots de 5 minutos no intervalo de tempo futuro
de 30 minutos como o label de predição das observações atuais.
5.5 Implementação dos modelos preditivos
Com o objetivo de realizar as predições de velocidades, os modelos mencionados na
Subseção 4.5 são implementados. Os algoritmos de cada modelo de Aprendizado de Máquina
são disponibilizados pela biblioteca scikit-learn1(PEDREGOSA et al., 2011) para a linguagem
de programação Python.
Para esta etapa, os experimentos envolveram inicialmente os modelos de Regressão
Linear, Random Forest, Gradient Boosting e XGBoost. Posteriormente, os experimentos são
realizados com H2O AutoML para as famílias de algoritmos DRF, Generalized Linear Model
(GLM), XGBoost, Gradient Boosting Machine (GBM) e Deep Learning utilizando uma Rede
Neural Artificial (RNA) feedforward multi-camada.
1 https://scikit-learn.org/
38
5.6 Treinamento dos modelos
Neste passo realizamos a etapa de treinamento, necessária para que os modelos
aprendam a partir dos dados e possam realizar suas predições. A princípio utiliza-se o dataset
do mês de janeiro de 2014, que teve os seus registros divididos em 65% para treino, 15% para
validação e 20% para testes.
Realizamos um treinamento inicial com Regressão Linear, e então uma etapa de
treinamentos com os algoritmos de Aprendizado de Máquina implementados na Seção 5.5. Os
hiperparâmetros padrões de cada modelo foram utilizados.
Após este passo de treinos, são realizados treinamentos com os algoritmos de XGBo-
ost e Regressão Linear por terem conseguido bons resultados com pouco tempo de treinamento.
O passo seguinte foi o de avaliar um intervalo de hiperparâmetros para o algoritmo
de XGBoost utilizando Randomized Search. Neste caso, definimos um total de 10 iterações e 5
dobras de validação cruzada. Os dados de treino e validação, e teste e validação, são concatenados
para realizar o treinamento e teste nesta etapa. Os hiperparâmetros levantados são mostrados pela
Tabela 3, onde a learning_rate2 é responsável por controlar o quão rápido o modelo se adapta ao
problema, determinando o tamanho do passo em cada iteração. Enquanto isso, o hiperparâmetro
max_depth3 representa a profundidade máxima da árvore, ou seja, o número máximo de features
diferentes utilizadas em cada árvore.
Tabela 3 – Hiperparâmetros escolhidos para Random Search.
Hiperparâmetro Conjunto de valores
learning_rate [0,1, 0,01]
max_depth [3, 5, 7, 9, 12]
Fonte: Elaborado pelo autor.
Por fim, os 7 melhores hiperparâmetros são listados ao final do treinamento com
Randomized Search. Os resultados dos 7 melhores hiperparâmetros encontrados pela técnica são
mostrados na Tabela 4.
Com os resultados obtidos no passo anterior, realiza-se então mais uma etapa de
treinamentos, desta vez exclusivamente com XGBoost. São implementados 7 modelos de XGBo-
ost com Graphics Processing Unit (GPU) ativada e a maioria possuindo até 3000 estimadores,
2 Taxa de Aprendizado
3 Profundidade Máxima
39
Tabela 4 – Listagem dos melhores hiperparâmetros candidatos após o treinamento com Randomi-
zed Search.
Posição learning_rate max_depth
1 0,01 12
2 0,01 9
3 0,01 7
4 0,01 5
5 0,1 5
6 0,1 3
7 0,1 7
Fonte: Elaborado pelo autor.
com cada modelo correspondendo a um candidato elencado na Tabela 4, assim, o modelo 1
possui learning_rate de 0,01 e max_depth de 12, o segundo modelo com learning_rate de 0,01 e
max_depth de 9, e assim por diante, variando-se o learning_rate ou max_depth de um modelo
para outro. Após esta etapa os modelos são treinados utilizando os dados de treino e validação a
partir do dataset de janeiro. Todos os modelos treinados de XGBoost nesta etapa possuíam Early
Stopping (uma forma de regularização usada para evitar overfitting durante a etapa de treino
iterativo) de 20 iterações. Ao final deste passo mais 2 modelos de XGBoost são implementados
numa tentativa de obter melhores resultados ao modificar alguns hiperparâmetros. A Tabela 5
elenca os hiperparâmetros utilizados para cada implementação de modelos de XGBoost.
Tabela 5 – Hiperparâmetros utilizados para modelos de XGBoost.
Nome n_estimators learning_rate max_depth
model_1 855 0,01 12
model_2 785 0,01 9
model_3 1706 0,01 7
model_4 4161 0,01 5
model_5 696 0,1 5
model_6 1322 0,1 3
model_7 279 0,1 7
model_8 855 0,01 12
model_9 819 0,01 15
Fonte: Elaborado pelo autor.
São então avaliadas as features mais importantes para o modelo de melhor desem-
penho, neste caso o modelo de nome model_1, através da Figura 5. Percebe-se que a feature
40
"slot_of_day é a feature mais importante, acompanhada de "size30"e "std30". Enquanto isso a
feature "working_day"é a menos importante.
Figura 5 – Feature importance do melhor modelo de XGBoost.
Fonte: Próprio autor.
Outra etapa de treinamento consistiu em utilizar os dados sem o grupo de features de
30 minutos para os algoritmos de Regressão Linear e o melhor modelo de XGBoost encontrado.
Assim, removeu-se o grupo de features relacionados a 30 minutos e realizamos treinamento
com os dois tipos de algoritmos. Repetiu-se o mesmo procedimento anterior, mas desta vez
removendo apenas o grupo de features de 5 minutos.
Após os treinamentos com o dataset de janeiro realizam-se treinamentos com os
datasets de agosto e setembro agregados utilizando Regressão Linear e XGBoost. A Figura 6
mostra a importância das features neste passo de treinamento com XGBoost.
Após a realização do ajuste do label para corresponder ao "avg5"de 6 horas poste-
riores, descrito na Seção 5.3, realizamos mais treinamentos para Regressão Linear e XGBoost.
Inicialmente o procedimento foi realizado com todas as features, então assim como nos passos
anteriores, foram removidos os grupos de features de 1 e 2 semanas atrás, 30 minutos e 5 minutos.
Após a realização de todos estes passos faz-se necessário avaliar se conseguimos
resultados melhores com Aprendizado de Máquina Automatizado. Deste modo, o próximo passo
consiste na realização de treinamentos utilizando o módulo AutoML da biblioteca H2O para
Aprendizado de Máquina Automatizado.
Para estes experimentos continua-se utilizando os datasets agregados de agosto e
41
Figura 6 – Feature importance do melhor modelo de XGBoost para o dataset agregado de agosto
e setembro.
Fonte: Próprio autor.
setembro para treino e outubro para testes com os rótulos de ambos os conjuntos de dados
modificados para corresponderem à feature "avg5"de 6 horas posteriores ao registro atual.
A próxima etapa, após remover features relativas a 1 e 2 semanas no passado, é a de
realizar treinamentos para cada família de algoritmo mencionada no segundo parágrafo da Seção
5.5. Assim, realizamos treinamentospara algoritmos de DRF, GLM, XGBoost e Deep Learning.
Os hiperparâmetros não padrões de cada modelo também são listados ao final de cada processo
de treino. O Quadro 2 apresenta os hiperparâmetros não padrões para o modelo líder da família
de algoritmos de XGBoost.
Com os passos de treinamento finalizados faz-se necessário avaliar o desempenho
dos modelos implementados e treinados, com o objetivo de avaliar a eficiência de cada modelo
com dados desconhecidos.
5.7 Avaliação dos modelos
Após a execução de todos os passos de treino e otimização de hiperparâmetros os
modelos preditivos são testados utilizando 20% do conjunto de dados do mês de janeiro, para os
algoritmos treinados com os 65% dos dados de treino e 15% de validação do conjunto de dados
deste mesmo mês, e os algoritmos treinados com os meses agregados de agosto e setembro são
testados utilizando 50% do conjunto de dados do mês de outubro (outros 50% foram utilizados
para o conjunto de validação). Deste modo, todas as implementações de modelos treinadas são
então testadas e seu desempenho é medido através da métrica de RMSE, descrita na Subseção
42
Quadro 2 – Variação dos hiperparâmetros para o modelo líder de XGBoost gerado pelo AutoML.
Parâmetro Padrão Atual
nfolds 0 5
keep_cross_validation_models True False
keep_cross_validation_predictions False True
fold_assignment AUTO Modulo
stopping_metric AUTO RMSE
seed -1 60
distribution AUTO gaussian
categorical_encoding AUTO OneHotInternal
ntrees 50 100
max_depth 6 10
min_rows 1.0 10.0
min_child_weight 1.0 10.0
col_sample_rate_per_tree 1.0 0.8
colsample_bytree 1.0 0.8
score_tree_interval 0 5
tree_method auto hist
booster gbtree dart
reg_lambda 1.0 0.1
reg_alpha 0.0 0.001
dmatrix_type auto dense
backend auto gpu
Fonte: Elaborado pelo autor.
2.3.1. A Tabela 6 exibe o desempenho de cada modelo preditivo com o dataset de teste de janeiro
e a Tabela 7 exibe o desempenho de cada modelo utilizando o dataset de teste de outubro.
Tabela 6 – Resultados obtidos na execução dos treinos testes com o dataset de janeiro.
Tipo de modelo RMSE learning_rate max_depth Observações
Random Forest 3,72 - Nenhum Hiperparâmetros padrões
XGBoost 3,75 0,01 12 Candidato 1 de Random Search
XGBoost 3,76 0,01 9 Candidato 2 de Random Search
Gradient Boosting 3,77 - 3 Hiperparâmetros padrões
XGBoost 3,77 0,1 3 Hiperparâmetros padrões
XGBoost 3,78 0,01 7 Candidato 3 de Random Search
XGBoost 3,78 0,1 7 Candidato 7 de Random Search
XGBoost 3,79 0,01 5 Candidato 4 de Random Search
XGBoost 3,79 0,1 5 Candidato 5 de Random Search
Linear Regression 3,80 - - Hiperparâmetros padrões
XGBoost 3,81 0,1 3 Candidato 6 de Random Search
Fonte: Elaborado pelo autor.
Considerando os resultados obtidos com os experimentos realizados utilizando
43
Tabela 7 – Resultados obtidos na execução dos testes para o dataset de outubro após treinamento
com datasets de agosto e setembro.
Tipo de modelo RMSE learning_rate max_depth features
XGBoost 4,74 0,01 12 Todas as features
XGBoost 4,86 0,01 12 Sem features de 1week e 2week
XGBoost 4,87 0,01 12 Somente features de 30 minutos
DRF (AutoML) 4,87 Nenhum Nenhum Sem features de 1week e 2week
XGBoost (AutoML) 4,92 Nenhum 10 Sem features de 1week e 2week
XGBoost 5,23 0,01 12 Somente features de 5 minutos
Deep Learning (AutoML) 5,25 Nenhum Nenhum Sem features de 1week e 2week
Linear Regression 5,69 - - Todas as features
Linear Regression 5,81 - - Sem features de 1week e 2week
Linear Regression 5,81 - - Somente features de 30 minutos
GLM (AutoML) 5,81 Nenhum Nenhum Sem features de 1week e 2week
Linear Regression 6,19 - - Somente features de 5 minutos
Fonte: Elaborado pelo autor.
o dataset de janeiro (demonstrados na Tabela 6) percebe-se que os algoritmos com melhor
desempenho foram Random Forest com hiperparâmetros padrões do modelo (n_estimators igual
a 100, criterion igual a mse e nenhum max_depth) resultando em uma RMSE de 3,72 e XGBoost
utilizando o primeiro candidato de hiperparâmetros elencados pela técnica de Random Search
(learning_rate igual a 0,01 e max_depth igual a 12) resultando em uma RMSE de 3,75, valores
relativamente próximos. Ressalta-se que o conjunto de dados de janeiro não sofreu alteração no
valor do rótulo, diferentemente dos datasets de agosto + setembro e outubro.
Nas avaliações com o dataset de outubro para os modelos treinados com os conjuntos
de dados agregados de agosto e setembro (com o rótulo ajustado), verificamos que o melhor
resultado foi obtido com XGBoost com hiperparâmetros de learning_rate de 0,01 e max_depth
de 12 e utilizando todas as features do conjunto de dados. Este modelo obteve uma RMSE de
4,74. O modelo com o segundo melhor desempenho também foi um XGBoost com os mesmos
hiperparâmetros, mas diferenciando-se apenas por não possuir features relativas a 1 e 2 semanas
no passado, obtendo uma RMSE de 4,86. Nota-se também um distanciamento do resultado do
modelo de melhor desempenho de XGBoost para o melhor resultado de um modelo de Regressão
Linear que obteve uma RMSE de 5,69, quase 1,0 a mais do que o melhor modelo de XGBoost.
Quanto aos resultados obtidos pelo Aprendizado de Máquina Automatizado, a família
de algoritmos que obteve uma RMSE menor foi a de DRF, resultando em uma métrica de 4,87,
valor relativamente próximo ao melhor resultado do XGBoost. Este resultado é interessante de
se avaliar dado que o modelo que obteve o melhor resultado com o dataset de janeiro foi um
44
algoritmo de Random Forest.
Para este problema, os algoritmos utilizando H2O AutoML não se mostraram mais
eficazes que as primeiras abordagens de Aprendizado de Máquina utilizadas. Nota-se, no entanto,
um destaque maior para algoritmos que utilizam árvores.
45
6 CONCLUSÕES E TRABALHOS FUTUROS
Este trabalho tem como objetivo analisar as melhores abordagens de Aprendizado de
Máquina para o problema de predição de velocidades. Deste modo, experimentos comparativos
entre modelos de Aprendizado de Máquina, além de modelos utilizando AutoML, foram avaliados
quanto ao seu desempenho com o conjunto de dados disponibilizado em Magalhaes (2018). Ao
final o modelo com melhores resultados na predição de velocidades para um dataset com poucos
registros (janeiro) foi Random Forest e para um dataset com mais registros (agosto e setembro
agregados) foi o XGBoost.
É possível afirmar, pautando-se nos experimentos deste trabalho, que os modelos
implementados utilizando algoritmos de XGBoost e Random Forest são os que conseguem
produzir melhores resultados (para determinados conjunto de dados). No caso do XGBoost,
com otimização de hiperparâmetros o modelo é capaz de alcançar resultados satisfatórios para o
problema proposto.
Além disso, esse trabalho conta com a aplicação da técnica de AutoML com o intuito
de avaliar a eficácia desta técnica para o problema proposto. Utilizando esta técnica, abstraiu-se
a questão da otimização manual de hiperparâmetros e construção de modelos dado que esta
responsabilidade foi delegada ao AutoML. Ainda que, com isso, o melhor modelo construído
com os hiperparâmetros do AutoML não tenha superado o XGBoost utilizando Random Search,
a técnica mostrou-se eficaz ao gerar modelos com desempenhos satisfatórios em um curto
período de tempo considerando o tempo que seria utilizado tentando otimizar hiperparâmetros
manualmente.
Desta forma, um possível trabalho futuro é o de avaliar a eficácia da técnica de
AutoML para um período de tempo maior de treinamento. Outro trabalho possível, elencado na
Seção 3 é o de uma arquitetura de Stacked Ensemble combinando algoritmos de Aprendizado
de Máquina e Redes Neurais Artificiais para averiguar a possibilidade de se obter melhores
resultados com os dados de velocidades utilizados neste trabalho.
46
REFERÊNCIAS
BATISTA, G. E. d. A. P. et al. Pré-processamento de dados em aprendizado de máquina
supervisionado. Tese (Doutorado) – Universidade de São Paulo, São Paulo, 2003.
BERGSTRA, J.; BENGIO, Y. Random search for hyper-parameter optimization.The Journal
of Machine Learning Research, JMLR. org, [S.l.], v. 13, n. 1, p. 281–305, 2012.
BREIMAN, L. Random forests. Machine learning, Springer, [S.l.], v. 45, n. 1, p. 5–32, 2001.
CHEN, T.; GUESTRIN, C. Xgboost: A scalable tree boosting system. In: Proceedings of the
22nd acm sigkdd international conference on knowledge discovery and data mining. [S.l.]:
[S. n.], 2016. p. 785–794.
CHEN, T.; HE, T.; BENESTY, M.; KHOTILOVICH, V.; TANG, Y. Xgboost: extreme gradient
boosting. R package version 0.4-2, [S.l.], p. 1–4, 2015.
FREEDMAN, D. A. Statistical models: theory and practice. University of Cambridge:
cambridge university press, 2009.
FRIEDMAN, J.; HASTIE, T.; TIBSHIRANI, R. The elements of statistical learning. New
York: Springer series in statistics, 2001. v. 1.
FRIEDMAN, J. H. Greedy function approximation: a gradient boosting machine. Annals of
statistics, JSTOR, [S.l.], p. 1189–1232, 2001.
FRIEDMAN, J. H. Stochastic gradient boosting. Computational statistics & data analysis,
Elsevier, [S.l.], v. 38, n. 4, p. 367–378, 2002.
GARCÍA, S.; LUENGO, J.; HERRERA, F. Data preprocessing in data mining. New York:
Springer, 2015.
GIJSBERS, P.; LEDELL, E.; THOMAS, J.; POIRIER, S.; BISCHL, B.; VANSCHOREN, J. An
open source automl benchmark. arXiv preprint arXiv:1907.00909, [S.l.], 2019.
LIPPI, M.; BERTINI, M.; FRASCONI, P. Short-term traffic flow forecasting: An experimental
comparison of time-series analysis and supervised learning. IEEE Transactions on Intelligent
Transportation Systems, IEEE, [S.l.], v. 14, n. 2, p. 871–882, 2013.
MA, X.; TAO, Z.; WANG, Y.; YU, H.; WANG, Y. Long short-term memory neural network for
traffic speed prediction using remote microwave sensor data. Transportation Research Part C:
Emerging Technologies, Elsevier, [S.l.], v. 54, p. 187–197, 2015.
MA, X.; YU, H.; WANG, Y.; WANG, Y. Large-scale transportation network congestion
evolution prediction using deep learning theory. PloS one, Public Library of Science, [S.l.],
v. 10, n. 3, p. e0119044, 2015.
MAGALHAES, R. P. Speed Prediction Applied to Dynamic Traffic Sensors and Road
Networks. Tese (Doutorado) – Universidade Federal do Ceará, Fortaleza, 2018.
MITCHELL, T.; BUCHANAN, B.; DEJONG, G.; DIETTERICH, T.; ROSENBLOOM, P.;
WAIBEL, A. Machine learning. Annual review of computer science, Annual Reviews 4139 El
Camino Way, PO Box 10139, Palo Alto, CA 94303-0139, USA, v. 4, n. 1, p. 417–433, 1990.
47
MONARD, M. C.; BARANAUSKAS, J. A. Conceitos sobre aprendizado de máquina. Sistemas
Inteligentes Fundamentos e Aplicações, Manole Ltda, Barueri-SP, p. 89–114, 2003.
NATEKIN, A.; KNOLL, A. Gradient boosting machines, a tutorial. Frontiers in neurorobotics,
Frontiers, [S.l.], v. 7, p. 21, 2013.
PARK, J.; LI, D.; MURPHEY, Y. L.; KRISTINSSON, J.; MCGEE, R.; KUANG, M.; PHILLIPS,
T. Real time vehicle speed prediction using a neural network traffic model. In: IEEE. The 2011
International Joint Conference on Neural Networks. [S.l.], 2011. p. 2991–2996.
PEDREGOSA, F.; VAROQUAUX, G.; GRAMFORT, A.; MICHEL, V.; THIRION, B.; GRISEL,
O.; BLONDEL, M.; PRETTENHOFER, P.; WEISS, R.; DUBOURG, V. et al. Scikit-learn:
Machine learning in python. the Journal of machine Learning research, JMLR. org, [S.l.],
v. 12, p. 2825–2830, 2011.
RASCHKA, S. Python machine learning. [S.l.]: Packt publishing ltd, 2015.
SMITH, B. L.; WILLIAMS, B. M.; OSWALD, R. K. Comparison of parametric and
nonparametric models for traffic flow forecasting. Transportation Research Part C:
Emerging Technologies, Elsevier, [S.l.], v. 10, n. 4, p. 303–321, 2002.
VLAHOGIANNI, E. I.; KARLAFTIS, M. G.; GOLIAS, J. C. Short-term traffic forecasting:
Where we are and where we’re going. Transportation Research Part C: Emerging
Technologies, Elsevier, [S.l.], v. 43, p. 3–19, 2014.
YU, R.; LI, Y.; SHAHABI, C.; DEMIRYUREK, U.; LIU, Y. Deep learning: A generic
approach for extreme condition traffic forecasting. In: SIAM. Proceedings of the 2017 SIAM
International Conference on Data Mining. [S.l.], 2017. p. 777–785.
ZHAO, Z.; CHEN, W.; WU, X.; CHEN, P. C.; LIU, J. Lstm network: a deep learning approach
for short-term traffic forecast. IET Intelligent Transport Systems, IET, [S.l.], v. 11, n. 2, p.
68–75, 2017.
ZHENG, A.; CASARI, A. Feature engineering for machine learning: principles and
techniques for data scientists. [S.l.]: O’Reilly Media, Inc., 2018.
ZÖLLER, M.-A.; HUBER, M. F. Benchmark and survey of automated machine learning
frameworks. arXiv preprint arXiv:1904.12054, [S.l.], 2019.
	Folha de rosto
	Agradecimentos
	Resumo
	Abstract
	Sumário
	Introdução
	Fundamentação Teórica
	Definição do problema
	Aprendizado de Máquina
	Regressão Linear
	Random Forest
	Gradient Boosting
	XGBoost
	Random Search
	AutoML
	Métricas de avaliação
	Root Mean Square Error (RMSE)
	Conclusão
	Trabalhos Relacionados
	Short-term Traffic Flow Forecasting: An Experimental Comparison Of Time-series Analysis And Supervised Learning
	Deep Learning: A Generic Approach For Extreme Condition Traffic Forecasting
	Long Short-term Memory Neural Network For Traffic Speed Prediction Using Remote Microwave Sensor Data
	Conclusão
	Metodologia
	Coleta dos dados
	Escolha dos datasets
	Pré-processamento dos dados
	Engenharia de features
	Implementação dos modelos preditivos
	Treinamento dos modelos
	Avaliação dos modelos
	Conclusão
	Experimentos e Resultados
	Coleta dos dados
	Escolha dos datasets
	Pré-processamento dos dados
	Engenharia de features
	Implementação dos modelos preditivos
	Treinamento dos modelos
	Avaliação dos modelos
	Conclusões e Trabalhos Futuros
	REFERÊNCIAS
	APÊNDICES
	ANEXOS

Continue navegando