Você está na página 1de 5

XL SIMPÓSIO BRASILEIRO DE TELECOMUNICAÇÕES E PROCESSAMENTO DE SINAIS - SBrT 2022, 25–28 DE SETEMBRO DE 2022, STA.

RITA DO SAPUCAÍ, MG

Análise de Tráfego de Rede com Machine Learning


para Identificação de Ameaças a Dispositivos IoT
Marcelo Vinícius Cysneiros Aragão, Samuel Baraldi Mafra e Felipe Augusto Pereira de Figueiredo

Resumo— Dispositivos IoT estão cada vez mais presentes em promissores (i.e. 99,5% de acurácia), mesmo não tendo reali-
nosso dia-a-dia, tanto em contextos particulares quanto em am- zado qualquer tipo de pré-processamento de dados.
bientes públicos. Consequentemente, a segurança deles também No mesmo ano, Shafiq et al. [3] propuseram uma nova
deve ser tratada com atenção. Após revisar diversas implemen-
tações da literatura, este trabalho propõe uma abordagem para métrica para seleção de características denominada CorrAUC,
detecção de ameaças baseada em análise de tráfego de rede, baseada na combinação de outras duas métricas: CAE (Corre-
realizada por modelos de aprendizado de máquina. Após extensa lation Attribute Evaluation) e AUC (Area Under the Curve).
experimentação e avaliação, foi possível produzir um modelo A proposta foi avaliada no conjunto de dados Bot-IoT [4]
rapidamente treinável e altamente confiável, comprovando a com quatro modelos de aprendizado de máquina: árvore de
eficácia da proposta e apontando direções para trabalhos futuros.
decisão C4.5 [5], classificador Bayesiano ingênuo (Naïve
Bayes), floresta aleatória (Random Forest) [6] e máquina de
Palavras-Chave— Internet das Coisas, cibersegurança, apren- vetores de suporte [7]. A solução proposta apresentou precisão
dizado de máquina.
na detecção de tráfego malicioso superior a 96%.
Abstract— IoT devices are increasingly present in our daily
lives, both in private contexts and in public environments.
Com um tipo de modelo diferente dos trabalhos citados
Consequently, their security must also be thought with care. After anteriormente, Liang e Vankayalapati [8] avaliaram o em-
reviewing relevant literature, this work proposes an approach to prego de redes neurais profundas (Deep Neural Network)
threat detection based on network traffic analysis, performed by na identificação de ameaças a dispositivos IoT, usando o já
machine learning models. After extensive experimentation and mencionado conjunto IoT-23. Além deste modelo, também
evaluation, it was possible to produce a quickly trainable and
highly reliable model, proving the effectiveness of the proposal
foram considerados o classificador probabilístico Bayesiano
and pointing out directions for future work. ingênuo, a máquina de vetores de suporte e árvore de decisão.
Apesar da promissora proposta em empregar redes neurais
Keywords— Internet of Things, cibersecurity, machine lear-
ning. profundas, dada sua capacidade de generalização, os resultados
não foram promissores, variando de 30% a 73% de acurácia.
Abdalgawad et al. [9] empregaram os modelos AAE (Ad-
I. I NTRODUÇÃO versarial Autoencoders) e BiGAN (Bidirectional Generative
Com o crescente número de dispositivos IoT (Internet of Adversarial Networks) de aprendizagem profunda generativa
Things) conectados à rede e desempenhando os mais diver- para classificar os ataques do conjunto IoT-23. Foram obtidas
sos papeis, como monitoramento residencial e de ambientes alta acurácia de classificação de ataques conhecidos (escore
críticos, a segurança emerge como uma questão de suma F1 na ordem de 99%) e capacidade de detectar ataques zero-
importância. Para tal, pode-se empregar soluções tanto a nível day (ou seja, ameaças recém descobertas, para as quais ainda
de hardware quanto de software (como firewalls, que permitem não há solução) com escore F1 variando de 85% a 100%.
ou restringem a comunicação entre dispositivos baseando- Por fim, a implementação de Ullah e Mahmoud [10] baseou-
se em regras). Uma abordagem inovadora, entretanto, vem se em redes neurais recorrentes, como LSTM (Long Short
chamando a atenção da comunidade científica: o emprego de Term Memory), BiLSTM (Bidirectional LSTM) e GRU (Gated
modelos de aprendizado de máquina para analisar o tráfego Recurrent Unit). O modelo foi avaliado em sete conjuntos
de rede e identificar possíveis ameaças a dispositivos IoT. de dados, incluindo Bot-IoT e IoT-23, e chegou a apresentar
Usando o conjunto de dados IoT-23 [1], que é apresentado escore F1 próximo a 100% para diversas ameaças conhecidas.
em mais detalhes na seção II, Stoian [2] comparou modelos Comprovada a relevância do tema, este trabalho visa esco-
como redes neurais, árvores de decisão e máquina de vetores lher, treinar, otimizar e avaliar diferentes modelos de apren-
de suporte na identificação tanto de tráfego benigno quanto dizado de máquina aplicados à identificação de ameaças a
de varredura de portas, download de arquivos e até mesmo dispositivos IoT. Adicionalmente, sugere diversas técnicas de
ataques de negação de serviço. Os resultados obtidos foram pré-processamento de dados que podem agilizar o treinamento
e melhorar a acurácia dos modelos em questão.
Marcelo Vinícius Cysneiros Aragão, Departamento de Engenharia de O trabalho está organizado da seguinte forma: na seção I, o
Computação e Software, Instituto Nacional de Telecomunicações, Santa Rita
do Sapucaí-MG, e-mail: marcelovca90@inatel.br; Samuel Baraldi Mafra, problema é introduzido e são visitadas outras abordagens da
Departamento de Engenharia de Telecomunicações, Instituto Nacional de Te- literatura para resolvê-lo. Em seguida, na seção II, é detalhada
lecomunicações, Santa Rita do Sapucaí-MG, e-mail: samuelbmafra@inatel.br; a metodologia da proposta. Os resultados experimentais são
Felipe Augusto Pereira de Figueiredo, Departamento de Engenharia de Teleco-
municações, Instituto Nacional de Telecomunicações, Santa Rita do Sapucaí- apresentados e discutidos na seção III. Por fim, a seção IV
MG, e-mail: felipe.figueiredo@inatel.br. conclui o trabalho, recapitulando seus pontos-chave.
XL SIMPÓSIO BRASILEIRO DE TELECOMUNICAÇÕES E PROCESSAMENTO DE SINAIS - SBrT 2022, 25–28 DE SETEMBRO DE 2022, STA. RITA DO SAPUCAÍ, MG

II. M ETODOLOGIA B. Pré-processamento dos dados


De forma resumida, este trabalho visa treinar e otimizar Mesmo utilizando a versão reduzida do conjunto, o volume
modelos de aprendizado de máquina, utilizando amostras de de dados ainda é grande e demanda tratamento. Portanto,
tráfego de rede, de modo a construir um elemento inteligente foram realizadas diversas etapas de pré-processamento, vi-
e útil em ambientes reais, capaz identificar possíveis ameaças sando simultaneamente minimizar a quantidade de dados (e a
a dispositivos conectados. consequente demanda por poder computacional) e maximizar
O diagrama da Figura 1 ilustra as etapas do modelo, que a quantidade de informação. Os seguintes processos foram
são apresentadas em mais detalhes nas subseções a seguir. conduzidos usando as ferramentas scikit-learn [12],
pandas [13] e scipy [14]:
1) Concatenação dos 23 conjuntos de dados, visando pro-
Tráfego de rede duzir um único arquivo para facilitar o processamento
nas etapas posteriores;
Outro(s)
Dispositivo IoT 2) Padronização dos rótulos das classes, já que os iden-
dispositivo(s)
tificadores dos tráfegos não eram consistentes entre
cenários distintos de captura;
3) Remoção de amostras que não correspondessem aos
cenários mais relevantes, mantendo apenas os quatro
cenários mais frequentes, sendo eles:
Conjunto Pré-
• Tráfego benigno: 48, 59% (⇡ 4, 3M amostras);
de dados processamento
• Negação de serviço: 24, 76% (⇡ 2, 2M amostras);
• Varredura de portas: 26, 48% (⇡ 2, 3M amostras);
• Okiru: 0, 17% (⇡ 15, 2k amostras).
Treinamento Escolha 4) Preenchimento de valores ausentes com caracteres indi-
do modelo do modelo
cadores padronizados;
5) Remoção de amostras duplicadas, pois não trazem infor-
mação inédita e, consequentemente, não contribuem com
Modelo S N Otimização de o treinamento dos modelos de aprendizado de máquina;
Parar?
treinado hiperparâmetros 6) Codificação de características categóricas usando one-
hot encoding [15];
7) Definição dos tipos de dados de cada característica, para
assegurar que não seja demandada mais memória do que
Fig. 1: Diagrama de blocos do modelo experimental. realmente é necessário (exemplo: representar desneces-
sariamente uma porta de comunicação, que naturalmente
trata-se de um número inteiro, como um número de
A. Conjunto de dados ponto flutuante);
8) Separação dos dados em subconjuntos de treinamento
O conjunto de dados utilizado neste trabalho foi o Aposemat
(80% das amostras) e teste (20%), usados para trei-
IoT-23 [1], capturado no laboratório Stratosphere, da Univer-
namento e avaliação dos modelos de aprendizado de
sidade Técnica Checa (Praga), com incentivo do Avast AI &
máquina, respectivamente;
Cybersecurity Laboratory. O conjunto consiste em vinte e três
9) Seleção de características, mantendo apenas aquelas que
cenários de capturas de tráfego de rede envolvendo dispositivos
apresentam alta variância;
IoT, sendo eles:
10) Escalonamento dos valores numéricos para a faixa [0, 1],
• 20 capturas de tráfego malicioso tais como varreduras visando estabilizar os processos de treinamento e evitar
de portas, ataques de negação de serviço distribuída e estouro de variáveis (overflow);
malwares executados em mini-computadores Raspberry 11) Codificação dos rótulos das amostras usando números
Pi (tais como as botnets Mirai, Okiru e Torii [11]); ordinais (em vez de cadeias de caracteres), para agilizar
• 03 capturas de tráfego benigno em dispositivos IoT reais a identificação dos dados pertencentes a cada cenário.
(honeypots) – assistente virtual Amazon® Echo, lâmpada
Neste ponto, os dados estão prontos para serem usados
inteligente Philips® Hue e fechadura com abertura re-
no treinamento de modelos de aprendizado de máquina, cuja
mota Somfy® Door Lock.
seleção dar-se-á na próxima etapa.
É possível obter tanto uma versão reduzida (8, 8 GBytes)
do conjunto de dados, contendo apenas as amostras rotuladas
(ou seja, cujo tipo de tráfego foi previamente identificado), C. Identificação dos modelos de aprendizado de máquina
quanto a versão completa (21 GBytes), que inclui amostras Em posse dos dados já processados, deve-se identificar
sem o rótulo associado. Neste trabalho, foi utilizada a pri- modelos de aprendizado de máquina para realizar a tarefa
meira versão, tanto pela natureza da abordagem (classificação), de classificação. Para tal, foram considerados trabalhos da
quanto por limitações de poder computacional. literatura que comparam diversos modelos [16, 17, 18], bem
XL SIMPÓSIO BRASILEIRO DE TELECOMUNICAÇÕES E PROCESSAMENTO DE SINAIS - SBrT 2022, 25–28 DE SETEMBRO DE 2022, STA. RITA DO SAPUCAÍ, MG

