From 5c11de4d04fb69d9bfd4e11ac9bba94366818855 Mon Sep 17 00:00:00 2001 From: naiieandrade Date: Sat, 6 Apr 2019 02:50:58 -0300 Subject: [PATCH] Change linear activation options --- ArtificialNeuralNetwork.ipynb | 300 ++++++++++++++++++++++++++++++++-- 1 file changed, 282 insertions(+), 18 deletions(-) diff --git a/ArtificialNeuralNetwork.ipynb b/ArtificialNeuralNetwork.ipynb index 6fa36fd..1c2610f 100644 --- a/ArtificialNeuralNetwork.ipynb +++ b/ArtificialNeuralNetwork.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -22,16 +22,16 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ - "!pip install -r requirements.txt" + "#!pip install -r requirements.txt" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -43,7 +43,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -55,9 +55,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/naiara/GIT/deeplearningunb/myenv/lib/python3.5/site-packages/sklearn/preprocessing/_encoders.py:371: FutureWarning: The handling of integer data will change in version 0.22. Currently, the categories are determined based on the range [0, max(values)], while in the future they will be determined based on the unique values.\n", + "If you want the future behaviour and silence this warning, you can specify \"categories='auto'\".\n", + "In case you used a LabelEncoder before this OneHotEncoder to convert the categories to integers, then you can now use the OneHotEncoder directly.\n", + " warnings.warn(msg, FutureWarning)\n", + "/home/naiara/GIT/deeplearningunb/myenv/lib/python3.5/site-packages/sklearn/preprocessing/_encoders.py:392: DeprecationWarning: The 'categorical_features' keyword is deprecated in version 0.20 and will be removed in 0.22. You can use the ColumnTransformer instead.\n", + " \"use the ColumnTransformer instead.\", DeprecationWarning)\n" + ] + } + ], "source": [ "# Encoding categorical data\n", "from sklearn.preprocessing import LabelEncoder, OneHotEncoder\n", @@ -72,7 +85,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ @@ -83,7 +96,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -96,9 +109,17 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Using TensorFlow backend.\n" + ] + } + ], "source": [ "# Part 2 - Now let's make the ANN!\n", "\n", @@ -110,7 +131,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 55, "metadata": {}, "outputs": [], "source": [ @@ -121,7 +142,7 @@ "classifier.add(Dense(units = 6, kernel_initializer = 'uniform', activation = 'relu', input_dim = 11))\n", "\n", "# Adding the second hidden layer\n", - "classifier.add(Dense(units = 6, kernel_initializer = 'uniform', activation = 'relu'))\n", + "classifier.add(Dense(units = 15, kernel_initializer = 'uniform', activation = 'tanh'))\n", "\n", "# Adding the output layer\n", "classifier.add(Dense(units = 1, kernel_initializer = 'uniform', activation = 'sigmoid'))\n", @@ -132,9 +153,232 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 56, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Epoch 1/100\n", + "8000/8000 [==============================] - 1s 153us/step - loss: 0.4668 - acc: 0.7961\n", + "Epoch 2/100\n", + "8000/8000 [==============================] - 1s 90us/step - loss: 0.4206 - acc: 0.8129\n", + "Epoch 3/100\n", + "8000/8000 [==============================] - 1s 81us/step - loss: 0.4130 - acc: 0.8310\n", + "Epoch 4/100\n", + "8000/8000 [==============================] - 1s 88us/step - loss: 0.4091 - acc: 0.8340\n", + "Epoch 5/100\n", + "8000/8000 [==============================] - 1s 82us/step - loss: 0.4060 - acc: 0.8342\n", + "Epoch 6/100\n", + "8000/8000 [==============================] - 1s 83us/step - loss: 0.4044 - acc: 0.8344\n", + "Epoch 7/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.4035 - acc: 0.8347\n", + "Epoch 8/100\n", + "8000/8000 [==============================] - 1s 82us/step - loss: 0.4032 - acc: 0.8327\n", + "Epoch 9/100\n", + "8000/8000 [==============================] - 1s 83us/step - loss: 0.4022 - acc: 0.8329\n", + "Epoch 10/100\n", + "8000/8000 [==============================] - 1s 84us/step - loss: 0.4014 - acc: 0.8342\n", + "Epoch 11/100\n", + "8000/8000 [==============================] - 1s 84us/step - loss: 0.4017 - acc: 0.8344\n", + "Epoch 12/100\n", + "8000/8000 [==============================] - 1s 84us/step - loss: 0.4014 - acc: 0.8342\n", + "Epoch 13/100\n", + "8000/8000 [==============================] - 1s 84us/step - loss: 0.4009 - acc: 0.8351\n", + "Epoch 14/100\n", + "8000/8000 [==============================] - 1s 84us/step - loss: 0.4003 - acc: 0.8367\n", + "Epoch 15/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.4000 - acc: 0.8345\n", + "Epoch 16/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.3997 - acc: 0.8336\n", + "Epoch 17/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.3992 - acc: 0.8365\n", + "Epoch 18/100\n", + "8000/8000 [==============================] - 1s 85us/step - loss: 0.3996 - acc: 0.8356\n", + "Epoch 19/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.3993 - acc: 0.8346\n", + "Epoch 20/100\n", + "8000/8000 [==============================] - 1s 85us/step - loss: 0.3989 - acc: 0.8366\n", + "Epoch 21/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.3985 - acc: 0.8361\n", + "Epoch 22/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.3984 - acc: 0.8359\n", + "Epoch 23/100\n", + "8000/8000 [==============================] - 1s 85us/step - loss: 0.3985 - acc: 0.8367\n", + "Epoch 24/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.3970 - acc: 0.8379\n", + "Epoch 25/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.3977 - acc: 0.8367\n", + "Epoch 26/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.3975 - acc: 0.8357\n", + "Epoch 27/100\n", + "8000/8000 [==============================] - 1s 85us/step - loss: 0.3971 - acc: 0.8364\n", + "Epoch 28/100\n", + "8000/8000 [==============================] - 1s 100us/step - loss: 0.3959 - acc: 0.8386\n", + "Epoch 29/100\n", + "8000/8000 [==============================] - 1s 93us/step - loss: 0.3965 - acc: 0.8362\n", + "Epoch 30/100\n", + "8000/8000 [==============================] - 1s 99us/step - loss: 0.3964 - acc: 0.8365\n", + "Epoch 31/100\n", + "8000/8000 [==============================] - 1s 83us/step - loss: 0.3960 - acc: 0.8371\n", + "Epoch 32/100\n", + "8000/8000 [==============================] - 1s 84us/step - loss: 0.3962 - acc: 0.8375\n", + "Epoch 33/100\n", + "8000/8000 [==============================] - 1s 84us/step - loss: 0.3953 - acc: 0.8365\n", + "Epoch 34/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.3958 - acc: 0.8382\n", + "Epoch 35/100\n", + "8000/8000 [==============================] - 1s 83us/step - loss: 0.3953 - acc: 0.8370\n", + "Epoch 36/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.3949 - acc: 0.8371\n", + "Epoch 37/100\n", + "8000/8000 [==============================] - 1s 88us/step - loss: 0.3951 - acc: 0.8367\n", + "Epoch 38/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.3953 - acc: 0.8395\n", + "Epoch 39/100\n", + "8000/8000 [==============================] - 1s 96us/step - loss: 0.3953 - acc: 0.8371\n", + "Epoch 40/100\n", + "8000/8000 [==============================] - 1s 100us/step - loss: 0.3949 - acc: 0.8366\n", + "Epoch 41/100\n", + "8000/8000 [==============================] - 1s 96us/step - loss: 0.3948 - acc: 0.8376\n", + "Epoch 42/100\n", + "8000/8000 [==============================] - 1s 90us/step - loss: 0.3945 - acc: 0.8370\n", + "Epoch 43/100\n", + "8000/8000 [==============================] - 1s 88us/step - loss: 0.3946 - acc: 0.8371\n", + "Epoch 44/100\n", + "8000/8000 [==============================] - 1s 97us/step - loss: 0.3943 - acc: 0.8366\n", + "Epoch 45/100\n", + "8000/8000 [==============================] - 1s 90us/step - loss: 0.3944 - acc: 0.8370\n", + "Epoch 46/100\n", + "8000/8000 [==============================] - 1s 95us/step - loss: 0.3941 - acc: 0.8374\n", + "Epoch 47/100\n", + "8000/8000 [==============================] - 1s 112us/step - loss: 0.3941 - acc: 0.8377\n", + "Epoch 48/100\n", + "8000/8000 [==============================] - 1s 91us/step - loss: 0.3941 - acc: 0.8371\n", + "Epoch 49/100\n", + "8000/8000 [==============================] - 1s 96us/step - loss: 0.3933 - acc: 0.8370\n", + "Epoch 50/100\n", + "8000/8000 [==============================] - 1s 117us/step - loss: 0.3932 - acc: 0.8375\n", + "Epoch 51/100\n", + "8000/8000 [==============================] - 1s 130us/step - loss: 0.3934 - acc: 0.8356\n", + "Epoch 52/100\n", + "8000/8000 [==============================] - 1s 126us/step - loss: 0.3934 - acc: 0.8349\n", + "Epoch 53/100\n", + "8000/8000 [==============================] - 1s 126us/step - loss: 0.3934 - acc: 0.8371\n", + "Epoch 54/100\n", + "8000/8000 [==============================] - 1s 116us/step - loss: 0.3933 - acc: 0.8375\n", + "Epoch 55/100\n", + "8000/8000 [==============================] - 1s 121us/step - loss: 0.3932 - acc: 0.8361\n", + "Epoch 56/100\n", + "8000/8000 [==============================] - 1s 108us/step - loss: 0.3927 - acc: 0.8365\n", + "Epoch 57/100\n", + "8000/8000 [==============================] - 1s 126us/step - loss: 0.3926 - acc: 0.8384\n", + "Epoch 58/100\n", + "8000/8000 [==============================] - 1s 96us/step - loss: 0.3925 - acc: 0.8380\n", + "Epoch 59/100\n", + "8000/8000 [==============================] - 1s 83us/step - loss: 0.3927 - acc: 0.8382\n", + "Epoch 60/100\n", + "8000/8000 [==============================] - 1s 85us/step - loss: 0.3924 - acc: 0.8379\n", + "Epoch 61/100\n", + "8000/8000 [==============================] - 1s 84us/step - loss: 0.3922 - acc: 0.8380\n", + "Epoch 62/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.3916 - acc: 0.8379\n", + "Epoch 63/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.3918 - acc: 0.8394\n", + "Epoch 64/100\n", + "8000/8000 [==============================] - 1s 85us/step - loss: 0.3916 - acc: 0.8384\n", + "Epoch 65/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.3910 - acc: 0.8386\n", + "Epoch 66/100\n", + "8000/8000 [==============================] - 1s 85us/step - loss: 0.3905 - acc: 0.8387\n", + "Epoch 67/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.3895 - acc: 0.8392\n", + "Epoch 68/100\n", + "8000/8000 [==============================] - 1s 85us/step - loss: 0.3882 - acc: 0.8390\n", + "Epoch 69/100\n", + "8000/8000 [==============================] - 1s 86us/step - loss: 0.3865 - acc: 0.8385\n", + "Epoch 70/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.3842 - acc: 0.8391\n", + "Epoch 71/100\n", + "8000/8000 [==============================] - 1s 98us/step - loss: 0.3822 - acc: 0.8379\n", + "Epoch 72/100\n", + "8000/8000 [==============================] - 1s 88us/step - loss: 0.3791 - acc: 0.8362\n", + "Epoch 73/100\n", + "8000/8000 [==============================] - 1s 88us/step - loss: 0.3762 - acc: 0.8364\n", + "Epoch 74/100\n", + "8000/8000 [==============================] - 1s 89us/step - loss: 0.3723 - acc: 0.8390\n", + "Epoch 75/100\n", + "8000/8000 [==============================] - 1s 88us/step - loss: 0.3689 - acc: 0.8409\n", + "Epoch 76/100\n", + "8000/8000 [==============================] - 1s 87us/step - loss: 0.3642 - acc: 0.8470\n", + "Epoch 77/100\n", + "8000/8000 [==============================] - 1s 64us/step - loss: 0.3607 - acc: 0.8516\n", + "Epoch 78/100\n", + "8000/8000 [==============================] - 1s 90us/step - loss: 0.3577 - acc: 0.8531\n", + "Epoch 79/100\n", + "8000/8000 [==============================] - 1s 89us/step - loss: 0.3549 - acc: 0.8545\n", + "Epoch 80/100\n", + "8000/8000 [==============================] - 1s 92us/step - loss: 0.3532 - acc: 0.8549\n", + "Epoch 81/100\n", + "8000/8000 [==============================] - 1s 90us/step - loss: 0.3507 - acc: 0.8571\n", + "Epoch 82/100\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "8000/8000 [==============================] - 1s 85us/step - loss: 0.3491 - acc: 0.8574: 0s - loss: 0.3521 - acc: 0.8\n", + "Epoch 83/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3478 - acc: 0.8565\n", + "Epoch 84/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3472 - acc: 0.8589\n", + "Epoch 85/100\n", + "8000/8000 [==============================] - 1s 80us/step - loss: 0.3461 - acc: 0.8591\n", + "Epoch 86/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3449 - acc: 0.8581\n", + "Epoch 87/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3436 - acc: 0.8605\n", + "Epoch 88/100\n", + "8000/8000 [==============================] - 1s 81us/step - loss: 0.3422 - acc: 0.8595\n", + "Epoch 89/100\n", + "8000/8000 [==============================] - 1s 80us/step - loss: 0.3418 - acc: 0.8612\n", + "Epoch 90/100\n", + "8000/8000 [==============================] - 1s 80us/step - loss: 0.3404 - acc: 0.8601\n", + "Epoch 91/100\n", + "8000/8000 [==============================] - 1s 80us/step - loss: 0.3404 - acc: 0.8590\n", + "Epoch 92/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3391 - acc: 0.8637\n", + "Epoch 93/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3379 - acc: 0.8615\n", + "Epoch 94/100\n", + "8000/8000 [==============================] - 1s 78us/step - loss: 0.3374 - acc: 0.8616\n", + "Epoch 95/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3369 - acc: 0.8604\n", + "Epoch 96/100\n", + "8000/8000 [==============================] - 1s 80us/step - loss: 0.3361 - acc: 0.8610\n", + "Epoch 97/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3355 - acc: 0.8611\n", + "Epoch 98/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3352 - acc: 0.8615\n", + "Epoch 99/100\n", + "8000/8000 [==============================] - 1s 80us/step - loss: 0.3343 - acc: 0.8615\n", + "Epoch 100/100\n", + "8000/8000 [==============================] - 1s 79us/step - loss: 0.3348 - acc: 0.8624\n" + ] + }, + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 56, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Fitting the ANN to the Training set\n", "classifier.fit(X_train, y_train, batch_size = 10, epochs = 100)" @@ -142,11 +386,10 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 57, "metadata": {}, "outputs": [], "source": [ - "\n", "# Part 3 - Making predictions and evaluating the model\n", "\n", "# Predicting the Test set results\n", @@ -158,6 +401,27 @@ "cm = confusion_matrix(y_test, y_pred)" ] }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[1510, 85],\n", + " [ 192, 213]])" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cm" + ] + }, { "cell_type": "code", "execution_count": null, @@ -182,7 +446,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.8" + "version": "3.5.2" } }, "nbformat": 4,