Format: application/octet-stream
1 {
2 "cells": [
3 {
4 "cell_type": "code",
5 "execution_count": 1,
6 "id": "5eba25cd",
7 "metadata": {},
8 "outputs": [],
9 "source": [
10 "import tensorflow as tf\n",
11 "import numpy as np"
12 ]
13 },
14 {
15 "cell_type": "code",
16 "execution_count": 2,
17 "id": "34de9001",
18 "metadata": {},
19 "outputs": [],
20 "source": [
21 "mnist= tf.keras.datasets.mnist"
22 ]
23 },
24 {
25 "cell_type": "code",
26 "execution_count": 3,
27 "id": "edeb9021",
28 "metadata": {},
29 "outputs": [],
30 "source": [
31 "(x_tr,y_tr),(x_te,y_te)=mnist.load_data()"
32 ]
33 },
34 {
35 "cell_type": "code",
36 "execution_count": 4,
37 "id": "173ed3ab",
38 "metadata": {},
39 "outputs": [],
40 "source": [
41 "x_tr = tf.keras.utils.normalize(x_tr, axis=1)\n",
42 "x_te = tf.keras.utils.normalize(x_te, axis=1)"
43 ]
44 },
45 {
46 "cell_type": "code",
47 "execution_count": 5,
48 "id": "21844de0",
49 "metadata": {},
50 "outputs": [],
51 "source": [
52 "model = tf.keras.Sequential()\n",
53 "model.add(tf.keras.layers.Flatten())\n",
54 "model.add(tf.keras.layers.Dense(1024, activation = tf.nn.relu))\n",
55 "model.add(tf.keras.layers.Dense(512, activation = tf.nn.elu))\n",
56 "model.add(tf.keras.layers.Dense(10, activation = tf.nn.softmax))\n",
57 "model.compile('adam',loss= 'sparse_categorical_crossentropy',metrics=['accuracy'])"
58 ]
59 },
60 {
61 "cell_type": "code",
62 "execution_count": 6,
63 "id": "3836a8cf",
64 "metadata": {
65 "scrolled": true
66 },
67 "outputs": [
68 {
69 "name": "stdout",
70 "output_type": "stream",
71 "text": [
72 "1875/1875 [==============================] - 35s 18ms/step - loss: 0.1904 - accuracy: 0.9420\n"
73 ]
74 },
75 {
76 "data": {
77 "text/plain": [
78 "<tensorflow.python.keras.callbacks.History at 0x24e0dd62940>"
79 ]
80 },
81 "execution_count": 6,
82 "metadata": {},
83 "output_type": "execute_result"
84 }
85 ],
86 "source": [
87 "model.fit(x_tr,y_tr)"
88 ]
89 },
90 {
91 "cell_type": "code",
92 "execution_count": null,
93 "id": "73837f32",
94 "metadata": {},
95 "outputs": [],
96 "source": []
97 },
98 {
99 "cell_type": "code",
100 "execution_count": 7,
101 "id": "dc50c9b6",
102 "metadata": {},
103 "outputs": [
104 {
105 "name": "stdout",
106 "output_type": "stream",
107 "text": [
108 "1875/1875 [==============================] - 13s 7ms/step - loss: 0.0883 - accuracy: 0.9721\n",
109 "[0.08832705020904541, 0.9721166491508484]\n",
110 "313/313 [==============================] - 3s 7ms/step - loss: 0.1097 - accuracy: 0.9662\n",
111 "[0.10969053953886032, 0.9661999940872192]\n"
112 ]
113 }
114 ],
115 "source": [
116 "print(model.evaluate(x_tr, y_tr))\n",
117 "print(model.evaluate(x_te, y_te))"
118 ]
119 },
120 {
121 "cell_type": "code",
122 "execution_count": null,
123 "id": "090d7f3d",
124 "metadata": {},
125 "outputs": [],
126 "source": []
127 },
128 {
129 "cell_type": "code",
130 "execution_count": null,
131 "id": "2952feba",
132 "metadata": {},
133 "outputs": [],
134 "source": []
135 },
136 {
137 "cell_type": "code",
138 "execution_count": null,
139 "id": "8c67aba9",
140 "metadata": {},
141 "outputs": [],
142 "source": []
143 },
144 {
145 "cell_type": "code",
146 "execution_count": 8,
147 "id": "7f6f8313",
148 "metadata": {},
149 "outputs": [
150 {
151 "name": "stdout",
152 "output_type": "stream",
153 "text": [
154 "WARNING:tensorflow:Layers in a Sequential model should only have a single input tensor, but we receive a <class 'tuple'> input: (<tf.Tensor 'IteratorGetNext:0' shape=(None, 28, 28) dtype=float32>,)\n",
155 "Consider rewriting this model with the Functional API.\n"
156 ]
157 }
158 ],
159 "source": [
160 "predictions = model.predict([x_te])"
161 ]
162 },
163 {
164 "cell_type": "code",
165 "execution_count": null,
166 "id": "3ba668e1",
167 "metadata": {},
168 "outputs": [],
169 "source": []
170 },
171 {
172 "cell_type": "code",
173 "execution_count": null,
174 "id": "63d67141",
175 "metadata": {},
176 "outputs": [],
177 "source": []
178 },
179 {
180 "cell_type": "code",
181 "execution_count": 9,
182 "id": "9f62f05d",
183 "metadata": {},
184 "outputs": [],
185 "source": [
186 "import matplotlib.pyplot as plt\n",
187 "import random "
188 ]
189 },
190 {
191 "cell_type": "code",
192 "execution_count": 10,
193 "id": "351201e0",
194 "metadata": {},
195 "outputs": [],
196 "source": [
197 "def pred():\n",
198 " num=random.randint(0,9999)\n",
199 " plt.imshow(x_te[num], cmap=plt.cm.binary)\n",
200 " print('output, prediction is:',np.argmax(predictions[num]))"
201 ]
202 },
203 {
204 "cell_type": "code",
205 "execution_count": null,
206 "id": "c7f239fe",
207 "metadata": {},
208 "outputs": [],
209 "source": []
210 },
211 {
212 "cell_type": "code",
213 "execution_count": 41,
214 "id": "68f74408",
215 "metadata": {},
216 "outputs": [
217 {
218 "name": "stdout",
219 "output_type": "stream",
220 "text": [
221 "output, prediction is: 3\n"
222 ]
223 },
224 {
225 "data": {
226 "image/png": "iVBORw0KGgoAAAANSUhEUgAAAPsAAAD4CAYAAAAq5pAIAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAANbklEQVR4nO3dbYid9ZnH8d9PjQ+xUePOZIxJ2IklkAQhaR11MYu46BYfEFPEJb4oFqTjC4UWiqy4YH0VZElbfLEU0lWMi2sothJfiFuR+hCExhOZjRnjbjRk26mTyQkhNEXw8doXc7uMcc7/TM7z5vp+YDjn3Nf55764md/c55z/ffJ3RAjAme+sfjcAoDcIO5AEYQeSIOxAEoQdSOKcXu5saGgoRkdHe7lLIJXDhw/r2LFjnq/WVtht3yzpcUlnS/rXiHis9PzR0VHVarV2dgmgYGxsrGGt5Zfxts+W9C+SbpG0XtLdtte3+u8B6K523rNfI+n9iDgUEZ9I2inpjs60BaDT2gn7Ckl/nPN4qtr2FbbHbdds1+r1ehu7A9COdsI+34cAX7v2NiK2R8RYRIwNDw+3sTsA7Wgn7FOSVs15vFLSh+21A6Bb2gn7W5LW2F5t+1xJWyS90Jm2AHRay1NvEfGZ7Qck/Ydmp96ejIjJjnUGoKPammePiBclvdihXgB0EZfLAkkQdiAJwg4kQdiBJAg7kARhB5Ig7EAShB1IgrADSRB2IAnCDiRB2IEkCDuQBGEHkiDsQBKEHUiCsANJEHYgCcIOJEHYgSQIO5AEYQeSIOxAEoQdSIKwA0kQdiAJwg4kQdiBJAg7kARhB5Joa8lm24clnZT0uaTPImKsE00B6Ly2wl75u4g41oF/B0AX8TIeSKLdsIek39rea3t8vifYHrdds12r1+tt7g5Aq9oN+6aI+LakWyTdb/v6U58QEdsjYiwixoaHh9vcHYBWtRX2iPiwuj0q6XlJ13SiKQCd13LYbV9oe8mX9yV9R9L+TjUGoLPa+TR+RNLztr/8d/49Il7qSFcYGPv27SvWn3vuuWJ93bp1DWsrVqwojr3++q+9K0QbWg57RByStKGDvQDoIqbegCQIO5AEYQeSIOxAEoQdSKITX4RBEw8++GCxvmzZsmJ9yZIlxfqePXsa1jZu3Fgcu379+mL94MGDxfrq1auL9Wpqdl4TExPFsc2Oy9q1a4t1fBVndiAJwg4kQdiBJAg7kARhB5Ig7EAShB1Ignn2Hti2bVuxft555xXra9asKdZXrVrVsLZy5cri2Pfee69Y//jjj4v122+/vVg/ceJEw9rk5GRx7BtvvFGsM89+ejizA0kQdiAJwg4kQdiBJAg7kARhB5Ig7EASzLP3QEQU6zMzM8X6448/Xqxv2bKlYe2ss8p/zy+66KJi/brrrivWFy9eXKzv3bu3YW16ero49vjx48U6Tg9ndiAJwg4kQdiBJAg7kARhB5Ig7EAShB1Ignn2ATAyMlKsb926tWv7vvLKK9saf+TIkWK9Xq83rF1yySXFsbfddlsrLaGBpmd220/aPmp7/5xtl9p+2fbB6nZpd9sE0K6FvIx/StLNp2x7SNIrEbFG0ivVYwADrGnYI+J1Sadet3iHpB3V/R2SNne2LQCd1uoHdCMRMS1J1W3DRblsj9uu2a6V3r8B6K6ufxofEdsjYiwixoaHh7u9OwANtBr2GdvLJam6Pdq5lgB0Q6thf0HSPdX9eyTt6kw7ALql6Ty77Wcl3SBpyPaUpJ9IekzSr2zfK+kPku7qZpPon2bz6G+++WaxXvpO+l13lX9tmq39jtPTNOwRcXeD0o0d7gVAF3G5LJAEYQeSIOxAEoQdSIKwA0nwFVcU1Wq1Yv2cc8q/Qjfe2HjShqm13uLMDiRB2IEkCDuQBGEHkiDsQBKEHUiCsANJMM+e3O7du4v1qampYv3yyy8v1q+66qrT7gndwZkdSIKwA0kQdiAJwg4kQdiBJAg7kARhB5Jgnv0Mt3///mJ9z549xfrmzZuL9dHR0dPsCP3CmR1IgrADSRB2IAnCDiRB2IEkCDuQBGEHkmCe/QwwMTHRsPb0008Xx27atKlYv+KKK1ppCQOo6Znd9pO2j9reP2fbo7b/ZHui+rm1u20CaNdCXsY/Jenmebb/PCI2Vj8vdrYtAJ3WNOwR8bqk4z3oBUAXtfMB3QO291Uv85c2epLtcds127V6vd7G7gC0o9Ww/0LSNyVtlDQt6aeNnhgR2yNiLCLGhoeHW9wdgHa1FPaImImIzyPiC0m/lHRNZ9sC0Gkthd328jkPvyup/D1KAH3XdJ7d9rOSbpA0ZHtK0k8k3WB7o6SQdFjSfd1rEc3YblhbtGhRcezMzEyxfuTIkWL94osvLtYvuOCCYh290zTsEXH3PJuf6EIvALqIy2WBJAg7kARhB5Ig7EAShB1Igq+4ngE2bNjQsDYyMlIcu2vXrmL9qaeeKtbPP//8Yr20ZPPatWuLY4eGhor10pQjvo4zO5AEYQeSIOxAEoQdSIKwA0kQdiAJwg4kwTz7Ge6yyy4r1u+7r71vJx86dKhYf/fddxvWnnnmmeLY8fHxYn3x4sXFOr6KMzuQBGEHkiDsQBKEHUiCsANJEHYgCcIOJME8O9rSbEnnUn337t3Fsdu2bSvWH3nkkWIdX8WZHUiCsANJEHYgCcIOJEHYgSQIO5AEYQeSYJ4dfXPy5Mli/bXXXutRJzk0PbPbXmX7d7YP2J60/cNq+6W2X7Z9sLpd2v12AbRqIS/jP5P044hYJ+lvJN1ve72khyS9EhFrJL1SPQYwoJqGPSKmI+Lt6v5JSQckrZB0h6Qd1dN2SNrcpR4BdMBpfUBne1TStyT9XtJIRExLs38QJC1rMGbcds12rV6vt9kugFYtOOy2vyHp15J+FBF/Xui4iNgeEWMRMTY8PNxKjwA6YEFht71Is0F/JiJ+U22esb28qi+XdLQ7LQLohKZTb55dF/cJSQci4mdzSi9IukfSY9Vtee1fpDQ9Pd2w9sEHHxTHbt26tdPtpLaQefZNkr4n6R3bE9W2hzUb8l/ZvlfSHyTd1ZUOAXRE07BHxG5JjVa9v7Gz7QDoFi6XBZIg7EAShB1IgrADSRB2IAm+4oq2fPrpp8X6Sy+91LC2YcOG4tirr766pZ4wP87sQBKEHUiCsANJEHYgCcIOJEHYgSQIO5AE8+wo+uSTT4r1V199tVg/ceJEw9q6deuKY886i3NRJ3E0gSQIO5AEYQeSIOxAEoQdSIKwA0kQdiAJ5tkHwM6dO4v1c889t1hftGhRw9rSpeXFdT/66KNifXJyslgvzaNL0pYtWxrWhoaGimPRWZzZgSQIO5AEYQeSIOxAEoQdSIKwA0kQdiCJhazPvkrS05Iuk/SFpO0R8bjtRyX9QFK9eurDEfFitxo9k1177bXFerN1zPfu3duwdvz48eLYkZGRYr3ZHP+dd95ZrDf7zjp6ZyEX1Xwm6ccR8bbtJZL22n65qv08IrZ1rz0AnbKQ9dmnJU1X90/aPiBpRbcbA9BZp/We3faopG9J+n216QHb+2w/aXve6zJtj9uu2a7V6/X5ngKgBxYcdtvfkPRrST+KiD9L+oWkb0raqNkz/0/nGxcR2yNiLCLGhoeH2+8YQEsWFHbbizQb9Gci4jeSFBEzEfF5RHwh6ZeSrulemwDa1TTsti3pCUkHIuJnc7Yvn/O070ra3/n2AHTKQj6N3yTpe5LesT1RbXtY0t22N0oKSYcl3deF/lJYvXp1W/Wbbrqpk+3gDLWQT+N3S/I8JebUgf9HuIIOSIKwA0kQdiAJwg4kQdiBJAg7kARhB5Ig7EAShB1IgrADSRB2IAnCDiRB2IEkCDuQhCOidzuz65L+Z86mIUnHetbA6RnU3ga1L4neWtXJ3v46Iub9/996Gvav7dyuRcRY3xooGNTeBrUvid5a1aveeBkPJEHYgST6Hfbtfd5/yaD2Nqh9SfTWqp701tf37AB6p99ndgA9QtiBJPoSdts32/4v2+/bfqgfPTRi+7Dtd2xP2K71uZcnbR+1vX/Otkttv2z7YHU77xp7fertUdt/qo7dhO1b+9TbKtu/s33A9qTtH1bb+3rsCn315Lj1/D277bMl/bekv5c0JektSXdHxLs9baQB24cljUVE3y/AsH29pL9Iejoirqy2/bOk4xHxWPWHcmlE/OOA9PaopL/0exnvarWi5XOXGZe0WdL31cdjV+jrH9SD49aPM/s1kt6PiEMR8YmknZLu6EMfAy8iXpd0/JTNd0jaUd3fodlflp5r0NtAiIjpiHi7un9S0pfLjPf12BX66ol+hH2FpD/OeTylwVrvPST91vZe2+P9bmYeIxExLc3+8kha1ud+TtV0Ge9eOmWZ8YE5dq0sf96ufoR9vqWkBmn+b1NEfFvSLZLur16uYmEWtIx3r8yzzPhAaHX583b1I+xTklbNebxS0od96GNeEfFhdXtU0vMavKWoZ75cQbe6Pdrnfv7PIC3jPd8y4xqAY9fP5c/7Efa3JK2xvdr2uZK2SHqhD318je0Lqw9OZPtCSd/R4C1F/YKke6r790ja1cdevmJQlvFutMy4+nzs+r78eUT0/EfSrZr9RP4DSf/Ujx4a9HWFpP+sfib73ZukZzX7su5Tzb4iulfSX0l6RdLB6vbSAert3yS9I2mfZoO1vE+9/a1m3xrukzRR/dza72NX6Ksnx43LZYEkuIIOSIKwA0kQdiAJwg4kQdiBJAg7kARhB5L4X+1F8rmDtlk6AAAAAElFTkSuQmCC\n",
227 "text/plain": [
228 "<Figure size 432x288 with 1 Axes>"
229 ]
230 },
231 "metadata": {
232 "needs_background": "light"
233 },
234 "output_type": "display_data"
235 }
236 ],
237 "source": [
238 "pred()"
239 ]
240 },
241 {
242 "cell_type": "code",
243 "execution_count": null,
244 "id": "6f4290a4",
245 "metadata": {},
246 "outputs": [],
247 "source": []
248 },
249 {
250 "cell_type": "code",
251 "execution_count": null,
252 "id": "bcf85b1d",
253 "metadata": {},
254 "outputs": [],
255 "source": []
256 }
257 ],
258 "metadata": {
259 "kernelspec": {
260 "display_name": "Python 3",
261 "language": "python",
262 "name": "python3"
263 },
264 "language_info": {
265 "codemirror_mode": {
266 "name": "ipython",
267 "version": 3
268 },
269 "file_extension": ".py",
270 "mimetype": "text/x-python",
271 "name": "python",
272 "nbconvert_exporter": "python",
273 "pygments_lexer": "ipython3",
274 "version": "3.8.8"
275 }
276 },
277 "nbformat": 4,
278 "nbformat_minor": 5
279 }
280