como as documentações das bibliotecas scikit-learn Como primeiro resultado esperado, deseja-se um classifi-
[12], tensorflow [19] e keras [20]. Os modelos encon- cador com a maior precisão de discernimento entre os tipos
trados, agrupados por categoria, são listados a seguir. de ameaças aos dispositivos. Para tal, foi utilizada a métrica
• Análise discriminante linear e quadrática [21]; “acurácia”, que contabiliza exatamente quantas previsões fei-
• Árvores de decisão [5]; tas pelo classificador coincidem com o tipo de ameaça em
• Ensembles (“conjuntos” de classificadores): AdaBoost, questão. Um ranking dos classificadores, dispostos em ordem
Extra Trees, Histogram Gradient Boosting, Random Fo- decrescente de “acurácia” (ou seja, do melhor para o pior),
rest e XGBoost [6, 22]; está disposto na tabela I.
• Baseados em distância: Nearest Centroid [23];
• Máquina de vetores de suporte: Additive CHI2 e Radial TABELA I: Ranking de acurácia dos classificadores.
Basis Function (RBF) kernels [7, 24, 25];
Posição Classificador Acurácia (%)
• Modelos lineares: Passive Aggressive, Perceptron, Ridge
e Stochastic Gradient Descent (SGD) [26, 27, 28]; Decision Tree 99,86
1 Extra Trees 99,86
• Modelos probabilísticos: Complement, Gaussian e Mul- Random Forest 99,86
tinomial Naive Bayes [29, 30]; 2 Histogram Gradient Boosting 99,78
• Redes neurais: Multilayer Perceptron e Deep Neural 3 Deep Neural Network 99,38
4 XGBoost 99,37
Network [31, 32]. 5 Support Vector Machine (CHI2) 97,46
Os modelos escolhidos, mesmo sendo concebidos a partir de 6 AdaBoost 93,46
diferentes fundamentos teóricos, e apresentando particularida- 7 Multilayer Perceptron 78,98
8 Support Vector Machine (RBF) 74,50
des em termos de treinamento e operação, servem ao mesmo 9 Passive Aggressive 74,05
propósito da classificação. Feita a escolha, pode-se proceder 10 Stochastic Gradient Descent 73,55
para a etapa de treinamento, de fato. 11 Perceptron 73,40
12 Ridge 72,98
13 Quadratic Discriminant Analysis 72,70
D. Treinamento dos modelos e otimização de hiperparâmetros 14 Linear Discriminant Analysis 72,64
15 Gaussian Naive Bayes 72,53
Em um primeiro momento, deve-se “treinar” os modelos (ou 16 Complement Naive Bayes 72,23
seja, utilizar uma fração dos conjuntos de dados para ajustar 17 Multinomial Naive Bayes 72,01
18 Nearest Centroid 59,51
sua configuração subjacente) para que apresentem resultado
satisfatório na classificação de dados que não foram usados
durante o processo de treinamento. Além de uma alta acurácia, também é desejável que o
O sucesso ou fracasso deste processo, frequentemente rea- classificador possa ser (re)treinado rapidamente. Isto porque,
lizado por meio da minimização iterativa de uma função de em cenários dinâmicos, as características dos ataques podem
erro, está associado ao conjunto inicial de hiperparâmetros mudar, demandando uma rápida adaptação (ou mesmo uma
que foram configurados para o modelo. Portanto, deve-se recriação) do modelo em questão para que ele continue sendo
avaliar diferentes combinações de valores de modo a otimizar útil à tarefa de detecção de ameaças. Neste sentido, um
o desempenho do modelo (ou seja, maximizar sua acurácia ranking dos classificadores, dispostos em ordem decrescente
na classificação). Para tal, foi utilizada a biblioteca optuna de “quantidades de treinamentos realizados em uma hora” (ou
[33, 34], e os espaços de hiperparâmetros foram especifica- seja, do melhor para o pior), está disposto na tabela II.
dos manualmente, observando as documentações e artigos de
cada modelo considerado para determinação das faixas e/ou TABELA II: Ranking de treinamentos dos classificadores.
conjuntos de valores aceitáveis para cada hiperparâmetro.
Cada modelo foi submetido a uma rodada de otimização, re- Posição Classificador Treinamentos
alizada pela biblioteca optuna. Foi estipulado que cada mo- Complement Naive Bayes 100
Decision Tree 100
delo seria treinado quantas vezes fosse possível durante uma Gaussian Naive Bayes 100
hora, com diferentes configurações de hiperparâmetros. Caso Linear Discriminant Analysis 100
o primeiro treinamento extrapolasse tal limite, aguardava-se 1 Multinomial Naive Bayes 100
Nearest Centroid 100
até sua conclusão. Ao final de cada execução, era armazenada Passive Aggressive 100
a configuração que produzia o melhor resultado preditivo. Quadratic Discriminant Analysis 100
Na seção a seguir, são apresentados e discutidos os resulta- Ridge 100
2 Perceptron 83
dos experimentais, e apontadas as conclusões obtidas.
3 Stochastic Gradient Descent 26
4 Extra Trees 25
III. E XPERIMENTOS E D ISCUSSÃO 5 Random Forest 18
6 AdaBoost 10
Os experimentos foram conduzidos em um computador 7 Histogram Gradient Boosting 7
com processador AMD Ryzen™ 7 5800X, 32 GB de RAM 8 Support Vector Machine (CHI2) 4
Support Vector Machine (RBF) 3
DDR4-3200, placa de vídeo Nvidia GeForce® RTX 2060 9
Multilayer Perceptron 3
6GB GDDR6 (driver versão 511.79) e sistema operacional 10
Deep Neural Network 1
Microsoft Windows 10 Professional x64 (versão 21H1). XGBoost 1
XL SIMPÓSIO BRASILEIRO DE TELECOMUNICAÇÕES E PROCESSAMENTO DE SINAIS - SBrT 2022, 25–28 DE SETEMBRO DE 2022, STA. RITA DO SAPUCAÍ, MG

