{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Assignment 2\n", "Letter Recognition using Deep Learning" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "_cell_guid": "b1076dfc-b9ad-4769-8c92-a6c4dae69d19", "_uuid": "8f2839f25d086af736a60e9eeb907d3b93b6e0e5", "execution": { "iopub.execute_input": "2024-01-14T08:50:43.405423Z", "iopub.status.busy": "2024-01-14T08:50:43.405148Z", "iopub.status.idle": "2024-01-14T08:50:56.344546Z", "shell.execute_reply": "2024-01-14T08:50:56.343549Z", "shell.execute_reply.started": "2024-01-14T08:50:43.405398Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\scipy\\__init__.py:155: UserWarning: A NumPy version >=1.18.5 and <1.25.0 is required for this version of SciPy (detected version 1.26.3\n", " warnings.warn(f\"A NumPy version >={np_minversion} and <{np_maxversion}\"\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "WARNING:tensorflow:From C:\\Users\\Admin\\AppData\\Roaming\\Python\\Python39\\site-packages\\keras\\src\\losses.py:2976: The name tf.losses.sparse_softmax_cross_entropy is deprecated. Please use tf.compat.v1.losses.sparse_softmax_cross_entropy instead.\n", "\n" ] } ], "source": [ "import tensorflow as tf\n", "from sklearn.decomposition import PCA\n", "from sklearn.manifold import TSNE\n", "from sklearn.metrics import classification_report\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import StandardScaler\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "execution": { "iopub.execute_input": "2024-01-14T08:50:56.346675Z", "iopub.status.busy": "2024-01-14T08:50:56.346179Z", "iopub.status.idle": "2024-01-14T08:50:56.416821Z", "shell.execute_reply": "2024-01-14T08:50:56.415829Z", "shell.execute_reply.started": "2024-01-14T08:50:56.346646Z" } }, "outputs": [ { "data": { "text/html": [ "
\n", " | letter | \n", "xbox | \n", "ybox | \n", "width | \n", "height | \n", "onpix | \n", "xbar | \n", "ybar | \n", "x2bar | \n", "y2bar | \n", "xybar | \n", "x2ybar | \n", "xy2bar | \n", "xedge | \n", "xedgey | \n", "yedge | \n", "yedgex | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "T | \n", "2 | \n", "8 | \n", "3 | \n", "5 | \n", "1 | \n", "8 | \n", "13 | \n", "0 | \n", "6 | \n", "6 | \n", "10 | \n", "8 | \n", "0 | \n", "8 | \n", "0 | \n", "8 | \n", "
1 | \n", "I | \n", "5 | \n", "12 | \n", "3 | \n", "7 | \n", "2 | \n", "10 | \n", "5 | \n", "5 | \n", "4 | \n", "13 | \n", "3 | \n", "9 | \n", "2 | \n", "8 | \n", "4 | \n", "10 | \n", "
2 | \n", "D | \n", "4 | \n", "11 | \n", "6 | \n", "8 | \n", "6 | \n", "10 | \n", "6 | \n", "2 | \n", "6 | \n", "10 | \n", "3 | \n", "7 | \n", "3 | \n", "7 | \n", "3 | \n", "9 | \n", "
3 | \n", "N | \n", "7 | \n", "11 | \n", "6 | \n", "6 | \n", "3 | \n", "5 | \n", "9 | \n", "4 | \n", "6 | \n", "4 | \n", "4 | \n", "10 | \n", "6 | \n", "10 | \n", "2 | \n", "8 | \n", "
4 | \n", "G | \n", "2 | \n", "1 | \n", "3 | \n", "1 | \n", "1 | \n", "8 | \n", "6 | \n", "6 | \n", "6 | \n", "6 | \n", "5 | \n", "9 | \n", "1 | \n", "7 | \n", "5 | \n", "10 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
19995 | \n", "D | \n", "2 | \n", "2 | \n", "3 | \n", "3 | \n", "2 | \n", "7 | \n", "7 | \n", "7 | \n", "6 | \n", "6 | \n", "6 | \n", "4 | \n", "2 | \n", "8 | \n", "3 | \n", "7 | \n", "
19996 | \n", "C | \n", "7 | \n", "10 | \n", "8 | \n", "8 | \n", "4 | \n", "4 | \n", "8 | \n", "6 | \n", "9 | \n", "12 | \n", "9 | \n", "13 | \n", "2 | \n", "9 | \n", "3 | \n", "7 | \n", "
19997 | \n", "T | \n", "6 | \n", "9 | \n", "6 | \n", "7 | \n", "5 | \n", "6 | \n", "11 | \n", "3 | \n", "7 | \n", "11 | \n", "9 | \n", "5 | \n", "2 | \n", "12 | \n", "2 | \n", "4 | \n", "
19998 | \n", "S | \n", "2 | \n", "3 | \n", "4 | \n", "2 | \n", "1 | \n", "8 | \n", "7 | \n", "2 | \n", "6 | \n", "10 | \n", "6 | \n", "8 | \n", "1 | \n", "9 | \n", "5 | \n", "8 | \n", "
19999 | \n", "A | \n", "4 | \n", "9 | \n", "6 | \n", "6 | \n", "2 | \n", "9 | \n", "5 | \n", "3 | \n", "1 | \n", "8 | \n", "1 | \n", "8 | \n", "2 | \n", "7 | \n", "2 | \n", "8 | \n", "
20000 rows × 17 columns
\n", "\n", " | 1st component | \n", "2nd component | \n", "letter | \n", "
---|---|---|---|
0 | \n", "-2.080335 | \n", "-1.721469 | \n", "19.0 | \n", "
1 | \n", "0.369373 | \n", "2.014122 | \n", "8.0 | \n", "
2 | \n", "1.654349 | \n", "1.754984 | \n", "3.0 | \n", "
3 | \n", "1.490280 | \n", "-0.508884 | \n", "13.0 | \n", "
4 | \n", "-3.080981 | \n", "2.069843 | \n", "6.0 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "
19995 | \n", "-2.380036 | \n", "0.131239 | \n", "3.0 | \n", "
19996 | \n", "1.957901 | \n", "-1.326364 | \n", "2.0 | \n", "
19997 | \n", "1.285032 | \n", "-3.849970 | \n", "19.0 | \n", "
19998 | \n", "-2.345298 | \n", "0.183456 | \n", "18.0 | \n", "
19999 | \n", "0.065513 | \n", "2.055400 | \n", "0.0 | \n", "
20000 rows × 3 columns
\n", "\n", " | Dimension 1 | \n", "Dimension 2 | \n", "letter | \n", "
---|---|---|---|
0 | \n", "53.579613 | \n", "-62.915977 | \n", "19 | \n", "
1 | \n", "-12.441108 | \n", "39.682426 | \n", "8 | \n", "
2 | \n", "3.287479 | \n", "7.683816 | \n", "3 | \n", "
3 | \n", "46.184597 | \n", "-51.125381 | \n", "13 | \n", "
4 | \n", "-73.730843 | \n", "-55.393246 | \n", "6 | \n", "
\n", " | letter | \n", "xbox | \n", "ybox | \n", "width | \n", "height | \n", "onpix | \n", "xbar | \n", "ybar | \n", "x2bar | \n", "y2bar | \n", "xybar | \n", "x2ybar | \n", "xy2bar | \n", "xedge | \n", "xedgey | \n", "yedge | \n", "yedgex | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "T | \n", "2 | \n", "8 | \n", "3 | \n", "5 | \n", "1 | \n", "8 | \n", "13 | \n", "0 | \n", "6 | \n", "6 | \n", "10 | \n", "8 | \n", "0 | \n", "8 | \n", "0 | \n", "8 | \n", "
1 | \n", "I | \n", "5 | \n", "12 | \n", "3 | \n", "7 | \n", "2 | \n", "10 | \n", "5 | \n", "5 | \n", "4 | \n", "13 | \n", "3 | \n", "9 | \n", "2 | \n", "8 | \n", "4 | \n", "10 | \n", "
2 | \n", "D | \n", "4 | \n", "11 | \n", "6 | \n", "8 | \n", "6 | \n", "10 | \n", "6 | \n", "2 | \n", "6 | \n", "10 | \n", "3 | \n", "7 | \n", "3 | \n", "7 | \n", "3 | \n", "9 | \n", "
3 | \n", "N | \n", "7 | \n", "11 | \n", "6 | \n", "6 | \n", "3 | \n", "5 | \n", "9 | \n", "4 | \n", "6 | \n", "4 | \n", "4 | \n", "10 | \n", "6 | \n", "10 | \n", "2 | \n", "8 | \n", "
4 | \n", "G | \n", "2 | \n", "1 | \n", "3 | \n", "1 | \n", "1 | \n", "8 | \n", "6 | \n", "6 | \n", "6 | \n", "6 | \n", "5 | \n", "9 | \n", "1 | \n", "7 | \n", "5 | \n", "10 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
19995 | \n", "D | \n", "2 | \n", "2 | \n", "3 | \n", "3 | \n", "2 | \n", "7 | \n", "7 | \n", "7 | \n", "6 | \n", "6 | \n", "6 | \n", "4 | \n", "2 | \n", "8 | \n", "3 | \n", "7 | \n", "
19996 | \n", "C | \n", "7 | \n", "10 | \n", "8 | \n", "8 | \n", "4 | \n", "4 | \n", "8 | \n", "6 | \n", "9 | \n", "12 | \n", "9 | \n", "13 | \n", "2 | \n", "9 | \n", "3 | \n", "7 | \n", "
19997 | \n", "T | \n", "6 | \n", "9 | \n", "6 | \n", "7 | \n", "5 | \n", "6 | \n", "11 | \n", "3 | \n", "7 | \n", "11 | \n", "9 | \n", "5 | \n", "2 | \n", "12 | \n", "2 | \n", "4 | \n", "
19998 | \n", "S | \n", "2 | \n", "3 | \n", "4 | \n", "2 | \n", "1 | \n", "8 | \n", "7 | \n", "2 | \n", "6 | \n", "10 | \n", "6 | \n", "8 | \n", "1 | \n", "9 | \n", "5 | \n", "8 | \n", "
19999 | \n", "A | \n", "4 | \n", "9 | \n", "6 | \n", "6 | \n", "2 | \n", "9 | \n", "5 | \n", "3 | \n", "1 | \n", "8 | \n", "1 | \n", "8 | \n", "2 | \n", "7 | \n", "2 | \n", "8 | \n", "
20000 rows × 17 columns
\n", "