{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": { "id": "flexible-doctrine" }, "outputs": [], "source": [ "import numpy as np # linear algebra\n", "import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt\n", "import glob\n", "\n", "from sklearn.metrics import confusion_matrix\n", "import itertools\n", "\n", "from sklearn.metrics import make_scorer, accuracy_score, precision_score, recall_score, f1_score, confusion_matrix, classification_report\n", "\n", "import tensorflow as tf\n", "from tensorflow import keras\n", "from keras.models import Sequential\n", "from keras.layers import Dense, Flatten, Conv1D, MaxPool1D\n", "from keras.initializers import random_uniform\n", "# from keras.layers.advanced_activations import LeakyReLU\n", "from keras.layers import LeakyReLU\n", "from keras.callbacks import EarlyStopping\n", "\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import StandardScaler as SS\n", "\n", "from sklearn.model_selection import train_test_split\n", "from keras.models import Sequential\n", "from keras.preprocessing.text import Tokenizer\n", "from matplotlib import pyplot as plt\n", "# from keras.preprocessing.sequence import pad_sequences\n", "from keras.utils import pad_sequences\n", "from keras.layers import Embedding,Dense,LSTM,Dropout,Flatten,BatchNormalization,Conv1D,GlobalMaxPooling1D,MaxPooling1D\n", "from keras.optimizers import SGD\n", "import matplotlib.pyplot as plt\n", "from keras.regularizers import l2\n", "from keras.optimizers import Adam\n", "from keras import regularizers\n", "from keras.callbacks import EarlyStopping\n", "from sklearn.preprocessing import OneHotEncoder\n", "from keras.preprocessing import sequence\n", "from keras.layers import SimpleRNN\n", "#from hyperas.distributions import uniform\n", "\n", "from keras.utils.np_utils import to_categorical\n", "from keras import regularizers\n", "import pandas as pd\n", "import string\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "# import warnings\n", "import warnings\n", "# filter warnings\n", "warnings.filterwarnings('ignore')" ], "id": "flexible-doctrine" }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "BxiyZY43El_n", "outputId": "48d30922-5465-45dd-fe1d-f73f17086bdd" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mounted at /content/drive\n" ] } ], "source": [ "from google.colab import drive\n", "drive.mount('/content/drive')" ], "id": "BxiyZY43El_n" }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "pointed-reality" }, "outputs": [], "source": [ "dataset = pd.read_csv(\"/content/drive/MyDrive/Datasets/new_data/part-00000-363d1ba3-8ab5-4f96-bc25-4d5862db7cb9-c000.csv\") # use your path" ], "id": "pointed-reality" }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 404 }, "id": "adverse-spread", "outputId": "c8a06563-caed-4cbb-f0b4-0fe75ed1fe98" }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "
\n", " | flow_duration | \n", "Header_Length | \n", "Protocol Type | \n", "Duration | \n", "Rate | \n", "Srate | \n", "Drate | \n", "fin_flag_number | \n", "syn_flag_number | \n", "rst_flag_number | \n", "... | \n", "Std | \n", "Tot size | \n", "IAT | \n", "Number | \n", "Magnitue | \n", "Radius | \n", "Covariance | \n", "Variance | \n", "Weight | \n", "label | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "0.000000 | \n", "54.00 | \n", "6.00 | \n", "64.00 | \n", "0.329807 | \n", "0.329807 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "1.0 | \n", "... | \n", "0.000000 | \n", "54.00 | \n", "8.334383e+07 | \n", "9.5 | \n", "10.392305 | \n", "0.000000 | \n", "0.000000 | \n", "0.00 | \n", "141.55 | \n", "DDoS-RSTFINFlood | \n", "
1 | \n", "0.000000 | \n", "57.04 | \n", "6.33 | \n", "64.00 | \n", "4.290556 | \n", "4.290556 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "2.822973 | \n", "57.04 | \n", "8.292607e+07 | \n", "9.5 | \n", "10.464666 | \n", "4.010353 | \n", "160.987842 | \n", "0.05 | \n", "141.55 | \n", "DoS-TCP_Flood | \n", "
2 | \n", "0.000000 | \n", "0.00 | \n", "1.00 | \n", "64.00 | \n", "33.396799 | \n", "33.396799 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "0.000000 | \n", "42.00 | \n", "8.312799e+07 | \n", "9.5 | \n", "9.165151 | \n", "0.000000 | \n", "0.000000 | \n", "0.00 | \n", "141.55 | \n", "DDoS-ICMP_Flood | \n", "
3 | \n", "0.328175 | \n", "76175.00 | \n", "17.00 | \n", "64.00 | \n", "4642.133010 | \n", "4642.133010 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "0.000000 | \n", "50.00 | \n", "8.301570e+07 | \n", "9.5 | \n", "10.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.00 | \n", "141.55 | \n", "DoS-UDP_Flood | \n", "
4 | \n", "0.117320 | \n", "101.73 | \n", "6.11 | \n", "65.91 | \n", "6.202211 | \n", "6.202211 | \n", "0.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "... | \n", "23.113111 | \n", "57.88 | \n", "8.297300e+07 | \n", "9.5 | \n", "11.346876 | \n", "32.716243 | \n", "3016.808286 | \n", "0.19 | \n", "141.55 | \n", "DoS-SYN_Flood | \n", "
5 rows × 47 columns
\n", "\n", " | flow_duration | \n", "Header_Length | \n", "Protocol Type | \n", "Duration | \n", "Rate | \n", "Srate | \n", "Drate | \n", "fin_flag_number | \n", "syn_flag_number | \n", "rst_flag_number | \n", "... | \n", "AVG | \n", "Std | \n", "Tot size | \n", "IAT | \n", "Number | \n", "Magnitue | \n", "Radius | \n", "Covariance | \n", "Variance | \n", "Weight | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "0.000000 | \n", "54.00 | \n", "6.00 | \n", "64.00 | \n", "0.329807 | \n", "0.329807 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "1.0 | \n", "... | \n", "54.000000 | \n", "0.000000 | \n", "54.00 | \n", "8.334383e+07 | \n", "9.5 | \n", "10.392305 | \n", "0.000000 | \n", "0.000000 | \n", "0.00 | \n", "141.55 | \n", "
1 | \n", "0.000000 | \n", "57.04 | \n", "6.33 | \n", "64.00 | \n", "4.290556 | \n", "4.290556 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "54.796404 | \n", "2.822973 | \n", "57.04 | \n", "8.292607e+07 | \n", "9.5 | \n", "10.464666 | \n", "4.010353 | \n", "160.987842 | \n", "0.05 | \n", "141.55 | \n", "
2 | \n", "0.000000 | \n", "0.00 | \n", "1.00 | \n", "64.00 | \n", "33.396799 | \n", "33.396799 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "42.000000 | \n", "0.000000 | \n", "42.00 | \n", "8.312799e+07 | \n", "9.5 | \n", "9.165151 | \n", "0.000000 | \n", "0.000000 | \n", "0.00 | \n", "141.55 | \n", "
3 | \n", "0.328175 | \n", "76175.00 | \n", "17.00 | \n", "64.00 | \n", "4642.133010 | \n", "4642.133010 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "50.000000 | \n", "0.000000 | \n", "50.00 | \n", "8.301570e+07 | \n", "9.5 | \n", "10.000000 | \n", "0.000000 | \n", "0.000000 | \n", "0.00 | \n", "141.55 | \n", "
4 | \n", "0.117320 | \n", "101.73 | \n", "6.11 | \n", "65.91 | \n", "6.202211 | \n", "6.202211 | \n", "0.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "... | \n", "67.959230 | \n", "23.113111 | \n", "57.88 | \n", "8.297300e+07 | \n", "9.5 | \n", "11.346876 | \n", "32.716243 | \n", "3016.808286 | \n", "0.19 | \n", "141.55 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
238682 | \n", "0.000000 | \n", "54.00 | \n", "6.00 | \n", "64.00 | \n", "3.049186 | \n", "3.049186 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "1.0 | \n", "... | \n", "54.000000 | \n", "0.000000 | \n", "54.00 | \n", "8.334449e+07 | \n", "9.5 | \n", "10.392305 | \n", "0.000000 | \n", "0.000000 | \n", "0.00 | \n", "141.55 | \n", "
238683 | \n", "0.000000 | \n", "54.00 | \n", "6.00 | \n", "64.00 | \n", "183.433732 | \n", "183.433732 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "54.000000 | \n", "0.000000 | \n", "54.00 | \n", "8.331392e+07 | \n", "9.5 | \n", "10.392305 | \n", "0.000000 | \n", "0.000000 | \n", "0.00 | \n", "141.55 | \n", "
238684 | \n", "0.000785 | \n", "56.29 | \n", "6.11 | \n", "64.00 | \n", "306.952216 | \n", "306.952216 | \n", "0.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "... | \n", "54.033219 | \n", "0.140764 | \n", "54.21 | \n", "8.308883e+07 | \n", "9.5 | \n", "10.395538 | \n", "0.200659 | \n", "0.671167 | \n", "0.03 | \n", "141.55 | \n", "
238685 | \n", "0.000901 | \n", "72.09 | \n", "6.11 | \n", "64.64 | \n", "158.475986 | \n", "158.475986 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "54.680248 | \n", "2.450404 | \n", "55.48 | \n", "8.333177e+07 | \n", "9.5 | \n", "10.456522 | \n", "3.475801 | \n", "55.994224 | \n", "0.17 | \n", "141.55 | \n", "
238686 | \n", "0.000000 | \n", "0.00 | \n", "1.00 | \n", "64.00 | \n", "1.291274 | \n", "1.291274 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "42.000000 | \n", "0.000000 | \n", "42.00 | \n", "8.312453e+07 | \n", "9.5 | \n", "9.165151 | \n", "0.000000 | \n", "0.000000 | \n", "0.00 | \n", "141.55 | \n", "
238687 rows × 46 columns
\n", "