Analisando os resultados das tabelas I e II, pode-se fazer as AGRADECIMENTOS


seguintes afirmações: Os autores agradecem o apoio financeiro do Conselho Na-
• Ensembles e árvore(s) de decisão produziram os melhores cional de Desenvolvimento Científico e Tecnológico (CNPq),
resultados (tanto em termos de taxas de acerto quanto de (403827/2021-3), Fundação de Amparo à Pesquisa do Estado
tempo de treinamento). Outra vantagem destes modelos de São Paulo (FAPESP) (2021/06946-0) e parcialmente finan-
é que são do tipo “caixa branca”, ou seja, é possível ciado pela Rede Nacional de Ensino e Pesquisa (RNP) com
compreender o que foi aprendido pelo modelo (diferen- recursos do Ministério da Ciência, Tecnologia e Inovações
temente das redes neurais, por exemplo); (MCTIC), concessão número 01245.010604/2020-14, sob o
• Em termos de acurácia, redes neurais profundas também projeto Brasil 6G do Centro de Referência em Radiocomu-
podem ser utilizadas para a tarefa, mas demandam longos nicações (CRR) do Instituto Nacional de Telecomunicações
períodos de treinamento; (Inatel), Brasil.
• Classificadores probabilísticos e baseados em análise
discriminante apresentaram baixo tempo de treinamento, R EFERÊNCIAS
mas as taxas de acerto insatisfatórias os tornam inapro-
[1] Sebastian Garcia, Agustin Parmisano e Maria Jose Er-
priados para a tarefa;
quiaga. IoT-23: A labeled dataset with malicious and
• Classificadores lineares, mesmo com funções de kernel
benign IoT network traffic. Zenodo, 2020. DOI: 10 .
não-lineares, não apresentaram bons resultados, e seus
5281/zenodo.4743746.
tempos de treinamento foram longos.
[2] N.A. Stoian. Machine Learning for Anomaly Detection
Conclui-se, então, que é possível detectar ameaças a dispo- in IoT networks: Malware analysis on the IoT-23 Data
sitivos IoT usando modelos de aprendizado de máquina, por set. 2020.
meio da análise do tráfego de rede. Em particular, árvores [3] Muhammad Shafiq, Zhihong Tian, Ali Kashif Bashir,
de decisão desempenhariam tal tarefa com maestria, pois Xiaojiang Du e Mohsen Guizani. “CorrAUC: A Mali-
apresentam alta acurácia e baixo tempo de treinamento. cious Bot-IoT Traffic Detection Method in IoT Network
O código e as instruções para reprodução dos experimentos, Using Machine-Learning Techniques”. Em: IEEE Inter-
bem como todos os resultados obtidos, estão disponíveis em net of Things Journal 8.5 (2021), pp. 3242–3254. ISSN:
um repositório1 público do GitHub. 23274662. DOI: 10.1109/JIOT.2020.3002255.
[4] Nour Moustafa. The Bot-IoT dataset. 2019. DOI: 10.
IV. C ONCLUSÃO
21227/r7v2-x988.
Nos últimos anos, o advento da IoT vem demandando aten- [5] Leo Breiman, Jerome Friedman, Charles J. Stone e
ção especial em termos de segurança, já que frequentemente R.A. Olshen. Classification and regression trees. 1ª ed.
estes dispositivos estão inseridos no dia-a-dia das pessoas, June. Boca Raton, FL, USA: Chapman & Hall/CRC,
tanto em contextos particulares quanto em ambientes públicos. 1984, p. 358. ISBN: 978-0412048418. DOI: 10.1002/
Neste sentido, diversos autores vêm propondo formas de widm.8.
detectar ameaças a estes dispositivos. Uma das técnicas con- [6] Leo Breiman. “Random forests”. Em: Machine Lear-
siste na análise do tráfego de rede, por meio da captura dos ning 45.1 (2001), pp. 5–32. ISSN: 1098-6596. DOI: 10.
pacotes trocados entre as entidades envolvidas na comunicação 1017/CBO9781107415324.004.
e, em seguida, classificação – frequentemente por meio de [7] Corinna Cortes e Vladimir Vapnik. “Support-Vector
modelos de aprendizado de máquina – do tráfego em benigno Networks”. Em: Machine Learning 20.3 (1995),
ou maligno (neste caso, também é importante identificar pp. 273–297. DOI: 10.1023/A:1022627411411.
especificamente a ameaça em questão). [8] Yue Liang e Nikhil Vankayalapati. Machine Learning
O presente trabalho propôs uma metodologia de treina- and Deep Learning Methods for Better Anomaly De-
mento, avaliação e aprimoramento de modelos de aprendizado tection in IoT-23 Dataset Cybersecurity. 2021.
de máquina, sugerindo e detalhando desde etapas preliminares [9] N. Abdalgawad, A. Sajun, Y. Kaddoura, I. A. Zualker-
(como o pré-processamento de dados, para redução do volume nan e F. Aloul. “Generative Deep Learning to Detect
de dados e maximização da quantidade de informação), até Cyberattacks for the IoT-23 Dataset”. Em: IEEE Access
processos “opcionais” (como a otimização de hiperparâmetros, 10 (2022), pp. 6430–6441. ISSN: 21693536. DOI: 10.
visando potencializar a capacidade preditiva dos modelos). 1109/ACCESS.2021.3140015.
Diante da análise dos resultados experimentais, foi possível [10] Imtiaz Ullah e Qusay H. Mahmoud. “Design and Deve-
comprovar a eficácia da metodologia proposta, já que foi lopment of a Deep Learning-Based Model for Anomaly
capaz de produzir rapidamente um modelo cuja capacidade Detection in IoT Networks”. Em: IEEE Access 9 (2021),
de detecção aproxima-se de 99,9% de acurácia. pp. 103906–103926. ISSN: 21693536. DOI: 10.1109/
Como sugestões para trabalhos futuros, pode-se sugerir o ACCESS.2021.3094024.
emprego de outros modelos de aprendizado de máquina (como [11] Hassan Habibi Gharakheili, Ayyoob Hamza e Vijay
redes neurais convolucionais), a avaliação de outros conjuntos Sivaraman. “Cyber-Securing IoT Infrastructure by Mo-
de dados (como o Bot-IoT) e uma exploração mais ampla do deling Network Traffic”. Em: Security and Privacy in
espaço de hiperparâmetros. the Internet of Things (2021), pp. 151–176. DOI: 10.
1 https://github.com/marcelovca90/Anomaly-Detection-IoT23 1002/9781119607755.ch6.
XL SIMPÓSIO BRASILEIRO DE TELECOMUNICAÇÕES E PROCESSAMENTO DE SINAIS - SBrT 2022, 25–28 DE SETEMBRO DE 2022, STA. RITA DO SAPUCAÍ, MG

