Artigo Mestrado
This commit is contained in:
89
commands.txt
Normal file
89
commands.txt
Normal file
@@ -0,0 +1,89 @@
|
||||
(artigo_final) root@tiago:~/artigo_final# python3 preprocess_data_full.py
|
||||
Carregando o dataset completo de: cicids2017.csv
|
||||
Dataset completo carregado com 3056496 linhas e 79 colunas
|
||||
Distribuição das classes antes da limpeza:
|
||||
Label
|
||||
BENIGN 2370815
|
||||
DDoS 256054
|
||||
DoS Hulk 231073
|
||||
PortScan 158930
|
||||
DoS GoldenEye 10293
|
||||
FTP-Patator 7938
|
||||
SSH-Patator 5897
|
||||
DoS slowloris 5796
|
||||
DoS Slowhttptest 5499
|
||||
Bot 1966
|
||||
Web Attack Brute Force 1507
|
||||
Web Attack XSS 652
|
||||
Infiltration 36
|
||||
Web Attack Sql Injection 21
|
||||
Heartbleed 11
|
||||
Label 8
|
||||
Name: count, dtype: int64
|
||||
Convertendo 78 colunas para numérico...
|
||||
Removidas 2909 linhas com valores NaN ou infinitos.
|
||||
Removidas colunas com baixa variância: ['Bwd_PSH_Flags', 'Bwd_URG_Flags', 'Fwd_Avg_Bytes_Bulk', 'Fwd_Avg_Packets_Bulk', 'Fwd_Avg_Bulk_Rate', 'Bwd_Avg_Bytes_Bulk', 'Bw'Bwd_Avg_Bulk_Rate']
|
||||
Características finais: 70 colunas
|
||||
Amostras finais: 3053587 linhas
|
||||
Distribuição das classes após limpeza:
|
||||
Label
|
||||
BENIGN 2369006
|
||||
DDoS 256050
|
||||
DoS Hulk 230124
|
||||
PortScan 158804
|
||||
DoS GoldenEye 10293
|
||||
FTP-Patator 7935
|
||||
SSH-Patator 5897
|
||||
DoS slowloris 5796
|
||||
DoS Slowhttptest 5499
|
||||
Bot 1956
|
||||
Web Attack Brute Force 1507
|
||||
Web Attack XSS 652
|
||||
Infiltration 36
|
||||
Web Attack Sql Injection 21
|
||||
Heartbleed 11
|
||||
Name: count, dtype: int64
|
||||
Aplicando normalização Min-Max...
|
||||
Dataset pré-processado salvo em: cicids2017_preprocessed.csv
|
||||
Formato final: (3053587, 71)
|
||||
|
||||
(artigo_final) root@tiago:~/artigo_final# python3 train_model.py
|
||||
Carregando o dataset pré-processado de: cicids2017_preprocessed.csv
|
||||
Treinando o modelo Random Forest...
|
||||
Modelo salvo em: random_forest_model.joblib
|
||||
Avaliando o modelo...
|
||||
Acurácia: 0.9990
|
||||
Precisão: 0.9979
|
||||
Recall: 0.9978
|
||||
F1-score: 0.9978
|
||||
Matriz de confusão:
|
||||
[[710271 431]
|
||||
[ 455 204920]]
|
||||
|
||||
(artigo_final) root@tiago:~/artigo_final# python3 visualize_raw_data_optimized.py
|
||||
Carregando o dataset completo de: cicids2017.csv
|
||||
Dataset carregado com 3056496 linhas e 79 colunas.
|
||||
✅ Coluna de rótulo detectada: 'Label'
|
||||
📊 Coluna numérica selecionada para distribuição: 'Destination_Port'
|
||||
✅ Gráfico de distribuição salvo: visualizations/raw_data_feature_distribution.png
|
||||
✅ Gráfico de distribuição das classes salvo: visualizations/raw_data_label_distribution.png
|
||||
|
||||
(artigo_final) root@tiago:~/artigo_final# python3 visualize_processed_data.py
|
||||
Carregando o dataset pré-processado de: cicids2017_preprocessed.csv
|
||||
✅ Dataset carregado com 3053587 linhas e 71 colunas.
|
||||
✅ Colunas no dataset: Destination_Port, Flow_Duration, Total_Fwd_Packets, Total_Backward_Packets, Total_Length_of_Fwd_Packets, Total_Length_of_Bwd_Packets, Fwd_Packet_Length_Max, Fwd_Packet_Length_Min, Fwd_Packet_Length_Mean, Fwd_Packet_Length_Std, Bwd_Packet_Length_Max, Bwd_Packet_Length_Min, Bwd_Packet_Length_Mean, Bwd_Packet_Length_Std, Flow_Bytes_s, Flow_Packets_s, Flow_IAT_Mean, Flow_IAT_Std, Flow_IAT_Max, Flow_IAT_Min, Fwd_IAT_Total, Fwd_IAT_Mean, Fwd_IAT_Std, Fwd_IAT_Max, Fwd_IAT_Min, Bwd_IAT_Total, Bwd_IAT_Mean, Bwd_IAT_Std, Bwd_IAT_Max, Bwd_IAT_Min, Fwd_PSH_Flags, Fwd_URG_Flags, Fwd_Header_Length, Bwd_Header_Length, Fwd_Packets_s, Bwd_Packets_s, Min_Packet_Length, Max_Packet_Length, Packet_Length_Mean, Packet_Length_Std, Packet_Length_Variance, FIN_Flag_Count, SYN_Flag_Count, RST_Flag_Count, PSH_Flag_Count, ACK_Flag_Count, URG_Flag_Count, CWE_Flag_Count, ECE_Flag_Count, Down_Up_Ratio, Average_Packet_Size, Avg_Fwd_Segment_Size, Avg_Bwd_Segment_Size, Fwd_Header_Length.1, Subflow_Fwd_Packets, Subflow_Fwd_Bytes, Subflow_Bwd_Packets, Subflow_Bwd_Bytes, Init_Win_bytes_forward, Init_Win_bytes_backward, act_data_pkt_fwd, min_seg_size_forward, Active_Mean, Active_Std, Active_Max, Active_Min, Idle_Mean, Idle_Std, Idle_Max, Idle_Min, Label
|
||||
✅ Gráfico de distribuição das classes salvo como visualizations/processed_data_label_distribution.png
|
||||
✅ Gráfico de distribuição da feature 'Destination_Port' salvo como visualizations/processed_data_feature_distribution.png
|
||||
✅ Processamento completo!
|
||||
✅ Gráficos salvos em: 'visualizations/'
|
||||
✅ Total de linhas processadas: 3053587
|
||||
✅ Total de colunas processadas: 71
|
||||
|
||||
(artigo_final) root@tiago:~/artigo_final# python3 interpret_model_with_shap.py
|
||||
Carregando modelo de: random_forest_model.joblib
|
||||
Carregando dados de: cicids2017_preprocessed.csv
|
||||
Gerando explicações SHAP com 10000 amostras...
|
||||
✅ Gráfico de importância (bar) salvo como shap_bar_plot.png
|
||||
✅ Gráfico de importância (summary) salvo como shap_summary_plot.png
|
||||
📌 Feature mais importante: Destination_Port
|
||||
✅ Gráfico de dependência salvo como shap_dependence_plot.png
|
||||
Reference in New Issue
Block a user