Skip to content

Using established ML algorithms to detect anomolous events in security logs.

License

Notifications You must be signed in to change notification settings

AddisonFarley/ML-Network-Security-Logs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Network Intrusion Detection Project

This project utilizes machine learning models to detect anomalies and potential intrusions in network traffic data.

Data Used

Network Intrusion dataset (CIC-IDS- 2017)

Libraries Used

To install: !pip install pandas numpy sklearn matplotlib seaborn

The following Python libraries were used for data processing, machine learning, and visualization:

import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import LabelEncoder, StandardScaler
from sklearn.cluster import KMeans
from sklearn.ensemble import RandomForestClassifier, IsolationForest
from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, confusion_matrix
import matplotlib.pyplot as plt
import seaborn as sns

Data Preprocessing

Data preprocessing involves handling missing values, encoding labels, scaling features, and splitting the data into training and testing sets.

ML Models Used

K-means was evaluated to identify patterns that could indicate normal vs. anomalous network traffic. Evaluation metrics include accuracy, precision, recall, and F1-score.

A Random Forest classifier was evaluated for classification between normal and anomalous traffic, achieving high accuracy with precision, recall, and F1-score as evaluation metrics.

Isolation Forest was evaluated as an unsupervised anomaly detection model, isolating potential anomalies without relying on labeled data. Evaluation metrics include accuracy, precision, recall, and F1-score.

About

Using established ML algorithms to detect anomolous events in security logs.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published