{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "___\n", "\n", "\n", "___\n", "
Copyright by Pierian Data Inc.
\n", "
For more information, visit us at www.pieriandata.com
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# KNN Project Exercise \n", "\n", "Due to the simplicity of KNN for Classification, let's focus on using a PipeLine and a GridSearchCV tool, since these skills can be generalized for any model." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## The Sonar Data \n", "\n", "### Detecting a Rock or a Mine\n", "\n", "Sonar (sound navigation ranging) is a technique that uses sound propagation (usually underwater, as in submarine navigation) to navigate, communicate with or detect objects on or under the surface of the water, such as other vessels.\n", "\n", "\n", "\n", "The data set contains the response metrics for 60 separate sonar frequencies sent out against a known mine field (and known rocks). These frequencies are then labeled with the known object they were beaming the sound at (either a rock or a mine). \n", "\n", "\n", "\n", "Our main goal is to create a machine learning model capable of detecting the difference between a rock or a mine based on the response of the 60 separate sonar frequencies.\n", "\n", "\n", "Data Source: https://archive.ics.uci.edu/ml/datasets/Connectionist+Bench+(Sonar,+Mines+vs.+Rocks)\n", "\n", "### Complete the Tasks in bold\n", "\n", "**TASK: Run the cells below to load the data.**" ] }, { "cell_type": "code", "execution_count": 95, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 96, "metadata": {}, "outputs": [], "source": [ "df = pd.read_csv('../DATA/sonar.all-data.csv')" ] }, { "cell_type": "code", "execution_count": 97, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Freq_1Freq_2Freq_3Freq_4Freq_5Freq_6Freq_7Freq_8Freq_9Freq_10...Freq_52Freq_53Freq_54Freq_55Freq_56Freq_57Freq_58Freq_59Freq_60Label
00.02000.03710.04280.02070.09540.09860.15390.16010.31090.2111...0.00270.00650.01590.00720.01670.01800.00840.00900.0032R
10.04530.05230.08430.06890.11830.25830.21560.34810.33370.2872...0.00840.00890.00480.00940.01910.01400.00490.00520.0044R
20.02620.05820.10990.10830.09740.22800.24310.37710.55980.6194...0.02320.01660.00950.01800.02440.03160.01640.00950.0078R
30.01000.01710.06230.02050.02050.03680.10980.12760.05980.1264...0.01210.00360.01500.00850.00730.00500.00440.00400.0117R
40.07620.06660.04810.03940.05900.06490.12090.24670.35640.4459...0.00310.00540.01050.01100.00150.00720.00480.01070.0094R
\n", "

5 rows × 61 columns

\n", "
" ], "text/plain": [ " Freq_1 Freq_2 Freq_3 Freq_4 Freq_5 Freq_6 Freq_7 Freq_8 Freq_9 \\\n", "0 0.0200 0.0371 0.0428 0.0207 0.0954 0.0986 0.1539 0.1601 0.3109 \n", "1 0.0453 0.0523 0.0843 0.0689 0.1183 0.2583 0.2156 0.3481 0.3337 \n", "2 0.0262 0.0582 0.1099 0.1083 0.0974 0.2280 0.2431 0.3771 0.5598 \n", "3 0.0100 0.0171 0.0623 0.0205 0.0205 0.0368 0.1098 0.1276 0.0598 \n", "4 0.0762 0.0666 0.0481 0.0394 0.0590 0.0649 0.1209 0.2467 0.3564 \n", "\n", " Freq_10 ... Freq_52 Freq_53 Freq_54 Freq_55 Freq_56 Freq_57 \\\n", "0 0.2111 ... 0.0027 0.0065 0.0159 0.0072 0.0167 0.0180 \n", "1 0.2872 ... 0.0084 0.0089 0.0048 0.0094 0.0191 0.0140 \n", "2 0.6194 ... 0.0232 0.0166 0.0095 0.0180 0.0244 0.0316 \n", "3 0.1264 ... 0.0121 0.0036 0.0150 0.0085 0.0073 0.0050 \n", "4 0.4459 ... 0.0031 0.0054 0.0105 0.0110 0.0015 0.0072 \n", "\n", " Freq_58 Freq_59 Freq_60 Label \n", "0 0.0084 0.0090 0.0032 R \n", "1 0.0049 0.0052 0.0044 R \n", "2 0.0164 0.0095 0.0078 R \n", "3 0.0044 0.0040 0.0117 R \n", "4 0.0048 0.0107 0.0094 R \n", "\n", "[5 rows x 61 columns]" ] }, "execution_count": 97, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Data Exploration\n", "\n", "**TASK: Create a heatmap of the correlation between the difference frequency responses.**" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# CODE HERE" ] }, { "cell_type": "code", "execution_count": 98, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 98, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**TASK: What are the top 5 correlated frequencies with the target\\label?**\n", "\n", "*Note: You many need to map the label to 0s and 1s.*\n", "\n", "*Additional Note: We're looking for **absolute** correlation values.*" ] }, { "cell_type": "code", "execution_count": 99, "metadata": {}, "outputs": [], "source": [ "#CODE HERE" ] }, { "cell_type": "code", "execution_count": 101, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Freq_45 0.339406\n", "Freq_10 0.341142\n", "Freq_49 0.351312\n", "Freq_12 0.392245\n", "Freq_11 0.432855\n", "Target 1.000000\n", "Name: Target, dtype: float64" ] }, "execution_count": 101, "metadata": {}, "output_type": "execute_result" } ], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Train | Test Split\n", "\n", "Our approach here will be one of using Cross Validation on 90% of the dataset, and then judging our results on a final test set of 10% to evaluate our model.\n", "\n", "**TASK: Split the data into features and labels, and then split into a training set and test set, with 90% for Cross-Validation training, and 10% for a final test set.**\n", "\n", "*Note: The solution uses a random_state=42*" ] }, { "cell_type": "code", "execution_count": 102, "metadata": {}, "outputs": [], "source": [ "# CODE HERE" ] }, { "cell_type": "code", "execution_count": 105, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**TASK: Create a PipeLine that contains both a StandardScaler and a KNN model**" ] }, { "cell_type": "code", "execution_count": 106, "metadata": {}, "outputs": [], "source": [ "# CODE HERE" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**TASK: Perform a grid-search with the pipeline to test various values of k and report back the best performing parameters.**" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# CODE HERE" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "GridSearchCV(cv=5,\n", " estimator=Pipeline(steps=[('scaler', StandardScaler()),\n", " ('knn', KNeighborsClassifier())]),\n", " param_grid={'knn__n_neighbors': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,\n", " 12, 13, 14, 15, 16, 17, 18, 19,\n", " 20, 21, 22, 23, 24, 25, 26, 27,\n", " 28, 29]},\n", " scoring='accuracy')" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'memory': None,\n", " 'steps': [('scaler', StandardScaler()),\n", " ('knn', KNeighborsClassifier(n_neighbors=1))],\n", " 'verbose': False,\n", " 'scaler': StandardScaler(),\n", " 'knn': KNeighborsClassifier(n_neighbors=1),\n", " 'scaler__copy': True,\n", " 'scaler__with_mean': True,\n", " 'scaler__with_std': True,\n", " 'knn__algorithm': 'auto',\n", " 'knn__leaf_size': 30,\n", " 'knn__metric': 'minkowski',\n", " 'knn__metric_params': None,\n", " 'knn__n_jobs': None,\n", " 'knn__n_neighbors': 1,\n", " 'knn__p': 2,\n", " 'knn__weights': 'uniform'}" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**(HARD) TASK: Using the .cv_results_ dictionary, see if you can create a plot of the mean test scores per K value.**" ] }, { "cell_type": "code", "execution_count": 113, "metadata": {}, "outputs": [], "source": [ "#CODE HERE" ] }, { "cell_type": "code", "execution_count": 114, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.84537696, 0.78065434, 0.77524893, 0.75917496, 0.75931721,\n", " 0.74822191, 0.75945946, 0.71664296, 0.7113798 , 0.68421053,\n", " 0.70042674, 0.68435277, 0.68449502, 0.67908962, 0.69530583,\n", " 0.68990043, 0.7113798 , 0.70042674, 0.72204836, 0.67908962,\n", " 0.70071124, 0.69530583, 0.69530583, 0.68463727, 0.68477952,\n", " 0.67923186, 0.67411095, 0.65775249, 0.6685633 ])" ] }, "execution_count": 114, "metadata": {}, "output_type": "execute_result" } ], "source": [] }, { "cell_type": "code", "execution_count": 115, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'Accuracy')" ] }, "execution_count": 115, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Final Model Evaluation\n", "\n", "**TASK: Using the grid classifier object from the previous step, get a final performance classification report and confusion matrix.**" ] }, { "cell_type": "code", "execution_count": 117, "metadata": {}, "outputs": [], "source": [ "#Code Here" ] }, { "cell_type": "code", "execution_count": 121, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[12, 1],\n", " [ 1, 7]], dtype=int64)" ] }, "execution_count": 121, "metadata": {}, "output_type": "execute_result" } ], "source": [] }, { "cell_type": "code", "execution_count": 122, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " M 0.92 0.92 0.92 13\n", " R 0.88 0.88 0.88 8\n", "\n", " accuracy 0.90 21\n", " macro avg 0.90 0.90 0.90 21\n", "weighted avg 0.90 0.90 0.90 21\n", "\n" ] } ], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Great Job!" ] } ], "metadata": { "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.7.6" } }, "nbformat": 4, "nbformat_minor": 4 }