{ "cells": [ { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [], "source": [ "#IMPORTS\n", "\n", "import numpy as np\n", "import random\n", "import tensorflow as tf\n", "import tensorflow.keras as kr\n", "import tensorflow.keras.backend as K\n", "from tensorflow.keras.models import Model\n", "from tensorflow.keras.layers import Input, Conv2D, MaxPooling2D, Flatten, Dense\n", "from tensorflow.keras.datasets import mnist\n", "import os\n", "import csv\n", "\n", "from scipy.spatial.distance import euclidean\n", "from sklearn.metrics import confusion_matrix\n", "\n", "from time import sleep\n", "from tqdm import tqdm\n", "\n", "import copy\n", "import numpy\n", "from sklearn.datasets import make_classification\n", "from sklearn.ensemble import RandomForestClassifier\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import math\n", "import seaborn as sns\n", "from numpy.random import RandomState\n", "import scipy as scp\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.compose import ColumnTransformer\n", "from sklearn.preprocessing import OneHotEncoder, LabelEncoder\n", "from keras.models import Sequential\n", "from keras.layers import Dense\n", "from keras import optimizers\n", "from keras.callbacks import EarlyStopping,ModelCheckpoint\n", "from keras.utils import to_categorical\n", "from keras import backend as K\n", "from itertools import product\n", "from sklearn.metrics import accuracy_score\n", "from sklearn.metrics import precision_score\n", "from sklearn.metrics import recall_score\n", "from sklearn.metrics import f1_score\n", "from sklearn.metrics import roc_auc_score\n", "from sklearn.metrics import confusion_matrix\n", "\n", "from sklearn import mixture\n", "\n", "from mpl_toolkits.mplot3d import Axes3D\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "feature_attacked = [3,5,8]\n", "rs = RandomState(92) #To reproduce the same results each time we run this notebook" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [], "source": [ "#Load dataset into a pandas DataFrame\n", "activity = pd.read_csv(\"D:/explaineblity/activity_3_original.csv\", sep=',')" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [], "source": [ "to_drop = ['subject', 'timestamp', 'heart_rate','activityID']\n", "activity.drop(axis=1, columns=to_drop, inplace=True)" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", " | motion | \n", "temp_hand | \n", "acceleration_16_x_hand | \n", "acceleration_16_y_hand | \n", "acceleration_16_z_hand | \n", "acceleration_6_x_hand | \n", "acceleration_6_y_hand | \n", "acceleration_6_z_hand | \n", "gyroscope_x_hand | \n", "gyroscope_y_hand | \n", "... | \n", "acceleration_16_z_ankle | \n", "acceleration_6_x_ankle | \n", "acceleration_6_y_ankle | \n", "acceleration_6_z_ankle | \n", "gyroscope_x_ankle | \n", "gyroscope_y_ankle | \n", "gyroscope_z_ankle | \n", "magnetometer_x_ankle | \n", "magnetometer_y_ankle | \n", "magnetometer_z_ankle | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "n | \n", "30.375 | \n", "2.21530 | \n", "8.27915 | \n", "5.58753 | \n", "2.24689 | \n", "8.55387 | \n", "5.77143 | \n", "-0.004750 | \n", "0.037579 | \n", "... | \n", "0.095156 | \n", "9.63162 | \n", "-1.76757 | \n", "0.265761 | \n", "0.002908 | \n", "-0.027714 | \n", "0.001752 | \n", "-61.1081 | \n", "-36.8636 | \n", "-58.3696 | \n", "
1 | \n", "n | \n", "30.375 | \n", "2.29196 | \n", "7.67288 | \n", "5.74467 | \n", "2.27373 | \n", "8.14592 | \n", "5.78739 | \n", "-0.171710 | \n", "0.025479 | \n", "... | \n", "-0.020804 | \n", "9.58649 | \n", "-1.75247 | \n", "0.250816 | \n", "0.020882 | \n", "0.000945 | \n", "0.006007 | \n", "-60.8916 | \n", "-36.3197 | \n", "-58.3656 | \n", "
2 | \n", "n | \n", "30.375 | \n", "2.29090 | \n", "7.14240 | \n", "5.82342 | \n", "2.26966 | \n", "7.66268 | \n", "5.78846 | \n", "-0.238241 | \n", "0.011214 | \n", "... | \n", "-0.059173 | \n", "9.60196 | \n", "-1.73721 | \n", "0.356632 | \n", "-0.035392 | \n", "-0.052422 | \n", "-0.004882 | \n", "-60.3407 | \n", "-35.7842 | \n", "-58.6119 | \n", "
3 | \n", "n | \n", "30.375 | \n", "2.21800 | \n", "7.14365 | \n", "5.89930 | \n", "2.22177 | \n", "7.25535 | \n", "5.88000 | \n", "-0.192912 | \n", "0.019053 | \n", "... | \n", "0.094385 | \n", "9.58674 | \n", "-1.78264 | \n", "0.311453 | \n", "-0.032514 | \n", "-0.018844 | \n", "0.026950 | \n", "-60.7646 | \n", "-37.1028 | \n", "-57.8799 | \n", "
4 | \n", "n | \n", "30.375 | \n", "2.30106 | \n", "7.25857 | \n", "6.09259 | \n", "2.20720 | \n", "7.24042 | \n", "5.95555 | \n", "-0.069961 | \n", "-0.018328 | \n", "... | \n", "0.095775 | \n", "9.64677 | \n", "-1.75240 | \n", "0.295902 | \n", "0.001351 | \n", "-0.048878 | \n", "-0.006328 | \n", "-60.2040 | \n", "-37.1225 | \n", "-57.8847 | \n", "
5 rows × 40 columns
\n", "\n", " | temp_hand | \n", "acceleration_16_x_hand | \n", "acceleration_16_y_hand | \n", "acceleration_16_z_hand | \n", "acceleration_6_x_hand | \n", "acceleration_6_y_hand | \n", "acceleration_6_z_hand | \n", "gyroscope_x_hand | \n", "gyroscope_y_hand | \n", "gyroscope_z_hand | \n", "... | \n", "acceleration_6_y_ankle | \n", "acceleration_6_z_ankle | \n", "gyroscope_x_ankle | \n", "gyroscope_y_ankle | \n", "gyroscope_z_ankle | \n", "magnetometer_x_ankle | \n", "magnetometer_y_ankle | \n", "magnetometer_z_ankle | \n", "motion_n | \n", "motion_y | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "30.375 | \n", "2.21530 | \n", "8.27915 | \n", "5.58753 | \n", "2.24689 | \n", "8.55387 | \n", "5.77143 | \n", "-0.004750 | \n", "0.037579 | \n", "-0.011145 | \n", "... | \n", "-1.76757 | \n", "0.265761 | \n", "0.002908 | \n", "-0.027714 | \n", "0.001752 | \n", "-61.1081 | \n", "-36.8636 | \n", "-58.3696 | \n", "1 | \n", "0 | \n", "
1 | \n", "30.375 | \n", "2.29196 | \n", "7.67288 | \n", "5.74467 | \n", "2.27373 | \n", "8.14592 | \n", "5.78739 | \n", "-0.171710 | \n", "0.025479 | \n", "-0.009538 | \n", "... | \n", "-1.75247 | \n", "0.250816 | \n", "0.020882 | \n", "0.000945 | \n", "0.006007 | \n", "-60.8916 | \n", "-36.3197 | \n", "-58.3656 | \n", "1 | \n", "0 | \n", "
2 | \n", "30.375 | \n", "2.29090 | \n", "7.14240 | \n", "5.82342 | \n", "2.26966 | \n", "7.66268 | \n", "5.78846 | \n", "-0.238241 | \n", "0.011214 | \n", "0.000831 | \n", "... | \n", "-1.73721 | \n", "0.356632 | \n", "-0.035392 | \n", "-0.052422 | \n", "-0.004882 | \n", "-60.3407 | \n", "-35.7842 | \n", "-58.6119 | \n", "1 | \n", "0 | \n", "
3 | \n", "30.375 | \n", "2.21800 | \n", "7.14365 | \n", "5.89930 | \n", "2.22177 | \n", "7.25535 | \n", "5.88000 | \n", "-0.192912 | \n", "0.019053 | \n", "0.013374 | \n", "... | \n", "-1.78264 | \n", "0.311453 | \n", "-0.032514 | \n", "-0.018844 | \n", "0.026950 | \n", "-60.7646 | \n", "-37.1028 | \n", "-57.8799 | \n", "1 | \n", "0 | \n", "
4 | \n", "30.375 | \n", "2.30106 | \n", "7.25857 | \n", "6.09259 | \n", "2.20720 | \n", "7.24042 | \n", "5.95555 | \n", "-0.069961 | \n", "-0.018328 | \n", "0.004582 | \n", "... | \n", "-1.75240 | \n", "0.295902 | \n", "0.001351 | \n", "-0.048878 | \n", "-0.006328 | \n", "-60.2040 | \n", "-37.1225 | \n", "-57.8847 | \n", "1 | \n", "0 | \n", "
5 rows × 41 columns
\n", "