313 lines
31 KiB
Plaintext
313 lines
31 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"outputs": [],
|
||
"source": [
|
||
"import zipfile\n",
|
||
"with zipfile.ZipFile(\"dataset_cleaned.zip\", 'r') as zip_ref:\n",
|
||
" zip_ref.extractall(\"dataset_cleaned_extracted\")"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 1,
|
||
"outputs": [],
|
||
"source": [
|
||
"import pandas as pd\n",
|
||
"valid = pd.read_csv(\"dataset_cleaned_extracted/valid.csv\")\n",
|
||
"\n",
|
||
"x_columns = ['Male', 'GeneralHealth', 'PhysicalHealthDays', 'MentalHealthDays',\n",
|
||
" 'PhysicalActivities', 'SleepHours', 'RemovedTeeth',\n",
|
||
" 'HadAngina', 'HadStroke', 'HadAsthma', 'HadSkinCancer', 'HadCOPD',\n",
|
||
" 'HadDepressiveDisorder', 'HadKidneyDisease', 'HadArthritis',\n",
|
||
" 'HadDiabetes', 'DeafOrHardOfHearing', 'BlindOrVisionDifficulty',\n",
|
||
" 'DifficultyConcentrating', 'DifficultyWalking',\n",
|
||
" 'DifficultyDressingBathing', 'DifficultyErrands', 'SmokerStatus',\n",
|
||
" 'ECigaretteUsage', 'ChestScan', 'HeightInMeters', 'WeightInKilograms',\n",
|
||
" 'BMI', 'AlcoholDrinkers', 'HIVTesting', 'FluVaxLast12', 'PneumoVaxEver',\n",
|
||
" 'TetanusLast10Tdap', 'HighRiskLastYear', 'CovidPos']\n",
|
||
"y_column = 'HadHeartAttack'\n",
|
||
"\n",
|
||
"valid_x = valid[x_columns]\n",
|
||
"valid_y = valid[y_column]"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 2,
|
||
"outputs": [],
|
||
"source": [
|
||
"from tensorflow import keras\n",
|
||
"model = keras.models.load_model('model_v1.keras')"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 3,
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"1392/1392 [==============================] - 1s 645us/step\n",
|
||
"Poprawność na zbiorze walidacyjnym: 86.15%\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"import numpy as np\n",
|
||
"predictions = model.predict(valid_x)[:,0]\n",
|
||
"true_answers = valid_y.to_numpy()\n",
|
||
"validation_accuracy = np.sum(np.rint(predictions) == true_answers)/len(true_answers)\n",
|
||
"print(f\"Poprawność na zbiorze walidacyjnym: {validation_accuracy:.2%}\")"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 4,
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"[0.08692811 0.12067404 0.31880796 0.64843357 0.15188715 0.06517262\n",
|
||
" 0.03407578 0.49311596 0.00781232 0.2089161 0.46056542 0.45341685\n",
|
||
" 0.4294767 0.25619727 0.20345858 0.2302334 0.38631877 0.36519188\n",
|
||
" 0.04014764 0.23888215 0.27519897 0.08928084 0.05204074 0.42043713\n",
|
||
" 0.19055638 0.29787344 0.23068897 0.88435644 0.03139259 0.95048493\n",
|
||
" 0.2457671 0.5858893 0.02678488 0.06240147 0.52132165 0.01431455\n",
|
||
" 0.02444405 0.07804424 0.11274771 0.12714393 0.35450152 0.01294624\n",
|
||
" 0.190797 0.07512036 0.48486376 0.06140704 0.9019506 0.08810509\n",
|
||
" 0.61831665 0.15642735 0.03310075 0.04532438 0.10763614 0.4277772\n",
|
||
" 0.20325996 0.8980398 0.7491019 0.38502344 0.03970775 0.0401529\n",
|
||
" 0.03046079 0.10123587 0.04993626 0.05702 0.18049946 0.1223311\n",
|
||
" 0.731555 0.40104443 0.18443953 0.1265702 0.07467585 0.03895461\n",
|
||
" 0.35271063 0.38039213 0.4450048 0.03670818 0.05534125 0.91664517\n",
|
||
" 0.413391 0.12545326 0.11306539 0.4350903 0.48778924 0.40804324\n",
|
||
" 0.33885244 0.21948677 0.01242744 0.02531701 0.6693964 0.15393472\n",
|
||
" 0.9307252 0.09181138 0.05571133 0.1261858 0.02687709 0.27069062\n",
|
||
" 0.22613294 0.20686075 0.47390068 0.40349996]\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"print(predictions[:100])"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 5,
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"[0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
|
||
" 0. 0. 0. 1. 0. 1. 0. 1. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0.\n",
|
||
" 1. 0. 0. 0. 0. 0. 0. 1. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0.\n",
|
||
" 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 1. 0. 0. 0. 0. 0.\n",
|
||
" 0. 0. 0. 0.]\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"print(np.rint(predictions)[:100])"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 6,
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"[0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
|
||
" 0. 1. 0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0.\n",
|
||
" 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0.\n",
|
||
" 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0.\n",
|
||
" 0. 0. 0. 0.]\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"print(true_answers[:100])"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 7,
|
||
"outputs": [],
|
||
"source": [
|
||
"np.savetxt(\"predictions.txt\",predictions)"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 8,
|
||
"outputs": [],
|
||
"source": [
|
||
"np.savetxt(\"predictions_two_digits.txt\",predictions, fmt='%1.2f')"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 9,
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/plain": " Unnamed: 0 State Male GeneralHealth PhysicalHealthDays \\\n7 135450 Kentucky 1.0 0.50 0.0 \n25 321301 Rhode Island 1.0 0.00 1.0 \n29 402512 Washington 1.0 0.25 0.0 \n44 128060 Kansas 1.0 0.50 0.0 \n69 130420 Kansas 1.0 0.75 0.0 \n\n MentalHealthDays LastCheckupTime \\\n7 0.0 Within past year (anytime less than 12 months ... \n25 1.0 Within past year (anytime less than 12 months ... \n29 0.1 Within past year (anytime less than 12 months ... \n44 0.0 Within past year (anytime less than 12 months ... \n69 0.0 5 or more years ago \n\n PhysicalActivities SleepHours RemovedTeeth ... HeightInMeters \\\n7 1.0 0.260870 1.000000 ... 0.613793 \n25 1.0 0.260870 0.000000 ... 0.634483 \n29 1.0 0.347826 0.333333 ... 0.510345 \n44 0.0 0.260870 0.333333 ... 0.455172 \n69 1.0 0.217391 0.333333 ... 0.544828 \n\n WeightInKilograms BMI AlcoholDrinkers HIVTesting FluVaxLast12 \\\n7 0.164353 0.095584 1.0 0.0 0.0 \n25 0.193760 0.116415 1.0 0.0 0.0 \n29 0.380616 0.389716 1.0 0.0 1.0 \n44 0.084789 0.203190 1.0 0.0 1.0 \n69 0.190289 0.153196 1.0 0.0 0.0 \n\n PneumoVaxEver TetanusLast10Tdap HighRiskLastYear CovidPos \n7 0.0 0.0 0.0 0.0 \n25 0.0 0.0 0.0 0.0 \n29 1.0 0.0 1.0 0.0 \n44 1.0 0.0 0.0 0.0 \n69 0.0 0.0 0.0 0.0 \n\n[5 rows x 41 columns]",
|
||
"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>Unnamed: 0</th>\n <th>State</th>\n <th>Male</th>\n <th>GeneralHealth</th>\n <th>PhysicalHealthDays</th>\n <th>MentalHealthDays</th>\n <th>LastCheckupTime</th>\n <th>PhysicalActivities</th>\n <th>SleepHours</th>\n <th>RemovedTeeth</th>\n <th>...</th>\n <th>HeightInMeters</th>\n <th>WeightInKilograms</th>\n <th>BMI</th>\n <th>AlcoholDrinkers</th>\n <th>HIVTesting</th>\n <th>FluVaxLast12</th>\n <th>PneumoVaxEver</th>\n <th>TetanusLast10Tdap</th>\n <th>HighRiskLastYear</th>\n <th>CovidPos</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>7</th>\n <td>135450</td>\n <td>Kentucky</td>\n <td>1.0</td>\n <td>0.50</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>Within past year (anytime less than 12 months ...</td>\n <td>1.0</td>\n <td>0.260870</td>\n <td>1.000000</td>\n <td>...</td>\n <td>0.613793</td>\n <td>0.164353</td>\n <td>0.095584</td>\n <td>1.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n </tr>\n <tr>\n <th>25</th>\n <td>321301</td>\n <td>Rhode Island</td>\n <td>1.0</td>\n <td>0.00</td>\n <td>1.0</td>\n <td>1.0</td>\n <td>Within past year (anytime less than 12 months ...</td>\n <td>1.0</td>\n <td>0.260870</td>\n <td>0.000000</td>\n <td>...</td>\n <td>0.634483</td>\n <td>0.193760</td>\n <td>0.116415</td>\n <td>1.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n </tr>\n <tr>\n <th>29</th>\n <td>402512</td>\n <td>Washington</td>\n <td>1.0</td>\n <td>0.25</td>\n <td>0.0</td>\n <td>0.1</td>\n <td>Within past year (anytime less than 12 months ...</td>\n <td>1.0</td>\n <td>0.347826</td>\n <td>0.333333</td>\n <td>...</td>\n <td>0.510345</td>\n <td>0.380616</td>\n <td>0.389716</td>\n <td>1.0</td>\n <td>0.0</td>\n <td>1.0</td>\n <td>1.0</td>\n <td>0.0</td>\n <td>1.0</td>\n <td>0.0</td>\n </tr>\n <tr>\n <th>44</th>\n <td>128060</td>\n <td>Kansas</td>\n <td>1.0</td>\n <td>0.50</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>Within past year (anytime less than 12 months ...</td>\n <td>0.0</td>\n <td>0.260870</td>\n <td>0.333333</td>\n <td>...</td>\n <td>0.455172</td>\n <td>0.084789</td>\n <td>0.203190</td>\n <td>1.0</td>\n <td>0.0</td>\n <td>1.0</td>\n <td>1.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n </tr>\n <tr>\n <th>69</th>\n <td>130420</td>\n <td>Kansas</td>\n <td>1.0</td>\n <td>0.75</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>5 or more years ago</td>\n <td>1.0</td>\n <td>0.217391</td>\n <td>0.333333</td>\n <td>...</td>\n <td>0.544828</td>\n <td>0.190289</td>\n <td>0.153196</td>\n <td>1.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n <td>0.0</td>\n </tr>\n </tbody>\n</table>\n<p>5 rows × 41 columns</p>\n</div>"
|
||
},
|
||
"execution_count": 9,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"validate_heart_disease_true = valid.loc[valid[y_column]==1]\n",
|
||
"validate_heart_disease_true.head()"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 10,
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"78/78 [==============================] - 0s 490us/step\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/plain": "array([0.49311596, 0.29787344, 0.95048493, ..., 0.5605181 , 0.08343226,\n 0.4648933 ], dtype=float32)"
|
||
},
|
||
"execution_count": 10,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"validate_heart_disease_true_x = validate_heart_disease_true[x_columns]\n",
|
||
"predictions = model.predict(validate_heart_disease_true_x)[:,0]\n",
|
||
"predictions"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"source": [
|
||
"### Z osób które miały choroby serca w zbiorze walidacyjnym 70% zostało poprawnie zaklasyfikowanych jako 1, pomimo iż klasa ta stanowi bardzo mały odsetek całego zbioru"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 11,
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/plain": "0.701733172108021"
|
||
},
|
||
"execution_count": 11,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"np.sum(np.rint(predictions) == np.ones_like(predictions))/len(predictions)"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 15,
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/plain": "<AxesSubplot:ylabel='count'>"
|
||
},
|
||
"execution_count": 15,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/plain": "<Figure size 640x480 with 1 Axes>",
|
||
"image/png": "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\n"
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"valid[y_column].value_counts().plot(kind=\"pie\")"
|
||
],
|
||
"metadata": {
|
||
"collapsed": false
|
||
}
|
||
}
|
||
],
|
||
"metadata": {
|
||
"kernelspec": {
|
||
"display_name": "Python 3",
|
||
"language": "python",
|
||
"name": "python3"
|
||
},
|
||
"language_info": {
|
||
"codemirror_mode": {
|
||
"name": "ipython",
|
||
"version": 2
|
||
},
|
||
"file_extension": ".py",
|
||
"mimetype": "text/x-python",
|
||
"name": "python",
|
||
"nbconvert_exporter": "python",
|
||
"pygments_lexer": "ipython2",
|
||
"version": "2.7.6"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 0
|
||
}
|