[12] F Pedregosa et al. “Scikit-learn: Machine Learning in Information Processing Systems 20 - Proceedings of the
Python”. Em: Journal of Machine Learning Research 2007 Conference 20 (2009).
12 (2011), pp. 2825–2830. [26] Koby Crammer, Ofer Dekel, Joseph Keshet, Shai
[13] The Pandas development team. pandas-dev/pandas: Shalev-Shwartz e Yoram Singer. “Online passive ag-
Pandas. 2020. DOI: 10.5281/zenodo.3509134. gressive algorithms”. Em: (2006).
[14] Wes McKinney. “Data Structures for Statistical Com- [27] F. Rosenblatt. “The perceptron: A probabilistic model
puting in Python”. Em: Proceedings of the 9th Python for information storage and organization in the brain”.
in Science Conference. Ed. por Stéfan van der Walt e Em: Psychological Review 65.6 (1958), pp. 386–408.
Jarrod Millman. 2010, pp. 56–61. DOI: 10.25080/ ISSN : 0033295X. DOI : 10.1037/h0042519.
majora-92bf1922-00a. [28] Tong Zhang. “Solving large scale linear predic-
[15] Cedric Seger. An investigation of categorical variable tion problems using stochastic gradient descent algo-
encoding techniques in machine learning: binary versus rithms”. Em: Proceedings, Twenty-First International
one-hot and feature hashing. 2018. Conference on Machine Learning, ICML 2004. 2004,
[16] Rich Caruana e Alexandru Niculescu-Mizil. “An em- pp. 919–926. ISBN: 1581138385. DOI: 10 . 1145 /
pirical comparison of supervised learning algorithms”. 1015330.1015332.
Em: ACM International Conference Proceeding Series. [29] Jason D.M. Rennie, Lawrence Shih, Jaime Teevan e
Vol. 148. 2006, pp. 161–168. ISBN: 1595933832. DOI: David Karger. “Tackling the Poor Assumptions of Naive
10.1145/1143844.1143865. Bayes Text Classifiers”. Em: Proceedings, Twentieth
[17] Marcelo V.C. Aragao, Isaac C. Ferreira, Edvard M. International Conference on Machine Learning. Vol. 2.
Oliveira, Bruno T. Kuehne, Edmilson M. Moreira e 2003, pp. 616–623. ISBN: 1577351894.
Otavio A.S. Carpinteiro. “A Study and Evaluation of [30] Hinrich Schütze, Christopher D Manning e Prabha-
Classifiers for Anti-Spam Systems”. Em: IEEE Access kar Raghavan. Introduction to information retrieval.
9 (2021), pp. 157482–157498. ISSN: 21693536. DOI: Vol. 39. Cambridge University Press Cambridge, 2008.
10.1109/ACCESS.2021.3129203. [31] David E. Rumelhart, Geoffrey E. Hinton e Ro-
[18] Andrew Churcher, Rehmat Ullah, Jawad Ahmad, Sa- nald J. Williams. “Learning representations by back-
daqat Ur Rehman, Fawad Masood, Mandar Gogate, propagating errors”. Em: Nature 323.6088 (1986),
Fehaid Alqahtani, Boubakr Nour e William J Buchanan. pp. 533–536. ISSN: 00280836. DOI: 10 . 1038 /
“An experimental analysis of attack classification using 323533a0.
machine learning in IoT networks”. Em: Sensors 21.2 [32] Ian Goodfellow, Yoshua Bengio e Aaron Courville.
(2021), p. 446. Deep Learning. MIT Press, 2016.
[19] Martín⇠Abadi et al. TensorFlow: Large-Scale Machine [33] Takuya Akiba, Shotaro Sano, Toshihiko Yanase, Ta-
Learning on Heterogeneous Systems. 2015. keru Ohta e Masanori Koyama. “Optuna: A Next-
[20] François Chollet et al. Keras. https://keras.io. generation Hyperparameter Optimization Framework”.
2015. Em: Proceedings of the ACM SIGKDD International
[21] Alaa Tharwat. “Linear vs. quadratic discriminant analy- Conference on Knowledge Discovery and Data Mining.
sis classifier: a tutorial”. Em: International Journal of 2019, pp. 2623–2631. ISBN: 9781450362016. DOI: 10.
Applied Pattern Recognition 3.2 (2016), p. 145. ISSN: 1145/3292500.3330701.
2049-887X. DOI: 10.1504/ijapr.2016.079050. [34] Haifeng Jin, Qingquan Song e Xia Hu. “Auto-Keras:
[22] Tianqi Chen e Carlos Guestrin. “XGBoost: A sca- An Efficient Neural Architecture Search System”. Em:
lable tree boosting system”. Em: Proceedings of the Proceedings of the ACM SIGKDD International Confe-
ACM SIGKDD International Conference on Kno- rence on Knowledge Discovery and Data Mining. ACM.
wledge Discovery and Data Mining. Vol. 13-17-August- 2019, pp. 1946–1956.
2016. KDD ’16. New York, NY, USA: ACM, 2016,
pp. 785–794. ISBN: 9781450342322. DOI: 10.1145/
2939672.2939785.
[23] Robert Tibshirani, Trevor Hastie, Balasubramanian Na-
rasimhan e Gilbert Chu. “Diagnosis of multiple cancer
types by shrunken centroids of gene expression”. Em:
Proceedings of the National Academy of Sciences of the
United States of America 99.10 (2002), pp. 6567–6572.
ISSN : 00278424. DOI : 10.1073/pnas.082099299.
[24] Andrea Vedaldi e Andrew Zisserman. “Efficient additive
kernels via explicit feature maps”. Em: IEEE Transacti-
ons on Pattern Analysis and Machine Intelligence 34.3
(2012), pp. 480–492. ISSN: 01628828. DOI: 10.1109/
TPAMI.2011.153.
[25] Ali Rahimi e Benjamin Recht. “Random features for
large-scale kernel machines”. Em: Advances in Neural

Você também pode gostar