Skip to content

Instantly share code, notes, and snippets.

@invegat
Created February 14, 2020 15:45
Show Gist options
  • Save invegat/27f0c3c1ea1617e4a0a0dac364ead660 to your computer and use it in GitHub Desktop.
Save invegat/27f0c3c1ea1617e4a0a0dac364ead660 to your computer and use it in GitHub Desktop.
Neural Networks.ipynb
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "Neural Networks.ipynb",
"provenance": [],
"include_colab_link": true
},
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.6"
},
"latex_envs": {
"LaTeX_envs_menu_present": true,
"autoclose": false,
"autocomplete": true,
"bibliofile": "biblio.bib",
"cite_by": "apalike",
"current_citInitial": 1,
"eqLabelWithNumbers": true,
"eqNumInitial": 1,
"hotkeys": {
"equation": "Ctrl-E",
"itemize": "Ctrl-I"
},
"labels_anchors": false,
"latex_user_defs": false,
"report_style_numbering": false,
"user_envs_cfg": false
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "view-in-github",
"colab_type": "text"
},
"source": [
"<a href=\"https://colab.research.google.com/gist/invegat/27f0c3c1ea1617e4a0a0dac364ead660/neural-networks.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "86HyRi8Osr3U"
},
"source": [
"Neural Network Multilayer Perceptron class that uses backpropagation to update the network's weights with one hidden layer. \n",
"\n",
"Use the Heart Disease dataset from UCI:\n",
"\n",
"[Github Dataset](https://github.com/ryanleeallred/datasets/blob/master/heart.csv)\n",
"\n",
"[Raw File on Github](https://raw.githubusercontent.com/ryanleeallred/datasets/master/heart.csv)\n"
]
},
{
"cell_type": "code",
"metadata": {
"id": "DLM8Pz3cR5Dr",
"colab_type": "code",
"colab": {}
},
"source": [
"\n",
"import numpy as np\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"from sklearn.metrics import confusion_matrix\n",
"from functools import reduce\n",
"import requests\n",
"from sklearn.preprocessing import StandardScaler\n",
"from scipy import optimize"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T18:50:31.590618Z",
"start_time": "2019-04-05T18:50:31.349246Z"
},
"colab_type": "code",
"id": "CNfiajv3v4Ed",
"colab": {}
},
"source": [
"url=\"https://raw.githubusercontent.com/ryanleeallred/datasets/master/heart.csv\"\n",
"df = pd.read_csv(url)"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T18:50:32.015181Z",
"start_time": "2019-04-05T18:50:32.010164Z"
},
"id": "FsTf9lLZ9FL_",
"colab_type": "code",
"colab": {}
},
"source": [
"# df.tail(1000)"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T19:49:57.249588Z",
"start_time": "2019-04-05T19:49:57.230887Z"
},
"id": "8u2oIkS19FMD",
"colab_type": "code",
"colab": {}
},
"source": [
"X = StandardScaler().fit_transform(df.drop('target', axis=1))\n",
"y = df.target.values"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T18:50:33.693778Z",
"start_time": "2019-04-05T18:50:33.687718Z"
},
"id": "htVGnq5U9FMH",
"colab_type": "code",
"outputId": "9e8e90f9-4600-4a8a-ebcc-82cddc87f460",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 33
}
},
"source": [
"X.shape,y.shape,type(X),type(y)"
],
"execution_count": 10,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"((303, 13), (303,), numpy.ndarray, numpy.ndarray)"
]
},
"metadata": {
"tags": []
},
"execution_count": 10
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T18:50:34.329377Z",
"start_time": "2019-04-05T18:50:34.318712Z"
},
"id": "aNRe88lK9FML",
"colab_type": "code",
"outputId": "754e7b1b-e071-48b2-c50a-f623d8e2167e",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 33
}
},
"source": [
"df.target.unique()"
],
"execution_count": 11,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array([1, 0])"
]
},
"metadata": {
"tags": []
},
"execution_count": 11
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T18:55:44.614016Z",
"start_time": "2019-04-05T18:55:44.596978Z"
},
"id": "SaoVH7XV9FMP",
"colab_type": "code",
"colab": {}
},
"source": [
"class Neural_Network(object):\n",
" def __init__(self):\n",
" self.inputs = X.shape[1]\n",
" self.hiddenNodes = 3\n",
" self.outputNodes = 1\n",
" self.L1_weights = np.random.randn(self.inputs, self.hiddenNodes) # (2x3)\n",
" self.L2_weights = np.random.randn(self.hiddenNodes, self.outputNodes) # (3x1)\n",
" self.min_y = 0.1\n",
" def feed_forward(self, X):\n",
" # Weighted sum between inputs and hidden layer\n",
" self.hidden_sum = np.dot(X, self.L1_weights)\n",
" # Activations of weighted sum\n",
" self.activated_hidden = self.sigmoid(self.hidden_sum)\n",
" # Weighted sum between hidden and output\n",
" self.output_sum = np.dot(self.activated_hidden, self.L2_weights)\n",
" # final activation of output\n",
" self.activated_output = self.sigmoid(self.output_sum)\n",
"# print('ot',self.activated_output.shape)\n",
" nd = np.ndarray((X.shape[0],1), dtype=int)\n",
" for i,x in enumerate(self.activated_output):\n",
" nd[i] = 1 if x > self.min_y else 0\n",
" return nd\n",
"\n",
" def sigmoid(self, s):\n",
" return 1/(1+np.exp(-s)) \n",
" \n",
" def sigmoidPrime(self,z):\n",
" #Gradient of sigmoid\n",
" return np.exp(-z)/((1+np.exp(-z))**2)\n",
" \n",
" def backward(self, X, y, o):\n",
" # backward propgate through the network\n",
" self.o_error = y.reshape(y.shape[0],1) - o # error in output\n",
" self.o_delta = self.o_error*self.sigmoidPrime(o) # applying derivative of sigmoid to error\n",
" self.z2_error = self.o_delta * (self.L2_weights.T) # z2 error: how much our hidden layer weights contributed to output error\n",
" self.z2_delta = self.z2_error*self.sigmoidPrime(self.activated_hidden) # applying derivative of sigmoid to z2 error\n",
"\n",
" self.L1_weights += X.T.dot(self.z2_delta) # adjusting first set (input --> hidden) weights\n",
" self.L2_weights += self.activated_hidden.T.dot(self.o_delta) # adjusting second set (hidden --> output) weights\n",
"\n",
" def train (self, X, y):\n",
" o = self.feed_forward(X)\n",
" self.backward(X, y, o) "
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T18:55:48.032720Z",
"start_time": "2019-04-05T18:55:48.028143Z"
},
"id": "DRRdtQSl9FMU",
"colab_type": "code",
"outputId": "5b567ad3-aba5-46f6-d4c4-8a0d1ac5b38f",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 266
}
},
"source": [
"NN = Neural_Network()\n",
"output = NN.feed_forward(X[0:3])\n",
"print(\"output: \", output)\n",
"print(X[0:4])"
],
"execution_count": 13,
"outputs": [
{
"output_type": "stream",
"text": [
"output: [[1]\n",
" [1]\n",
" [1]]\n",
"[[ 0.9521966 0.68100522 1.97312292 0.76395577 -0.25633371 2.394438\n",
" -1.00583187 0.01544279 -0.69663055 1.08733806 -2.27457861 -0.71442887\n",
" -2.14887271]\n",
" [-1.91531289 0.68100522 1.00257707 -0.09273778 0.07219949 -0.41763453\n",
" 0.89896224 1.63347147 -0.69663055 2.12257273 -2.27457861 -0.71442887\n",
" -0.51292188]\n",
" [-1.47415758 -1.46841752 0.03203122 -0.09273778 -0.81677269 -0.41763453\n",
" -1.00583187 0.97751389 -0.69663055 0.31091206 0.97635214 -0.71442887\n",
" -0.51292188]\n",
" [ 0.18017482 0.68100522 0.03203122 -0.66386682 -0.19835726 -0.41763453\n",
" 0.89896224 1.23989692 -0.69663055 -0.20670527 0.97635214 -0.71442887\n",
" -0.51292188]]\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T18:55:56.941846Z",
"start_time": "2019-04-05T18:55:56.278837Z"
},
"id": "cCysI5pA9FMZ",
"colab_type": "code",
"outputId": "3849672a-ce85-4909-a62e-2ef9983afb5e",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
}
},
"source": [
"NN = Neural_Network()\n",
"for i in range(1000): # trains the NN 1,000 times\n",
" if i+1 in [1,2,3,4,5] or (i+1) % 50 == 0:\n",
" print('+---------- EPOCH', i+1, '-----------+')\n",
"# print(\"Input: \\n\", X) \n",
"# print(\"Actual Output: \\n\", y) \n",
"# print(\"Predicted Output: \\n\" + str(NN.feed_forward(X))) \n",
" print(\"Loss: \\n\" + str(np.mean(np.square(y - NN.feed_forward(X))))) # mean sum squared loss\n",
" print(\"\\n\")\n",
" NN.train(X, y)"
],
"execution_count": 14,
"outputs": [
{
"output_type": "stream",
"text": [
"+---------- EPOCH 1 -----------+\n",
"Loss: \n",
"0.45544554455445546\n",
"\n",
"\n",
"+---------- EPOCH 2 -----------+\n",
"Loss: \n",
"0.5445544554455446\n",
"\n",
"\n",
"+---------- EPOCH 3 -----------+\n",
"Loss: \n",
"0.4569159886285658\n",
"\n",
"\n",
"+---------- EPOCH 4 -----------+\n",
"Loss: \n",
"0.49632388981472403\n",
"\n",
"\n",
"+---------- EPOCH 5 -----------+\n",
"Loss: \n",
"0.4957357121850799\n",
"\n",
"\n",
"+---------- EPOCH 50 -----------+\n",
"Loss: \n",
"0.4933830016665033\n",
"\n",
"\n",
"+---------- EPOCH 100 -----------+\n",
"Loss: \n",
"0.49514753455543575\n",
"\n",
"\n",
"+---------- EPOCH 150 -----------+\n",
"Loss: \n",
"0.4919125575923929\n",
"\n",
"\n",
"+---------- EPOCH 200 -----------+\n",
"Loss: \n",
"0.4957357121850799\n",
"\n",
"\n"
],
"name": "stdout"
},
{
"output_type": "stream",
"text": [
"/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:25: RuntimeWarning: overflow encountered in exp\n"
],
"name": "stderr"
},
{
"output_type": "stream",
"text": [
"+---------- EPOCH 250 -----------+\n",
"Loss: \n",
"0.4948534457406137\n",
"\n",
"\n",
"+---------- EPOCH 300 -----------+\n",
"Loss: \n",
"0.5001470444074111\n",
"\n",
"\n",
"+---------- EPOCH 350 -----------+\n",
"Loss: \n",
"0.47162042936966964\n",
"\n",
"\n",
"+---------- EPOCH 400 -----------+\n",
"Loss: \n",
"0.49514753455543575\n",
"\n",
"\n",
"+---------- EPOCH 450 -----------+\n",
"Loss: \n",
"0.4869130477404176\n",
"\n",
"\n",
"+---------- EPOCH 500 -----------+\n",
"Loss: \n",
"0.49632388981472403\n",
"\n",
"\n",
"+---------- EPOCH 550 -----------+\n",
"Loss: \n",
"0.4877953141848838\n",
"\n",
"\n",
"+---------- EPOCH 600 -----------+\n",
"Loss: \n",
"0.4886775806293501\n",
"\n",
"\n",
"+---------- EPOCH 650 -----------+\n",
"Loss: \n",
"0.45544554455445546\n",
"\n",
"\n",
"+---------- EPOCH 700 -----------+\n",
"Loss: \n",
"0.5369081462601706\n",
"\n",
"\n",
"+---------- EPOCH 750 -----------+\n",
"Loss: \n",
"0.4907362023331046\n",
"\n",
"\n",
"+---------- EPOCH 800 -----------+\n",
"Loss: \n",
"0.4939711792961474\n",
"\n",
"\n",
"+---------- EPOCH 850 -----------+\n",
"Loss: \n",
"0.49367709048132535\n",
"\n",
"\n",
"+---------- EPOCH 900 -----------+\n",
"Loss: \n",
"0.4819135378884423\n",
"\n",
"\n",
"+---------- EPOCH 950 -----------+\n",
"Loss: \n",
"0.48661895892559554\n",
"\n",
"\n",
"+---------- EPOCH 1000 -----------+\n",
"Loss: \n",
"0.45544554455445546\n",
"\n",
"\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "GGT1oRzXw3H9"
},
"source": [
"## 4) Multilayer Perceptron architecture using the Keras library.\n",
"\n",
"Use the Heart Disease Dataset (binary classification)\n"
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T19:55:17.329769Z",
"start_time": "2019-04-05T19:55:17.317108Z"
},
"id": "01Yrrne79FMd",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 78
},
"outputId": "cd0c0c30-3e06-4d17-f477-152305692de9"
},
"source": [
"from keras.models import Sequential\n",
"from keras.layers import Dense\n",
"from keras import optimizers\n",
"import numpy\n",
"# fix random seed for reproducibility\n",
"numpy.random.seed(42)\n",
"from sklearn.metrics import mean_squared_error\n",
"from sklearn.linear_model import LinearRegression\n",
"import seaborn as sns\n",
"import pandas as pd\n",
"import numpy as np\n",
"from sklearn.preprocessing import StandardScaler\n",
"from keras.callbacks import ReduceLROnPlateau\n",
"from sklearn.model_selection import GridSearchCV\n",
"from keras.wrappers.scikit_learn import KerasClassifier"
],
"execution_count": 15,
"outputs": [
{
"output_type": "stream",
"text": [
"Using TensorFlow backend.\n"
],
"name": "stderr"
},
{
"output_type": "display_data",
"data": {
"text/html": [
"<p style=\"color: red;\">\n",
"The default version of TensorFlow in Colab will soon switch to TensorFlow 2.x.<br>\n",
"We recommend you <a href=\"https://www.tensorflow.org/guide/migrate\" target=\"_blank\">upgrade</a> now \n",
"or ensure your notebook will continue to use TensorFlow 1.x via the <code>%tensorflow_version 1.x</code> magic:\n",
"<a href=\"https://colab.research.google.com/notebooks/tensorflow_version.ipynb\" target=\"_blank\">more info</a>.</p>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T19:55:18.220942Z",
"start_time": "2019-04-05T19:55:18.208657Z"
},
"id": "yOfvCnj29FMh",
"colab_type": "code",
"outputId": "31b40695-acb3-4d26-c272-0074741c13b6",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 33
}
},
"source": [
"X.shape,y.shape,type(X),type(y)"
],
"execution_count": 16,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"((303, 13), (303,), numpy.ndarray, numpy.ndarray)"
]
},
"metadata": {
"tags": []
},
"execution_count": 16
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T20:25:13.171454Z",
"start_time": "2019-04-05T20:25:13.137673Z"
},
"colab_type": "code",
"id": "XWw4IYxLxKwH",
"colab": {}
},
"source": [
"opt = optimizers.adam(lr=0.1)"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T19:55:21.356819Z",
"start_time": "2019-04-05T19:55:21.349944Z"
},
"id": "4PtNVqvh9FMr",
"colab_type": "code",
"colab": {}
},
"source": [
"reduce_lr = ReduceLROnPlateau(monitor='val_loss', factor=0.2,\n",
" patience=5, min_lr=0.001)"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T21:40:37.367250Z",
"start_time": "2019-04-05T21:40:37.355632Z"
},
"id": "8GVBHgdl9FMu",
"colab_type": "code",
"colab": {}
},
"source": [
"# Important Hyperparameters\n",
"inputs = X.shape[1]\n",
"epochs = 50\n",
"batch_size = 10\n",
"\n",
"def create_model(shape=13):\n",
" # Create Model\n",
" model = Sequential()\n",
" model.add(Dense(3, activation='relu', input_shape=(shape,)))\n",
" model.add(Dense(2, activation='relu'))\n",
" model.add(Dense(1, activation='sigmoid'))\n",
" # Compile Model \n",
" model.compile(optimizer=optimizers.adam(lr=0.1), loss='binary_crossentropy', metrics=['accuracy'])\n",
" return model"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T21:37:51.606086Z",
"start_time": "2019-04-05T21:37:30.003730Z"
},
"id": "Q4Swa4G19FMy",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 520
},
"outputId": "03e9be8a-ed4f-4439-8fba-51761312ff11"
},
"source": [
"model = create_model(X.shape[1])\n",
"# Fit Model\n",
"history = model.fit(X, y, validation_split=0.20, epochs=epochs,\n",
" batch_size=batch_size, verbose=0, callbacks=[reduce_lr])"
],
"execution_count": 20,
"outputs": [
{
"output_type": "stream",
"text": [
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:66: The name tf.get_default_graph is deprecated. Please use tf.compat.v1.get_default_graph instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:541: The name tf.placeholder is deprecated. Please use tf.compat.v1.placeholder instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:4432: The name tf.random_uniform is deprecated. Please use tf.random.uniform instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/optimizers.py:793: The name tf.train.Optimizer is deprecated. Please use tf.compat.v1.train.Optimizer instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:3657: The name tf.log is deprecated. Please use tf.math.log instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/tensorflow_core/python/ops/nn_impl.py:183: where (from tensorflow.python.ops.array_ops) is deprecated and will be removed in a future version.\n",
"Instructions for updating:\n",
"Use tf.where in 2.0, which has the same broadcast rule as np.where\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:1033: The name tf.assign_add is deprecated. Please use tf.compat.v1.assign_add instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:1020: The name tf.assign is deprecated. Please use tf.compat.v1.assign instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:3005: The name tf.Session is deprecated. Please use tf.compat.v1.Session instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:190: The name tf.get_default_session is deprecated. Please use tf.compat.v1.get_default_session instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:197: The name tf.ConfigProto is deprecated. Please use tf.compat.v1.ConfigProto instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:207: The name tf.global_variables is deprecated. Please use tf.compat.v1.global_variables instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:216: The name tf.is_variable_initialized is deprecated. Please use tf.compat.v1.is_variable_initialized instead.\n",
"\n",
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:223: The name tf.variables_initializer is deprecated. Please use tf.compat.v1.variables_initializer instead.\n",
"\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T21:38:02.551678Z",
"start_time": "2019-04-05T21:38:02.127790Z"
},
"id": "oilRyKCt9FM2",
"colab_type": "code",
"outputId": "21144200-5f52-4c4a-f715-311095f3a481",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 851
}
},
"source": [
"plt.plot(history.history['acc'])\n",
"plt.plot(history.history['val_acc'])\n",
"plt.title('Accuracy')\n",
"plt.ylabel('Accuracy')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['Train', 'Test'], loc='upper left')\n",
"plt.show()\n",
"\n",
"# Plot training & validation loss values\n",
"plt.plot(history.history['loss'])\n",
"plt.plot(history.history['val_loss'])\n",
"plt.title('Model loss')\n",
"plt.ylabel('Loss')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['Train', 'Test'], loc='upper left')\n",
"plt.show()\n",
"\n",
"plt.plot(history.history['lr'])\n",
"plt.title('Learning Rate')\n",
"plt.ylabel('Learning Rate')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['Train'], loc='upper left')\n",
"plt.show()"
],
"execution_count": 21,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\ngg==\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
},
{
"output_type": "display_data",
"data": {
"image/png": "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\n/X95KNX+q9hIhQAAAABJRU5ErkJggg==\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
},
{
"output_type": "display_data",
"data": {
"image/png": "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\nTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T21:38:03.646225Z",
"start_time": "2019-04-05T21:38:03.641258Z"
},
"id": "CXOGZXbg9FM6",
"colab_type": "code",
"outputId": "87f83733-9742-48f2-bbfa-6af908d96805",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 33
}
},
"source": [
"history.history['val_acc'][-1], history.history['acc'][-1]"
],
"execution_count": 22,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"(0.6557377049180327, 0.9338842916094567)"
]
},
"metadata": {
"tags": []
},
"execution_count": 22
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T21:38:17.904072Z",
"start_time": "2019-04-05T21:38:17.899991Z"
},
"id": "D8v8HUUy9FM-",
"colab_type": "code",
"outputId": "5bb455ad-d2fb-435a-aff5-19ce8205b9d5",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 33
}
},
"source": [
"X.shape"
],
"execution_count": 23,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"(303, 13)"
]
},
"metadata": {
"tags": []
},
"execution_count": 23
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T22:40:22.367080Z",
"start_time": "2019-04-05T22:31:32.952986Z"
},
"id": "LZcYLBXp9FNC",
"colab_type": "code",
"colab": {}
},
"source": [
"Y = y\n",
"# create model\n",
"model = KerasClassifier(build_fn=create_model, shape=X.shape[1], verbose=0)\n",
"# define the grid search parameters\n",
"# batch_size = [10, 20, 40, 60, 80, 100]\n",
"# epochs = [20]\n",
"# param_grid = dict(batch_size=batch_size, epochs=epochs)\n",
"\n",
"# define the grid search parameters\n",
"param_grid = {'batch_size': [40, 45, 50, 55, 60], 'epochs': [50]}\n",
"\n",
"# Create Grid Search\n",
"grid = GridSearchCV(estimator=model, param_grid=param_grid, n_jobs=1)\n",
"grid_result = grid.fit(X, Y)"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T22:51:01.173189Z",
"start_time": "2019-04-05T22:51:01.168292Z"
},
"id": "fRXq4EzU9FNG",
"colab_type": "code",
"outputId": "393dafd8-650a-4479-c468-4ae68e8eb015",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 116
}
},
"source": [
"# Report Results\n",
"print(f\"Best: {grid_result.best_score_} using {grid_result.best_params_}\")\n",
"means = grid_result.cv_results_['mean_test_score']\n",
"stds = grid_result.cv_results_['std_test_score']\n",
"params = grid_result.cv_results_['params']\n",
"for mean, stdev, param in zip(means, stds, params):\n",
" print(f\"Means: {mean}, Stdev: {stdev} with: {param}\") "
],
"execution_count": 25,
"outputs": [
{
"output_type": "stream",
"text": [
"Best: 0.7919125723627095 using {'batch_size': 55, 'epochs': 50}\n",
"Means: 0.5815847016423127, Stdev: 0.2974554214778542 with: {'batch_size': 40, 'epochs': 50}\n",
"Means: 0.7091803424671047, Stdev: 0.0519308512534881 with: {'batch_size': 45, 'epochs': 50}\n",
"Means: 0.7024590198459522, Stdev: 0.13210713076149147 with: {'batch_size': 50, 'epochs': 50}\n",
"Means: 0.7919125723627095, Stdev: 0.09605146865127275 with: {'batch_size': 55, 'epochs': 50}\n",
"Means: 0.6865027212705768, Stdev: 0.09538636151438595 with: {'batch_size': 60, 'epochs': 50}\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T00:44:36.877795Z",
"start_time": "2019-04-06T00:26:24.497017Z"
},
"id": "ppyqbT0e9FNJ",
"colab_type": "code",
"outputId": "6274708d-57af-44d0-e843-67dd79339ce8",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 166
}
},
"source": [
"# define the grid search parameters\n",
"activation = [\n",
" 'softmax', 'softplus', 'softsign', 'relu', 'tanh', 'sigmoid',\n",
" 'hard_sigmoid', 'linear'\n",
"]\n",
"param_grid = dict(activation=activation)\n",
"shape = X.shape[1]\n",
"\n",
"# Function to create model, required for KerasClassifier\n",
"def create_model(activation='relu'):\n",
" # create model\n",
" model = Sequential()\n",
" model.add(Dense(shape, input_dim=shape, activation=activation))\n",
" model.add(Dense(5, activation='relu'))\n",
" model.add(Dense(1, activation='sigmoid'))\n",
" # Compile model\n",
" model.compile(\n",
" loss='binary_crossentropy', optimizer=opt, metrics=['accuracy'])\n",
" return model\n",
"\n",
"\n",
"# create model\n",
"model = KerasClassifier(\n",
" build_fn=create_model, epochs=20, batch_size=60, verbose=0)\n",
"\n",
"# Create Grid Search\n",
"grid = GridSearchCV(estimator=model, param_grid=param_grid, n_jobs=1)\n",
"grid_result = grid.fit(X, Y)\n",
"\n",
"# Report Results\n",
"print(f\"Best: {grid_result.best_score_} using {grid_result.best_params_}\")\n",
"means = grid_result.cv_results_['mean_test_score']\n",
"stds = grid_result.cv_results_['std_test_score']\n",
"params = grid_result.cv_results_['params']\n",
"for mean, stdev, param in zip(means, stds, params):\n",
" print(f\"Means: {mean}, Stdev: {stdev} with: {param}\")"
],
"execution_count": 26,
"outputs": [
{
"output_type": "stream",
"text": [
"Best: 0.8114207760232393 using {'activation': 'softplus'}\n",
"Means: 0.755300551946046, Stdev: 0.06987735771562552 with: {'activation': 'softmax'}\n",
"Means: 0.8114207760232393, Stdev: 0.05843684348308809 with: {'activation': 'softplus'}\n",
"Means: 0.7322950945525873, Stdev: 0.14809371733800605 with: {'activation': 'softsign'}\n",
"Means: 0.36721311065017204, Stdev: 0.3764928122820297 with: {'activation': 'relu'}\n",
"Means: 0.6831694028416618, Stdev: 0.0891123512963795 with: {'activation': 'tanh'}\n",
"Means: 0.5361202193088219, Stdev: 0.2943305761663677 with: {'activation': 'sigmoid'}\n",
"Means: 0.6250273208149144, Stdev: 0.314331530298738 with: {'activation': 'hard_sigmoid'}\n",
"Means: 0.6385245909456347, Stdev: 0.3310136058283495 with: {'activation': 'linear'}\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:31:34.377457Z",
"start_time": "2019-04-06T02:06:38.383239Z"
},
"id": "Wolxiv1D9FNN",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 166
},
"outputId": "6a8153f2-0121-42a7-fdfe-b6cc28953b5f"
},
"source": [
"def create_model(activation='relu'):\n",
" # create model\n",
" model = Sequential()\n",
" model.add(Dense(X.shape[1], input_dim=X.shape[1], activation=activation))\n",
" model.add(Dense(5, activation='relu'))\n",
" model.add(Dense(1, activation='sigmoid'))\n",
" # Compile model\n",
" model.compile(\n",
" loss='binary_crossentropy', optimizer=opt, metrics=['accuracy'])\n",
" return model\n",
"\n",
"\n",
"# create model\n",
"model = KerasClassifier(\n",
" build_fn=create_model, epochs=20, batch_size=60, verbose=0)\n",
"\n",
"# Create Grid Search\n",
"grid = GridSearchCV(estimator=model, param_grid=param_grid, n_jobs=1)\n",
"grid_result = grid.fit(X, Y)\n",
"\n",
"# Report Results\n",
"print(f\"Best: {grid_result.best_score_} using {grid_result.best_params_}\")\n",
"means = grid_result.cv_results_['mean_test_score']\n",
"stds = grid_result.cv_results_['std_test_score']\n",
"params = grid_result.cv_results_['params']\n",
"for mean, stdev, param in zip(means, stds, params):\n",
" print(f\"Means: {mean}, Stdev: {stdev} with: {param}\")"
],
"execution_count": 28,
"outputs": [
{
"output_type": "stream",
"text": [
"Best: 0.811967212450309 using {'activation': 'softmax'}\n",
"Means: 0.811967212450309, Stdev: 0.0831902240953157 with: {'activation': 'softmax'}\n",
"Means: 0.5520218516959519, Stdev: 0.3181898067162338 with: {'activation': 'softplus'}\n",
"Means: 0.7558470000986193, Stdev: 0.1386771467444183 with: {'activation': 'softsign'}\n",
"Means: 0.7660109459376726, Stdev: 0.2447802439362492 with: {'activation': 'relu'}\n",
"Means: 0.6665573817784669, Stdev: 0.14190927265516926 with: {'activation': 'tanh'}\n",
"Means: 0.6481967095468866, Stdev: 0.3297676109057913 with: {'activation': 'sigmoid'}\n",
"Means: 0.5771584564056552, Stdev: 0.29638335613222216 with: {'activation': 'hard_sigmoid'}\n",
"Means: 0.6834426297516119, Stdev: 0.2968708953228772 with: {'activation': 'linear'}\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:31:34.731750Z",
"start_time": "2019-04-06T02:31:34.379700Z"
},
"id": "ZC6B8qJc9FNR",
"colab_type": "code",
"colab": {}
},
"source": [
"df = pd.read_csv(url)\n",
"X = StandardScaler().fit_transform(df.drop('target', axis=1))\n",
"y = df.target.values"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:49:30.768185Z",
"start_time": "2019-04-06T02:49:30.753214Z"
},
"id": "lSnHP1BA9FNV",
"colab_type": "code",
"colab": {}
},
"source": [
"# Important Hyperparameters\n",
"inputs = X.shape[1]\n",
"epochs = 50\n",
"batch_size = 55\n",
"activation = \"softsign\"\n",
"\n",
"def create_model(shape = inputs):\n",
" # Create Model\n",
" model = Sequential()\n",
" model.add(Dense(shape, activation=activation, input_shape=(shape,)))\n",
" model.add(Dense(2, activation='relu'))\n",
" model.add(Dense(1, activation=\"sigmoid\"))\n",
" # Compile Model \n",
" model.compile(optimizer=optimizers.adam(lr=0.1), loss='binary_crossentropy', metrics=['accuracy'])\n",
" return model"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:50:48.572591Z",
"start_time": "2019-04-06T02:49:33.391597Z"
},
"id": "oxwXg2XD9FNY",
"colab_type": "code",
"outputId": "570c3ee1-fabf-4896-da07-8c9c61abc7d3",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
}
},
"source": [
"# model = KerasClassifier(build_fn=create_model, epochs=50, batch_size=20, verbose=1)\n",
"model = create_model()\n",
"history = model.fit(X, y, validation_split=0.20, epochs=epochs,\n",
" batch_size=batch_size, verbose=1, callbacks=[reduce_lr])"
],
"execution_count": 31,
"outputs": [
{
"output_type": "stream",
"text": [
"Train on 242 samples, validate on 61 samples\n",
"Epoch 1/50\n",
"242/242 [==============================] - 9s 35ms/step - loss: 0.5607 - acc: 0.7273 - val_loss: 0.8427 - val_acc: 0.6393\n",
"Epoch 2/50\n",
"242/242 [==============================] - 0s 98us/step - loss: 0.3376 - acc: 0.8595 - val_loss: 0.9942 - val_acc: 0.6393\n",
"Epoch 3/50\n",
"242/242 [==============================] - 0s 85us/step - loss: 0.3155 - acc: 0.8719 - val_loss: 0.8713 - val_acc: 0.6230\n",
"Epoch 4/50\n",
"242/242 [==============================] - 0s 84us/step - loss: 0.2842 - acc: 0.8926 - val_loss: 0.7200 - val_acc: 0.6230\n",
"Epoch 5/50\n",
"242/242 [==============================] - 0s 80us/step - loss: 0.2684 - acc: 0.8926 - val_loss: 0.8198 - val_acc: 0.6557\n",
"Epoch 6/50\n",
"242/242 [==============================] - 0s 86us/step - loss: 0.2469 - acc: 0.9008 - val_loss: 1.0252 - val_acc: 0.6393\n",
"Epoch 7/50\n",
"242/242 [==============================] - 0s 89us/step - loss: 0.2435 - acc: 0.9091 - val_loss: 1.0939 - val_acc: 0.5902\n",
"Epoch 8/50\n",
"242/242 [==============================] - 0s 76us/step - loss: 0.2301 - acc: 0.9132 - val_loss: 1.0968 - val_acc: 0.5574\n",
"Epoch 9/50\n",
"242/242 [==============================] - 0s 85us/step - loss: 0.2200 - acc: 0.9174 - val_loss: 1.0343 - val_acc: 0.5574\n",
"Epoch 10/50\n",
"242/242 [==============================] - 0s 97us/step - loss: 0.2113 - acc: 0.9174 - val_loss: 1.0351 - val_acc: 0.5574\n",
"Epoch 11/50\n",
"242/242 [==============================] - 0s 91us/step - loss: 0.2085 - acc: 0.9174 - val_loss: 1.0434 - val_acc: 0.5574\n",
"Epoch 12/50\n",
"242/242 [==============================] - 0s 88us/step - loss: 0.2049 - acc: 0.9174 - val_loss: 1.0653 - val_acc: 0.5574\n",
"Epoch 13/50\n",
"242/242 [==============================] - 0s 80us/step - loss: 0.2022 - acc: 0.9174 - val_loss: 1.0829 - val_acc: 0.5574\n",
"Epoch 14/50\n",
"242/242 [==============================] - 0s 79us/step - loss: 0.2002 - acc: 0.9174 - val_loss: 1.1105 - val_acc: 0.5574\n",
"Epoch 15/50\n",
"242/242 [==============================] - 0s 87us/step - loss: 0.1975 - acc: 0.9215 - val_loss: 1.1141 - val_acc: 0.5574\n",
"Epoch 16/50\n",
"242/242 [==============================] - 0s 81us/step - loss: 0.1969 - acc: 0.9256 - val_loss: 1.1172 - val_acc: 0.5574\n",
"Epoch 17/50\n",
"242/242 [==============================] - 0s 73us/step - loss: 0.1965 - acc: 0.9256 - val_loss: 1.1197 - val_acc: 0.5574\n",
"Epoch 18/50\n",
"242/242 [==============================] - 0s 82us/step - loss: 0.1957 - acc: 0.9256 - val_loss: 1.1180 - val_acc: 0.5574\n",
"Epoch 19/50\n",
"242/242 [==============================] - 0s 83us/step - loss: 0.1948 - acc: 0.9256 - val_loss: 1.1148 - val_acc: 0.5574\n",
"Epoch 20/50\n",
"242/242 [==============================] - 0s 78us/step - loss: 0.1943 - acc: 0.9256 - val_loss: 1.1146 - val_acc: 0.5574\n",
"Epoch 21/50\n",
"242/242 [==============================] - 0s 89us/step - loss: 0.1942 - acc: 0.9256 - val_loss: 1.1141 - val_acc: 0.5574\n",
"Epoch 22/50\n",
"242/242 [==============================] - 0s 78us/step - loss: 0.1939 - acc: 0.9256 - val_loss: 1.1139 - val_acc: 0.5574\n",
"Epoch 23/50\n",
"242/242 [==============================] - 0s 78us/step - loss: 0.1937 - acc: 0.9256 - val_loss: 1.1145 - val_acc: 0.5574\n",
"Epoch 24/50\n",
"242/242 [==============================] - 0s 78us/step - loss: 0.1935 - acc: 0.9256 - val_loss: 1.1143 - val_acc: 0.5574\n",
"Epoch 25/50\n",
"242/242 [==============================] - 0s 81us/step - loss: 0.1934 - acc: 0.9256 - val_loss: 1.1154 - val_acc: 0.5574\n",
"Epoch 26/50\n",
"242/242 [==============================] - 0s 78us/step - loss: 0.1932 - acc: 0.9256 - val_loss: 1.1172 - val_acc: 0.5574\n",
"Epoch 27/50\n",
"242/242 [==============================] - 0s 81us/step - loss: 0.1930 - acc: 0.9256 - val_loss: 1.1169 - val_acc: 0.5574\n",
"Epoch 28/50\n",
"242/242 [==============================] - 0s 93us/step - loss: 0.1929 - acc: 0.9256 - val_loss: 1.1167 - val_acc: 0.5574\n",
"Epoch 29/50\n",
"242/242 [==============================] - 0s 79us/step - loss: 0.1927 - acc: 0.9256 - val_loss: 1.1175 - val_acc: 0.5574\n",
"Epoch 30/50\n",
"242/242 [==============================] - 0s 73us/step - loss: 0.1925 - acc: 0.9256 - val_loss: 1.1187 - val_acc: 0.5574\n",
"Epoch 31/50\n",
"242/242 [==============================] - 0s 79us/step - loss: 0.1924 - acc: 0.9256 - val_loss: 1.1202 - val_acc: 0.5574\n",
"Epoch 32/50\n",
"242/242 [==============================] - 0s 78us/step - loss: 0.1922 - acc: 0.9256 - val_loss: 1.1209 - val_acc: 0.5574\n",
"Epoch 33/50\n",
"242/242 [==============================] - 0s 78us/step - loss: 0.1921 - acc: 0.9256 - val_loss: 1.1217 - val_acc: 0.5574\n",
"Epoch 34/50\n",
"242/242 [==============================] - 0s 82us/step - loss: 0.1919 - acc: 0.9256 - val_loss: 1.1215 - val_acc: 0.5574\n",
"Epoch 35/50\n",
"242/242 [==============================] - 0s 76us/step - loss: 0.1918 - acc: 0.9256 - val_loss: 1.1215 - val_acc: 0.5574\n",
"Epoch 36/50\n",
"242/242 [==============================] - 0s 87us/step - loss: 0.1916 - acc: 0.9256 - val_loss: 1.1217 - val_acc: 0.5574\n",
"Epoch 37/50\n",
"242/242 [==============================] - 0s 90us/step - loss: 0.1915 - acc: 0.9256 - val_loss: 1.1228 - val_acc: 0.5574\n",
"Epoch 38/50\n",
"242/242 [==============================] - 0s 96us/step - loss: 0.1914 - acc: 0.9256 - val_loss: 1.1228 - val_acc: 0.5574\n",
"Epoch 39/50\n",
"242/242 [==============================] - 0s 85us/step - loss: 0.1911 - acc: 0.9256 - val_loss: 1.1239 - val_acc: 0.5574\n",
"Epoch 40/50\n",
"242/242 [==============================] - 0s 81us/step - loss: 0.1910 - acc: 0.9256 - val_loss: 1.1235 - val_acc: 0.5574\n",
"Epoch 41/50\n",
"242/242 [==============================] - 0s 87us/step - loss: 0.1908 - acc: 0.9256 - val_loss: 1.1235 - val_acc: 0.5410\n",
"Epoch 42/50\n",
"242/242 [==============================] - 0s 80us/step - loss: 0.1906 - acc: 0.9256 - val_loss: 1.1250 - val_acc: 0.5410\n",
"Epoch 43/50\n",
"242/242 [==============================] - 0s 78us/step - loss: 0.1905 - acc: 0.9256 - val_loss: 1.1260 - val_acc: 0.5410\n",
"Epoch 44/50\n",
"242/242 [==============================] - 0s 80us/step - loss: 0.1904 - acc: 0.9256 - val_loss: 1.1250 - val_acc: 0.5410\n",
"Epoch 45/50\n",
"242/242 [==============================] - 0s 83us/step - loss: 0.1902 - acc: 0.9256 - val_loss: 1.1258 - val_acc: 0.5410\n",
"Epoch 46/50\n",
"242/242 [==============================] - 0s 87us/step - loss: 0.1901 - acc: 0.9256 - val_loss: 1.1274 - val_acc: 0.5410\n",
"Epoch 47/50\n",
"242/242 [==============================] - 0s 83us/step - loss: 0.1899 - acc: 0.9256 - val_loss: 1.1263 - val_acc: 0.5410\n",
"Epoch 48/50\n",
"242/242 [==============================] - 0s 74us/step - loss: 0.1897 - acc: 0.9256 - val_loss: 1.1264 - val_acc: 0.5410\n",
"Epoch 49/50\n",
"242/242 [==============================] - 0s 83us/step - loss: 0.1896 - acc: 0.9256 - val_loss: 1.1263 - val_acc: 0.5410\n",
"Epoch 50/50\n",
"242/242 [==============================] - 0s 74us/step - loss: 0.1894 - acc: 0.9256 - val_loss: 1.1274 - val_acc: 0.5410\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:51:02.715774Z",
"start_time": "2019-04-06T02:51:02.283688Z"
},
"id": "8uKRYa_y9FNb",
"colab_type": "code",
"outputId": "9f02bdf3-2036-45d6-8718-a2c900301710",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 851
}
},
"source": [
"plt.plot(history.history['acc'])\n",
"plt.plot(history.history['val_acc'])\n",
"plt.title('Accuracy')\n",
"plt.ylabel('Accuracy')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['Train', 'Test'], loc='upper left')\n",
"plt.show()\n",
"\n",
"# Plot training & validation loss values\n",
"plt.plot(history.history['loss'])\n",
"plt.plot(history.history['val_loss'])\n",
"plt.title('Model loss')\n",
"plt.ylabel('Loss')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['Train', 'Test'], loc='upper left')\n",
"plt.show()\n",
"\n",
"plt.plot(history.history['lr'])\n",
"plt.title('Learning Rate')\n",
"plt.ylabel('Learning Rate')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['Train'], loc='upper left')\n",
"plt.show()"
],
"execution_count": 32,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\n/zpM4ow1O0uoAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
},
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
},
{
"output_type": "display_data",
"data": {
"image/png": "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\nRU5ErkJggg==\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:51:10.410283Z",
"start_time": "2019-04-06T02:51:10.399885Z"
},
"id": "pOFPI2as9FNe",
"colab_type": "code",
"outputId": "a5fc478e-af13-4e32-95d2-adc3ebed842b",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 33
}
},
"source": [
"history.history.keys()"
],
"execution_count": 33,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"dict_keys(['val_loss', 'val_acc', 'loss', 'acc', 'lr'])"
]
},
"metadata": {
"tags": []
},
"execution_count": 33
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:51:11.785740Z",
"start_time": "2019-04-06T02:51:11.773062Z"
},
"id": "tmSQGxMs9FNg",
"colab_type": "code",
"outputId": "ea5d49bb-6b90-46da-fd36-bb456dfab649",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 33
}
},
"source": [
"history.history['val_acc'][-1], history.history['acc'][-1], \\\n",
"max(history.history['val_acc']), max(history.history['acc'])"
],
"execution_count": 34,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"(0.5409835850606199, 0.9256198379126462, 0.655737681467025, 0.9256198487498544)"
]
},
"metadata": {
"tags": []
},
"execution_count": 34
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:51:20.909830Z",
"start_time": "2019-04-06T02:51:20.881777Z"
},
"id": "IUlAe4G_9FNl",
"colab_type": "code",
"outputId": "d2c6efc9-5e02-4730-b925-81cbe567464c",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 197
}
},
"source": [
"df.head()"
],
"execution_count": 35,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>age</th>\n",
" <th>sex</th>\n",
" <th>cp</th>\n",
" <th>trestbps</th>\n",
" <th>chol</th>\n",
" <th>fbs</th>\n",
" <th>restecg</th>\n",
" <th>thalach</th>\n",
" <th>exang</th>\n",
" <th>oldpeak</th>\n",
" <th>slope</th>\n",
" <th>ca</th>\n",
" <th>thal</th>\n",
" <th>target</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>63</td>\n",
" <td>1</td>\n",
" <td>3</td>\n",
" <td>145</td>\n",
" <td>233</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>150</td>\n",
" <td>0</td>\n",
" <td>2.3</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>37</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>130</td>\n",
" <td>250</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>187</td>\n",
" <td>0</td>\n",
" <td>3.5</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>130</td>\n",
" <td>204</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>172</td>\n",
" <td>0</td>\n",
" <td>1.4</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>56</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>120</td>\n",
" <td>236</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>178</td>\n",
" <td>0</td>\n",
" <td>0.8</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>57</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>120</td>\n",
" <td>354</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>163</td>\n",
" <td>1</td>\n",
" <td>0.6</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" age sex cp trestbps chol fbs ... exang oldpeak slope ca thal target\n",
"0 63 1 3 145 233 1 ... 0 2.3 0 0 1 1\n",
"1 37 1 2 130 250 0 ... 0 3.5 0 0 2 1\n",
"2 41 0 1 130 204 0 ... 0 1.4 2 0 2 1\n",
"3 56 1 1 120 236 0 ... 0 0.8 2 0 2 1\n",
"4 57 0 0 120 354 0 ... 1 0.6 2 0 2 1\n",
"\n",
"[5 rows x 14 columns]"
]
},
"metadata": {
"tags": []
},
"execution_count": 35
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:51:23.785119Z",
"start_time": "2019-04-06T02:51:23.770072Z"
},
"id": "eKvu79oN9FNp",
"colab_type": "code",
"colab": {}
},
"source": [
"df['Trestbps'] = df.trestbps.apply(lambda x: x // 10)\n",
"df['Age'] = df.trestbps.apply(lambda x: x // 10)"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:51:25.208291Z",
"start_time": "2019-04-06T02:51:25.196075Z"
},
"id": "LDTEqI4p9FNs",
"colab_type": "code",
"colab": {}
},
"source": [
"X = StandardScaler().fit_transform(df.drop(['target'], axis=1))\n",
"y = df.target.values"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:52:52.610737Z",
"start_time": "2019-04-06T02:51:34.060034Z"
},
"id": "oYad4iN49FNv",
"colab_type": "code",
"outputId": "0ee41e17-f82c-423b-9d70-0d1437193f19",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
}
},
"source": [
"model = create_model(X.shape[1])\n",
"history = model.fit(X, y, validation_split=0.20, epochs=epochs,\n",
" batch_size=batch_size, verbose=1, callbacks=[reduce_lr])"
],
"execution_count": 38,
"outputs": [
{
"output_type": "stream",
"text": [
"Train on 242 samples, validate on 61 samples\n",
"Epoch 1/50\n",
"242/242 [==============================] - 9s 35ms/step - loss: 0.4428 - acc: 0.8058 - val_loss: 1.1148 - val_acc: 0.5738\n",
"Epoch 2/50\n",
"242/242 [==============================] - 0s 103us/step - loss: 0.3423 - acc: 0.8926 - val_loss: 0.9413 - val_acc: 0.6066\n",
"Epoch 3/50\n",
"242/242 [==============================] - 0s 78us/step - loss: 0.2727 - acc: 0.8926 - val_loss: 0.9031 - val_acc: 0.5574\n",
"Epoch 4/50\n",
"242/242 [==============================] - 0s 80us/step - loss: 0.2606 - acc: 0.9091 - val_loss: 0.9270 - val_acc: 0.5410\n",
"Epoch 5/50\n",
"242/242 [==============================] - 0s 77us/step - loss: 0.2324 - acc: 0.9091 - val_loss: 0.9993 - val_acc: 0.5410\n",
"Epoch 6/50\n",
"242/242 [==============================] - 0s 82us/step - loss: 0.2315 - acc: 0.9091 - val_loss: 0.9657 - val_acc: 0.5410\n",
"Epoch 7/50\n",
"242/242 [==============================] - 0s 81us/step - loss: 0.2143 - acc: 0.9174 - val_loss: 1.0743 - val_acc: 0.5246\n",
"Epoch 8/50\n",
"242/242 [==============================] - 0s 80us/step - loss: 0.2075 - acc: 0.9091 - val_loss: 0.9300 - val_acc: 0.5410\n",
"Epoch 9/50\n",
"242/242 [==============================] - 0s 102us/step - loss: 0.1847 - acc: 0.9421 - val_loss: 0.9612 - val_acc: 0.5082\n",
"Epoch 10/50\n",
"242/242 [==============================] - 0s 87us/step - loss: 0.1725 - acc: 0.9339 - val_loss: 1.0189 - val_acc: 0.4918\n",
"Epoch 11/50\n",
"242/242 [==============================] - 0s 89us/step - loss: 0.1663 - acc: 0.9380 - val_loss: 1.0706 - val_acc: 0.4918\n",
"Epoch 12/50\n",
"242/242 [==============================] - 0s 83us/step - loss: 0.1623 - acc: 0.9339 - val_loss: 1.1110 - val_acc: 0.5082\n",
"Epoch 13/50\n",
"242/242 [==============================] - 0s 81us/step - loss: 0.1567 - acc: 0.9421 - val_loss: 1.1208 - val_acc: 0.5246\n",
"Epoch 14/50\n",
"242/242 [==============================] - 0s 81us/step - loss: 0.1524 - acc: 0.9380 - val_loss: 1.1272 - val_acc: 0.5246\n",
"Epoch 15/50\n",
"242/242 [==============================] - 0s 89us/step - loss: 0.1512 - acc: 0.9380 - val_loss: 1.1315 - val_acc: 0.5082\n",
"Epoch 16/50\n",
"242/242 [==============================] - 0s 89us/step - loss: 0.1500 - acc: 0.9421 - val_loss: 1.1378 - val_acc: 0.5082\n",
"Epoch 17/50\n",
"242/242 [==============================] - 0s 87us/step - loss: 0.1481 - acc: 0.9421 - val_loss: 1.1379 - val_acc: 0.5082\n",
"Epoch 18/50\n",
"242/242 [==============================] - 0s 82us/step - loss: 0.1469 - acc: 0.9421 - val_loss: 1.1404 - val_acc: 0.5082\n",
"Epoch 19/50\n",
"242/242 [==============================] - 0s 75us/step - loss: 0.1456 - acc: 0.9463 - val_loss: 1.1401 - val_acc: 0.5082\n",
"Epoch 20/50\n",
"242/242 [==============================] - 0s 85us/step - loss: 0.1452 - acc: 0.9463 - val_loss: 1.1403 - val_acc: 0.5082\n",
"Epoch 21/50\n",
"242/242 [==============================] - 0s 106us/step - loss: 0.1450 - acc: 0.9463 - val_loss: 1.1402 - val_acc: 0.5082\n",
"Epoch 22/50\n",
"242/242 [==============================] - 0s 102us/step - loss: 0.1447 - acc: 0.9463 - val_loss: 1.1414 - val_acc: 0.5082\n",
"Epoch 23/50\n",
"242/242 [==============================] - 0s 89us/step - loss: 0.1444 - acc: 0.9504 - val_loss: 1.1406 - val_acc: 0.5082\n",
"Epoch 24/50\n",
"242/242 [==============================] - 0s 81us/step - loss: 0.1441 - acc: 0.9504 - val_loss: 1.1420 - val_acc: 0.5082\n",
"Epoch 25/50\n",
"242/242 [==============================] - 0s 80us/step - loss: 0.1438 - acc: 0.9504 - val_loss: 1.1411 - val_acc: 0.5082\n",
"Epoch 26/50\n",
"242/242 [==============================] - 0s 103us/step - loss: 0.1434 - acc: 0.9504 - val_loss: 1.1411 - val_acc: 0.5082\n",
"Epoch 27/50\n",
"242/242 [==============================] - 0s 88us/step - loss: 0.1431 - acc: 0.9504 - val_loss: 1.1416 - val_acc: 0.5082\n",
"Epoch 28/50\n",
"242/242 [==============================] - 0s 92us/step - loss: 0.1429 - acc: 0.9504 - val_loss: 1.1435 - val_acc: 0.5082\n",
"Epoch 29/50\n",
"242/242 [==============================] - 0s 89us/step - loss: 0.1426 - acc: 0.9504 - val_loss: 1.1458 - val_acc: 0.5082\n",
"Epoch 30/50\n",
"242/242 [==============================] - 0s 86us/step - loss: 0.1423 - acc: 0.9504 - val_loss: 1.1485 - val_acc: 0.5246\n",
"Epoch 31/50\n",
"242/242 [==============================] - 0s 82us/step - loss: 0.1421 - acc: 0.9504 - val_loss: 1.1512 - val_acc: 0.5246\n",
"Epoch 32/50\n",
"242/242 [==============================] - 0s 118us/step - loss: 0.1418 - acc: 0.9504 - val_loss: 1.1539 - val_acc: 0.5246\n",
"Epoch 33/50\n",
"242/242 [==============================] - 0s 100us/step - loss: 0.1416 - acc: 0.9504 - val_loss: 1.1541 - val_acc: 0.5246\n",
"Epoch 34/50\n",
"242/242 [==============================] - 0s 103us/step - loss: 0.1412 - acc: 0.9504 - val_loss: 1.1526 - val_acc: 0.5246\n",
"Epoch 35/50\n",
"242/242 [==============================] - 0s 80us/step - loss: 0.1410 - acc: 0.9504 - val_loss: 1.1522 - val_acc: 0.5246\n",
"Epoch 36/50\n",
"242/242 [==============================] - 0s 76us/step - loss: 0.1406 - acc: 0.9504 - val_loss: 1.1509 - val_acc: 0.5246\n",
"Epoch 37/50\n",
"242/242 [==============================] - 0s 109us/step - loss: 0.1404 - acc: 0.9504 - val_loss: 1.1510 - val_acc: 0.5246\n",
"Epoch 38/50\n",
"242/242 [==============================] - 0s 94us/step - loss: 0.1401 - acc: 0.9504 - val_loss: 1.1509 - val_acc: 0.5246\n",
"Epoch 39/50\n",
"242/242 [==============================] - 0s 96us/step - loss: 0.1399 - acc: 0.9504 - val_loss: 1.1516 - val_acc: 0.5246\n",
"Epoch 40/50\n",
"242/242 [==============================] - 0s 89us/step - loss: 0.1396 - acc: 0.9504 - val_loss: 1.1528 - val_acc: 0.5246\n",
"Epoch 41/50\n",
"242/242 [==============================] - 0s 104us/step - loss: 0.1393 - acc: 0.9504 - val_loss: 1.1536 - val_acc: 0.5246\n",
"Epoch 42/50\n",
"242/242 [==============================] - 0s 79us/step - loss: 0.1390 - acc: 0.9504 - val_loss: 1.1547 - val_acc: 0.5246\n",
"Epoch 43/50\n",
"242/242 [==============================] - 0s 110us/step - loss: 0.1387 - acc: 0.9504 - val_loss: 1.1558 - val_acc: 0.5246\n",
"Epoch 44/50\n",
"242/242 [==============================] - 0s 71us/step - loss: 0.1384 - acc: 0.9504 - val_loss: 1.1570 - val_acc: 0.5246\n",
"Epoch 45/50\n",
"242/242 [==============================] - 0s 77us/step - loss: 0.1381 - acc: 0.9504 - val_loss: 1.1594 - val_acc: 0.5246\n",
"Epoch 46/50\n",
"242/242 [==============================] - 0s 75us/step - loss: 0.1377 - acc: 0.9504 - val_loss: 1.1612 - val_acc: 0.5246\n",
"Epoch 47/50\n",
"242/242 [==============================] - 0s 83us/step - loss: 0.1375 - acc: 0.9504 - val_loss: 1.1628 - val_acc: 0.5246\n",
"Epoch 48/50\n",
"242/242 [==============================] - 0s 85us/step - loss: 0.1372 - acc: 0.9504 - val_loss: 1.1648 - val_acc: 0.5246\n",
"Epoch 49/50\n",
"242/242 [==============================] - 0s 79us/step - loss: 0.1369 - acc: 0.9504 - val_loss: 1.1644 - val_acc: 0.5246\n",
"Epoch 50/50\n",
"242/242 [==============================] - 0s 83us/step - loss: 0.1366 - acc: 0.9504 - val_loss: 1.1639 - val_acc: 0.5246\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:52:59.260425Z",
"start_time": "2019-04-06T02:52:59.254906Z"
},
"id": "ZA_PFc1E9FN0",
"colab_type": "code",
"outputId": "a91c0895-d328-4d22-dfb0-8a4071b43d12",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 33
}
},
"source": [
"history.history.keys()"
],
"execution_count": 39,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"dict_keys(['val_loss', 'val_acc', 'loss', 'acc', 'lr'])"
]
},
"metadata": {
"tags": []
},
"execution_count": 39
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:53:42.672599Z",
"start_time": "2019-04-06T02:53:42.659259Z"
},
"id": "c_wPsx4j9FN4",
"colab_type": "code",
"outputId": "878248f3-64da-4f0d-f641-1e09e1b536f0",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 33
}
},
"source": [
"history.history['val_acc'][-1], history.history['acc'][-1], \\\n",
"max(history.history['val_acc']), max(history.history['acc'])"
],
"execution_count": 40,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"(0.5245901404834185, 0.9504132026975806, 0.6065574005001881, 0.950413237918507)"
]
},
"metadata": {
"tags": []
},
"execution_count": 40
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-06T02:54:56.515554Z",
"start_time": "2019-04-06T02:54:56.086361Z"
},
"id": "aNFXtWVb9FN7",
"colab_type": "code",
"outputId": "2c8b31a3-ef80-42aa-b34b-c6c13b3f431f",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 851
}
},
"source": [
"plt.plot(history.history['acc'])\n",
"plt.plot(history.history['val_acc'])\n",
"plt.title('Accuracy')\n",
"plt.ylabel('Accuracy')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['Train', 'Test'], loc='upper left')\n",
"plt.show()\n",
"\n",
"# Plot training & validation loss values\n",
"plt.plot(history.history['loss'])\n",
"plt.plot(history.history['val_loss'])\n",
"plt.title('Model loss')\n",
"plt.ylabel('Loss')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['Train', 'Test'], loc='upper left')\n",
"plt.show()\n",
"\n",
"plt.plot(history.history['lr'])\n",
"plt.title('Learning Rate')\n",
"plt.ylabel('Learning Rate')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['Train'], loc='upper left')\n",
"plt.show()"
],
"execution_count": 41,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\nesRk8iNBAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
},
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
},
{
"output_type": "display_data",
"data": {
"image/png": "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\nTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2019-04-05T20:56:43.474554Z",
"start_time": "2019-04-05T20:56:43.449787Z"
},
"id": "qUHfp93S9FN_",
"colab_type": "code",
"colab": {}
},
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "HN9fJihP9FOD",
"colab_type": "code",
"colab": {}
},
"source": [
""
],
"execution_count": 0,
"outputs": []
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment