riyageorge commited on
Commit
835448b
·
1 Parent(s): f8dc74c

Upload 4 files

Browse files
backprop_movie_model.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e0779acfbb238a84f17b1e16c8a75eef8548f6b2c46f5195d750dd68eca9e757
3
+ size 4297
backpropagation_movie_model.ipynb ADDED
@@ -0,0 +1,932 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "#### Movie Sentiment Analysis Model using Backpropagation"
8
+ ]
9
+ },
10
+ {
11
+ "cell_type": "code",
12
+ "execution_count": 1,
13
+ "metadata": {},
14
+ "outputs": [],
15
+ "source": [
16
+ "from tensorflow.keras.datasets import imdb\n",
17
+ "import numpy as np\n",
18
+ "from tqdm import tqdm\n",
19
+ "from BackPropogation import BackPropogation\n",
20
+ "from tensorflow.keras.preprocessing import sequence\n",
21
+ "from sklearn.metrics import confusion_matrix, classification_report\n",
22
+ "import pickle"
23
+ ]
24
+ },
25
+ {
26
+ "cell_type": "code",
27
+ "execution_count": 2,
28
+ "metadata": {},
29
+ "outputs": [
30
+ {
31
+ "name": "stderr",
32
+ "output_type": "stream",
33
+ "text": [
34
+ " 20%|██ | 1/5 [00:00<00:00, 4.34it/s]"
35
+ ]
36
+ },
37
+ {
38
+ "name": "stdout",
39
+ "output_type": "stream",
40
+ "text": [
41
+ "Updated Weights after epoch 0 with [ 3.00000000e-01 4.00000000e-01 5.00000000e-01 6.00000000e-01\n",
42
+ " 3.00000000e-01 2.00000000e-01 1.00000000e-01 2.00000000e-01\n",
43
+ " 4.00000000e-01 3.00000000e-01 4.00000000e-01 4.00000000e-01\n",
44
+ " 3.00000000e-01 4.00000000e-01 3.00000000e-01 2.00000000e-01\n",
45
+ " -2.00000000e-01 -2.77555756e-17 -1.00000000e-01 -1.00000000e-01\n",
46
+ " -2.00000000e-01 -2.77555756e-17 -2.00000000e-01 -1.00000000e-01\n",
47
+ " -1.00000000e-01 4.00000000e-01 5.00000000e-01 1.00000000e+00\n",
48
+ " 7.00000000e-01 5.00000000e-01 2.00000000e-01 4.00000000e-01\n",
49
+ " 2.00000000e-01 4.00000000e-01 7.00000000e-01 7.00000000e-01\n",
50
+ " 5.00000000e-01 3.00000000e-01 2.00000000e-01 1.00000000e-01\n",
51
+ " 2.00000000e-01 -2.77555756e-17 1.00000000e-01 4.00000000e-01\n",
52
+ " 2.00000000e-01 1.00000000e-01 -2.00000000e-01 -4.00000000e-01\n",
53
+ " -8.00000000e-01 -1.10000000e+00 -7.00000000e-01 -6.00000000e-01\n",
54
+ " -4.00000000e-01 -3.00000000e-01 2.77555756e-17 -3.00000000e-01\n",
55
+ " -5.00000000e-01 -5.00000000e-01 -6.00000000e-01 -3.00000000e-01\n",
56
+ " -4.00000000e-01 -6.00000000e-01 -7.00000000e-01 -9.00000000e-01\n",
57
+ " -6.00000000e-01 -5.00000000e-01 -3.00000000e-01 -2.00000000e-01\n",
58
+ " 1.00000000e-01 4.00000000e-01 4.00000000e-01 5.00000000e-01\n",
59
+ " 4.00000000e-01 4.00000000e-01 7.00000000e-01 4.00000000e-01\n",
60
+ " 1.00000000e-01 5.00000000e-01 4.00000000e-01 6.00000000e-01\n",
61
+ " 6.00000000e-01 2.00000000e-01 3.00000000e-01 6.00000000e-01\n",
62
+ " 2.00000000e-01 -1.00000000e-01 1.00000000e-01 -1.00000000e-01\n",
63
+ " -3.00000000e-01 -1.00000000e-01 2.00000000e-01 -3.00000000e-01\n",
64
+ " -5.00000000e-01 -5.00000000e-01 -1.10000000e+00 -1.10000000e+00\n",
65
+ " -8.00000000e-01 -8.00000000e-01 -5.00000000e-01 -5.00000000e-01\n",
66
+ " -4.00000000e-01 2.00000000e-01 3.00000000e-01 4.00000000e-01\n",
67
+ " 5.00000000e-01 2.00000000e-01 -2.00000000e-01 1.00000000e-01\n",
68
+ " 1.00000000e-01 2.77555756e-17 2.77555756e-17 -1.00000000e-01\n",
69
+ " 1.00000000e-01 -1.00000000e-01 -1.00000000e-01 -2.00000000e-01\n",
70
+ " 2.77555756e-17 2.77555756e-17 1.00000000e-01 -2.00000000e-01\n",
71
+ " -5.00000000e-01 -6.00000000e-01 -9.00000000e-01 -7.00000000e-01\n",
72
+ " -6.00000000e-01 -4.00000000e-01 -3.00000000e-01 -1.00000000e-01\n",
73
+ " -1.00000000e-01 -3.00000000e-01 -2.77555756e-17 -3.00000000e-01\n",
74
+ " 1.00000000e-01 2.00000000e-01 1.00000000e-01 4.00000000e-01\n",
75
+ " 2.00000000e-01 6.00000000e-01 1.00000000e+00 8.00000000e-01\n",
76
+ " 9.00000000e-01 5.00000000e-01 1.00000000e-01 -2.00000000e-01\n",
77
+ " -2.00000000e-01 -4.00000000e-01 -4.00000000e-01 -7.00000000e-01\n",
78
+ " -4.00000000e-01 -7.00000000e-01 -7.00000000e-01 -3.00000000e-01\n",
79
+ " -5.00000000e-01 -2.00000000e-01 4.00000000e-01 7.00000000e-01\n",
80
+ " 9.00000000e-01 5.00000000e-01 2.00000000e-01 -6.00000000e-01\n",
81
+ " -3.00000000e-01 -2.77555756e-17 2.00000000e-01 1.00000000e-01\n",
82
+ " -3.00000000e-01 1.00000000e-01 5.00000000e-01 2.00000000e-01\n",
83
+ " 3.00000000e-01 2.00000000e-01 2.00000000e-01 2.00000000e-01\n",
84
+ " 1.00000000e-01 2.77555756e-17 -1.00000000e-01 -4.00000000e-01\n",
85
+ " -5.00000000e-01 -3.00000000e-01 -7.00000000e-01 -1.30000000e+00\n",
86
+ " -1.00000000e+00 -4.00000000e-01 1.00000000e-01 3.00000000e-01\n",
87
+ " 4.00000000e-01 1.00000000e-01 -2.00000000e-01 2.77555756e-17\n",
88
+ " -1.00000000e-01 -6.00000000e-01 -5.00000000e-01 -2.00000000e-01\n",
89
+ " -7.00000000e-01 -3.00000000e-01 -9.00000000e-01 -7.00000000e-01\n",
90
+ " -2.00000000e-01 2.77555756e-17 -4.00000000e-01 -3.00000000e-01\n",
91
+ " -1.00000000e+00 -1.00000000e+00 -1.10000000e+00 -1.00000000e+00\n",
92
+ " -1.00000000e-01 3.00000000e-01 1.00000000e-01 2.77555756e-17\n",
93
+ " -1.00000000e-01 -2.00000000e-01 -3.00000000e-01 -7.00000000e-01\n",
94
+ " -7.00000000e-01 -2.00000000e-01 -6.00000000e-01 -6.00000000e-01\n",
95
+ " -2.00000000e-01 -3.00000000e-01 -2.00000000e-01 -4.00000000e-01\n",
96
+ " -1.30000000e+00 -7.00000000e-01 -2.00000000e-01 1.00000000e-01\n",
97
+ " 4.00000000e-01 8.00000000e-01 2.77555756e-17 -2.00000000e-01\n",
98
+ " -8.00000000e-01 -8.00000000e-01 -9.00000000e-01 -7.00000000e-01\n",
99
+ " -1.30000000e+00 -7.00000000e-01 -4.00000000e-01 -5.00000000e-01\n",
100
+ " -1.00000000e-01 -8.00000000e-01 -6.00000000e-01 -7.00000000e-01\n",
101
+ " -8.00000000e-01 -3.00000000e-01 -4.00000000e-01 1.00000000e-01\n",
102
+ " 1.20000000e+00 1.10000000e+00 1.20000000e+00 7.00000000e-01\n",
103
+ " 1.00000000e-01 4.00000000e-01 3.00000000e-01 2.00000000e-01\n",
104
+ " 1.00000000e-01 5.00000000e-01 3.00000000e-01 -2.77555756e-17\n",
105
+ " 3.00000000e-01 5.00000000e-01 6.00000000e-01 6.00000000e-01\n",
106
+ " 1.00000000e-01 -1.00000000e-01 -6.00000000e-01 -1.00000000e-01\n",
107
+ " 6.00000000e-01 3.00000000e-01 2.00000000e-01 6.00000000e-01\n",
108
+ " 2.77555756e-17 -8.00000000e-01 -9.00000000e-01 -6.00000000e-01\n",
109
+ " -6.00000000e-01 -6.00000000e-01 -4.00000000e-01 -3.00000000e-01\n",
110
+ " 1.00000000e-01 2.00000000e+00 2.00000000e+00 1.10000000e+00\n",
111
+ " -5.00000000e-01 -1.00000000e-01 2.00000000e-01 -4.00000000e-01\n",
112
+ " -3.00000000e-01 -5.00000000e-01 -5.00000000e-01 -1.00000000e-01\n",
113
+ " 2.77555756e-17 2.77555756e-17 -3.00000000e-01 -3.00000000e-01\n",
114
+ " 2.00000000e-01 4.00000000e-01 6.00000000e-01 1.10000000e+00\n",
115
+ " 7.00000000e-01 -4.00000000e-01 -2.77555756e-17 3.00000000e-01\n",
116
+ " -3.00000000e-01 3.00000000e-01 -1.00000000e-01 9.00000000e-01\n",
117
+ " 2.00000000e-01 7.00000000e-01 1.10000000e+00 1.00000000e-01\n",
118
+ " 4.00000000e-01 -1.00000000e-01 -3.00000000e-01 5.00000000e-01\n",
119
+ " 2.77555756e-17 1.00000000e-01 6.00000000e-01 1.00000000e-01\n",
120
+ " -1.00000000e+00 -1.00000000e+00 -6.00000000e-01 -6.00000000e-01\n",
121
+ " -6.00000000e-01 -6.00000000e-01 -4.00000000e-01 -4.00000000e-01\n",
122
+ " -1.00000000e-01 -4.00000000e-01 -2.00000000e-01 3.00000000e-01\n",
123
+ " -6.00000000e-01 -1.10000000e+00 -1.20000000e+00 -1.00000000e-01\n",
124
+ " 8.00000000e-01 2.00000000e-01 -6.00000000e-01 -1.00000000e-01\n",
125
+ " -5.00000000e-01 -1.00000000e-01 3.00000000e-01 2.00000000e-01\n",
126
+ " -6.00000000e-01 -5.00000000e-01 -6.00000000e-01 -5.00000000e-01\n",
127
+ " 1.00000000e-01 2.00000000e-01 1.00000000e+00 -4.00000000e-01\n",
128
+ " 3.00000000e-01 1.00000000e-01 2.00000000e-01 1.30000000e+00\n",
129
+ " 4.00000000e-01 4.00000000e-01 -8.00000000e-01 1.00000000e-01\n",
130
+ " -2.00000000e-01 3.00000000e-01 2.00000000e-01 -4.00000000e-01\n",
131
+ " -8.00000000e-01 3.00000000e-01 -1.00000000e+00 -4.00000000e-01\n",
132
+ " -2.00000000e-01 3.00000000e-01 2.00000000e-01 1.00000000e-01\n",
133
+ " 4.00000000e-01 6.00000000e-01 -3.00000000e-01 -6.00000000e-01\n",
134
+ " -1.10000000e+00 -5.00000000e-01 -7.00000000e-01 -4.00000000e-01\n",
135
+ " -1.10000000e+00 -9.00000000e-01 1.10000000e+00 -1.00000000e-01\n",
136
+ " -3.00000000e-01 1.00000000e-01 -4.00000000e-01 -5.00000000e-01\n",
137
+ " 8.00000000e-01 5.00000000e-01 -2.00000000e-01 -7.00000000e-01\n",
138
+ " 4.00000000e-01 6.00000000e-01 -4.00000000e-01 -7.00000000e-01\n",
139
+ " 1.00000000e-01 9.00000000e-01 1.00000000e-01 2.77555756e-17\n",
140
+ " 1.00000000e-01 7.00000000e-01 2.00000000e-01 7.00000000e-01\n",
141
+ " 5.00000000e-01 -5.00000000e-01 -4.00000000e-01 -8.00000000e-01\n",
142
+ " -4.00000000e-01 -6.00000000e-01 -1.00000000e+00 -7.00000000e-01\n",
143
+ " -6.00000000e-01 -1.00000000e-01 -7.00000000e-01 -1.30000000e+00\n",
144
+ " -4.00000000e-01 -3.00000000e-01 -8.00000000e-01 -5.00000000e-01\n",
145
+ " -2.00000000e-01 -5.00000000e-01 -2.00000000e-01 4.00000000e-01\n",
146
+ " 5.00000000e-01 3.00000000e-01 2.00000000e-01 -1.00000000e-01\n",
147
+ " -2.77555756e-17 2.77555756e-17 -3.00000000e-01 1.00000000e-01\n",
148
+ " 3.00000000e-01 -1.00000000e-01 -5.00000000e-01 -5.00000000e-01\n",
149
+ " -6.00000000e-01 -9.00000000e-01 -5.00000000e-01 2.00000000e-01\n",
150
+ " -3.00000000e-01 -7.00000000e-01 -8.00000000e-01 -1.00000000e-01\n",
151
+ " -3.00000000e-01 -2.00000000e-01 -2.00000000e-01 1.00000000e-01\n",
152
+ " 1.00000000e-01 1.10000000e+00 1.10000000e+00 -1.00000000e-01\n",
153
+ " -5.00000000e-01 -5.00000000e-01 2.00000000e-01 5.00000000e-01\n",
154
+ " 5.00000000e-01 1.00000000e-01 -2.00000000e-01 -6.00000000e-01\n",
155
+ " -1.00000000e-01 -3.00000000e-01 -1.00000000e-01 -2.77555756e-17\n",
156
+ " 3.00000000e-01 2.00000000e-01 -4.00000000e-01 -2.00000000e-01\n",
157
+ " -5.00000000e-01 -1.00000000e-01 -1.00000000e-01 2.77555756e-17\n",
158
+ " -1.00000000e-01 1.00000000e-01 2.00000000e-01 3.00000000e-01\n",
159
+ " 2.00000000e-01 2.00000000e-01 3.00000000e-01 3.00000000e-01\n",
160
+ " 3.00000000e-01 2.00000000e-01 2.00000000e-01 2.00000000e-01\n",
161
+ " 1.00000000e-01 2.00000000e-01 3.00000000e-01 3.00000000e-01\n",
162
+ " 2.00000000e-01 2.00000000e-01 2.00000000e-01 2.00000000e-01\n",
163
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 1.00000000e-01\n",
164
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 1.00000000e-01\n",
165
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 1.00000000e-01]\n"
166
+ ]
167
+ },
168
+ {
169
+ "name": "stderr",
170
+ "output_type": "stream",
171
+ "text": [
172
+ " 40%|████ | 2/5 [00:00<00:00, 4.22it/s]"
173
+ ]
174
+ },
175
+ {
176
+ "name": "stdout",
177
+ "output_type": "stream",
178
+ "text": [
179
+ "Updated Weights after epoch 1 with [ 4.00000000e-01 7.00000000e-01 8.00000000e-01 9.00000000e-01\n",
180
+ " 2.00000000e-01 -2.00000000e-01 -5.00000000e-01 -3.00000000e-01\n",
181
+ " 2.00000000e-01 1.00000000e-01 5.00000000e-01 4.00000000e-01\n",
182
+ " 2.00000000e-01 3.00000000e-01 1.00000000e-01 -1.00000000e-01\n",
183
+ " -6.00000000e-01 -2.00000000e-01 -4.00000000e-01 -2.00000000e-01\n",
184
+ " -4.00000000e-01 -2.77555756e-17 -4.00000000e-01 -2.00000000e-01\n",
185
+ " -2.00000000e-01 6.00000000e-01 5.00000000e-01 1.40000000e+00\n",
186
+ " 8.00000000e-01 7.00000000e-01 1.00000000e-01 3.00000000e-01\n",
187
+ " -2.77555756e-17 3.00000000e-01 1.00000000e+00 1.00000000e+00\n",
188
+ " 6.00000000e-01 4.00000000e-01 1.00000000e-01 -2.77555756e-17\n",
189
+ " 1.00000000e-01 -2.77555756e-17 4.00000000e-01 7.00000000e-01\n",
190
+ " 5.00000000e-01 2.00000000e-01 -1.00000000e-01 -3.00000000e-01\n",
191
+ " -1.00000000e+00 -1.40000000e+00 -5.00000000e-01 -5.00000000e-01\n",
192
+ " -2.00000000e-01 -1.00000000e-01 3.00000000e-01 -1.00000000e-01\n",
193
+ " -3.00000000e-01 -6.00000000e-01 -9.00000000e-01 -3.00000000e-01\n",
194
+ " -6.00000000e-01 -8.00000000e-01 -9.00000000e-01 -1.40000000e+00\n",
195
+ " -8.00000000e-01 -7.00000000e-01 -4.00000000e-01 -3.00000000e-01\n",
196
+ " 1.00000000e-01 7.00000000e-01 5.00000000e-01 3.00000000e-01\n",
197
+ " 3.00000000e-01 2.00000000e-01 8.00000000e-01 3.00000000e-01\n",
198
+ " -3.00000000e-01 8.00000000e-01 6.00000000e-01 6.00000000e-01\n",
199
+ " 7.00000000e-01 1.00000000e-01 5.00000000e-01 1.00000000e+00\n",
200
+ " 2.77555756e-17 -5.00000000e-01 2.77555756e-17 -2.00000000e-01\n",
201
+ " -5.00000000e-01 -4.00000000e-01 4.00000000e-01 -3.00000000e-01\n",
202
+ " -7.00000000e-01 -6.00000000e-01 -1.70000000e+00 -1.60000000e+00\n",
203
+ " -1.10000000e+00 -1.00000000e+00 -5.00000000e-01 -4.00000000e-01\n",
204
+ " -3.00000000e-01 8.00000000e-01 1.00000000e+00 1.20000000e+00\n",
205
+ " 1.10000000e+00 6.00000000e-01 2.77555756e-17 4.00000000e-01\n",
206
+ " 3.00000000e-01 -3.00000000e-01 -3.00000000e-01 -4.00000000e-01\n",
207
+ " -1.00000000e-01 -1.00000000e-01 -3.00000000e-01 -4.00000000e-01\n",
208
+ " 2.77555756e-17 1.00000000e-01 5.00000000e-01 -1.00000000e-01\n",
209
+ " -9.00000000e-01 -9.00000000e-01 -1.30000000e+00 -8.00000000e-01\n",
210
+ " -1.00000000e+00 -6.00000000e-01 -6.00000000e-01 -1.00000000e-01\n",
211
+ " -2.00000000e-01 -3.00000000e-01 2.00000000e-01 -1.00000000e-01\n",
212
+ " 1.00000000e-01 4.00000000e-01 5.00000000e-01 9.00000000e-01\n",
213
+ " 6.00000000e-01 1.30000000e+00 1.90000000e+00 1.40000000e+00\n",
214
+ " 1.70000000e+00 8.00000000e-01 5.00000000e-01 -1.00000000e-01\n",
215
+ " -1.00000000e-01 -5.00000000e-01 -5.00000000e-01 -1.00000000e+00\n",
216
+ " -6.00000000e-01 -1.40000000e+00 -1.40000000e+00 -7.00000000e-01\n",
217
+ " -1.00000000e+00 -6.00000000e-01 4.00000000e-01 7.00000000e-01\n",
218
+ " 1.30000000e+00 5.00000000e-01 2.00000000e-01 -1.40000000e+00\n",
219
+ " -5.00000000e-01 1.00000000e-01 5.00000000e-01 3.00000000e-01\n",
220
+ " -9.00000000e-01 -3.00000000e-01 2.00000000e-01 -3.00000000e-01\n",
221
+ " 2.00000000e-01 2.77555756e-17 2.00000000e-01 6.00000000e-01\n",
222
+ " 6.00000000e-01 6.00000000e-01 3.00000000e-01 -1.00000000e-01\n",
223
+ " -4.00000000e-01 -3.00000000e-01 -1.30000000e+00 -2.30000000e+00\n",
224
+ " -1.60000000e+00 -8.00000000e-01 3.00000000e-01 7.00000000e-01\n",
225
+ " 9.00000000e-01 1.00000000e-01 -3.00000000e-01 1.00000000e-01\n",
226
+ " 3.00000000e-01 -4.00000000e-01 -3.00000000e-01 3.00000000e-01\n",
227
+ " -9.00000000e-01 2.77555756e-17 -1.30000000e+00 -1.00000000e+00\n",
228
+ " 2.77555756e-17 4.00000000e-01 -1.00000000e-01 -1.00000000e-01\n",
229
+ " -1.20000000e+00 -1.20000000e+00 -1.30000000e+00 -1.50000000e+00\n",
230
+ " -3.00000000e-01 2.00000000e-01 -3.00000000e-01 -2.00000000e-01\n",
231
+ " -5.00000000e-01 -3.00000000e-01 -3.00000000e-01 -1.10000000e+00\n",
232
+ " -9.00000000e-01 -2.00000000e-01 -8.00000000e-01 -7.00000000e-01\n",
233
+ " -1.00000000e-01 -6.00000000e-01 -4.00000000e-01 -4.00000000e-01\n",
234
+ " -1.90000000e+00 -9.00000000e-01 2.77555756e-17 6.00000000e-01\n",
235
+ " 1.00000000e+00 1.30000000e+00 3.00000000e-01 2.00000000e-01\n",
236
+ " -1.00000000e+00 -1.00000000e+00 -9.00000000e-01 -2.00000000e-01\n",
237
+ " -1.40000000e+00 -1.00000000e-01 7.00000000e-01 4.00000000e-01\n",
238
+ " 9.00000000e-01 1.00000000e-01 -3.00000000e-01 -7.00000000e-01\n",
239
+ " -1.30000000e+00 -4.00000000e-01 -1.00000000e+00 -4.00000000e-01\n",
240
+ " 1.30000000e+00 9.00000000e-01 1.20000000e+00 3.00000000e-01\n",
241
+ " -8.00000000e-01 -2.00000000e-01 -1.00000000e-01 -4.00000000e-01\n",
242
+ " -2.00000000e-01 4.00000000e-01 -4.00000000e-01 -7.00000000e-01\n",
243
+ " 1.00000000e-01 1.00000000e+00 1.10000000e+00 1.00000000e+00\n",
244
+ " 6.00000000e-01 2.00000000e-01 -3.00000000e-01 -2.77555756e-17\n",
245
+ " 1.10000000e+00 5.00000000e-01 4.00000000e-01 1.30000000e+00\n",
246
+ " -2.00000000e-01 -1.00000000e+00 -1.00000000e+00 -3.00000000e-01\n",
247
+ " -5.00000000e-01 -5.00000000e-01 -6.00000000e-01 -6.00000000e-01\n",
248
+ " 2.00000000e-01 3.00000000e+00 2.80000000e+00 1.70000000e+00\n",
249
+ " -9.00000000e-01 -4.00000000e-01 6.00000000e-01 -3.00000000e-01\n",
250
+ " -5.00000000e-01 -9.00000000e-01 -6.00000000e-01 -3.00000000e-01\n",
251
+ " -1.00000000e-01 3.00000000e-01 -3.00000000e-01 -8.00000000e-01\n",
252
+ " 4.00000000e-01 3.00000000e-01 4.00000000e-01 1.60000000e+00\n",
253
+ " 1.30000000e+00 -6.00000000e-01 -1.00000000e-01 6.00000000e-01\n",
254
+ " -8.00000000e-01 2.00000000e-01 -6.00000000e-01 1.80000000e+00\n",
255
+ " 3.00000000e-01 9.00000000e-01 1.70000000e+00 3.00000000e-01\n",
256
+ " 5.00000000e-01 -3.00000000e-01 -6.00000000e-01 9.00000000e-01\n",
257
+ " -1.00000000e-01 -3.00000000e-01 6.00000000e-01 2.00000000e-01\n",
258
+ " -1.00000000e+00 -1.50000000e+00 -9.00000000e-01 -5.00000000e-01\n",
259
+ " -9.00000000e-01 -1.10000000e+00 -4.00000000e-01 1.00000000e-01\n",
260
+ " 9.00000000e-01 -4.00000000e-01 -9.00000000e-01 5.00000000e-01\n",
261
+ " -9.00000000e-01 -1.20000000e+00 -1.20000000e+00 4.00000000e-01\n",
262
+ " 1.40000000e+00 3.00000000e-01 -1.10000000e+00 -3.00000000e-01\n",
263
+ " -6.00000000e-01 -4.00000000e-01 1.00000000e-01 -1.00000000e-01\n",
264
+ " -8.00000000e-01 -3.00000000e-01 -6.00000000e-01 -1.00000000e-01\n",
265
+ " 4.00000000e-01 3.00000000e-01 1.80000000e+00 -8.00000000e-01\n",
266
+ " 4.00000000e-01 -4.00000000e-01 -3.00000000e-01 2.10000000e+00\n",
267
+ " 5.00000000e-01 9.00000000e-01 -7.00000000e-01 8.00000000e-01\n",
268
+ " -3.00000000e-01 8.00000000e-01 7.00000000e-01 -3.00000000e-01\n",
269
+ " -6.00000000e-01 1.40000000e+00 -5.00000000e-01 -2.00000000e-01\n",
270
+ " -3.00000000e-01 2.00000000e-01 3.00000000e-01 2.00000000e-01\n",
271
+ " 1.20000000e+00 9.00000000e-01 -6.00000000e-01 -1.00000000e+00\n",
272
+ " -1.30000000e+00 -1.00000000e-01 -9.00000000e-01 -3.00000000e-01\n",
273
+ " -1.70000000e+00 -1.10000000e+00 2.00000000e+00 -3.00000000e-01\n",
274
+ " -4.00000000e-01 2.00000000e-01 -6.00000000e-01 -1.30000000e+00\n",
275
+ " 8.00000000e-01 1.00000000e-01 -1.00000000e-01 -1.40000000e+00\n",
276
+ " 6.00000000e-01 8.00000000e-01 -1.30000000e+00 -1.40000000e+00\n",
277
+ " -2.77555756e-17 1.40000000e+00 -1.00000000e-01 -5.00000000e-01\n",
278
+ " -3.00000000e-01 1.00000000e+00 3.00000000e-01 1.30000000e+00\n",
279
+ " 1.20000000e+00 -5.00000000e-01 2.77555756e-17 -6.00000000e-01\n",
280
+ " 2.77555756e-17 -4.00000000e-01 -1.00000000e+00 -7.00000000e-01\n",
281
+ " -3.00000000e-01 5.00000000e-01 -6.00000000e-01 -1.60000000e+00\n",
282
+ " -2.00000000e-01 -1.00000000e-01 -9.00000000e-01 -5.00000000e-01\n",
283
+ " 1.00000000e-01 -6.00000000e-01 -3.00000000e-01 9.00000000e-01\n",
284
+ " 4.00000000e-01 4.00000000e-01 7.00000000e-01 -1.00000000e-01\n",
285
+ " -1.00000000e-01 -3.00000000e-01 -8.00000000e-01 1.00000000e-01\n",
286
+ " 2.00000000e-01 -2.00000000e-01 -9.00000000e-01 -9.00000000e-01\n",
287
+ " -7.00000000e-01 -1.30000000e+00 -5.00000000e-01 7.00000000e-01\n",
288
+ " 1.00000000e-01 -5.00000000e-01 -6.00000000e-01 4.00000000e-01\n",
289
+ " -1.00000000e-01 -3.00000000e-01 -4.00000000e-01 2.77555756e-17\n",
290
+ " -2.00000000e-01 1.00000000e+00 1.10000000e+00 -7.00000000e-01\n",
291
+ " -1.40000000e+00 -1.40000000e+00 4.00000000e-01 1.20000000e+00\n",
292
+ " 1.10000000e+00 2.00000000e-01 -1.00000000e-01 -1.10000000e+00\n",
293
+ " 1.00000000e-01 -5.00000000e-01 -1.00000000e-01 -1.00000000e-01\n",
294
+ " 7.00000000e-01 6.00000000e-01 -4.00000000e-01 1.00000000e-01\n",
295
+ " -5.00000000e-01 2.00000000e-01 1.00000000e-01 1.00000000e-01\n",
296
+ " -1.00000000e-01 1.00000000e-01 1.00000000e-01 3.00000000e-01\n",
297
+ " 1.00000000e-01 2.77555756e-17 1.00000000e-01 2.00000000e-01\n",
298
+ " 3.00000000e-01 2.00000000e-01 2.00000000e-01 2.00000000e-01\n",
299
+ " -2.77555756e-17 -2.77555756e-17 2.00000000e-01 2.00000000e-01\n",
300
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 2.00000000e-01\n",
301
+ " -2.77555756e-17 -2.77555756e-17 -2.77555756e-17 -2.77555756e-17\n",
302
+ " -2.77555756e-17 -2.77555756e-17 -2.77555756e-17 -2.77555756e-17\n",
303
+ " -2.77555756e-17 -2.77555756e-17 -2.77555756e-17 -2.77555756e-17]\n"
304
+ ]
305
+ },
306
+ {
307
+ "name": "stderr",
308
+ "output_type": "stream",
309
+ "text": [
310
+ " 60%|██████ | 3/5 [00:00<00:00, 4.37it/s]"
311
+ ]
312
+ },
313
+ {
314
+ "name": "stdout",
315
+ "output_type": "stream",
316
+ "text": [
317
+ "Updated Weights after epoch 2 with [ 5.00000000e-01 8.00000000e-01 1.00000000e+00 1.20000000e+00\n",
318
+ " 1.00000000e-01 -4.00000000e-01 -9.00000000e-01 -5.00000000e-01\n",
319
+ " 3.00000000e-01 3.00000000e-01 1.00000000e+00 9.00000000e-01\n",
320
+ " 7.00000000e-01 8.00000000e-01 5.00000000e-01 2.00000000e-01\n",
321
+ " -5.00000000e-01 1.00000000e-01 -3.00000000e-01 -1.00000000e-01\n",
322
+ " -5.00000000e-01 -1.00000000e-01 -7.00000000e-01 -4.00000000e-01\n",
323
+ " -4.00000000e-01 8.00000000e-01 6.00000000e-01 1.70000000e+00\n",
324
+ " 1.00000000e+00 1.10000000e+00 3.00000000e-01 7.00000000e-01\n",
325
+ " -2.77555756e-17 5.00000000e-01 1.50000000e+00 1.60000000e+00\n",
326
+ " 1.00000000e+00 8.00000000e-01 3.00000000e-01 2.00000000e-01\n",
327
+ " 3.00000000e-01 1.00000000e-01 6.00000000e-01 1.10000000e+00\n",
328
+ " 8.00000000e-01 5.00000000e-01 1.00000000e-01 -2.00000000e-01\n",
329
+ " -1.00000000e+00 -1.60000000e+00 -1.00000000e-01 -3.00000000e-01\n",
330
+ " 1.00000000e-01 2.00000000e-01 6.00000000e-01 2.77555756e-17\n",
331
+ " -3.00000000e-01 -8.00000000e-01 -1.30000000e+00 -4.00000000e-01\n",
332
+ " -6.00000000e-01 -9.00000000e-01 -1.00000000e+00 -1.80000000e+00\n",
333
+ " -9.00000000e-01 -8.00000000e-01 -4.00000000e-01 -2.00000000e-01\n",
334
+ " 4.00000000e-01 1.10000000e+00 7.00000000e-01 5.00000000e-01\n",
335
+ " 6.00000000e-01 4.00000000e-01 1.50000000e+00 7.00000000e-01\n",
336
+ " -3.00000000e-01 1.30000000e+00 1.10000000e+00 1.30000000e+00\n",
337
+ " 1.30000000e+00 3.00000000e-01 7.00000000e-01 1.20000000e+00\n",
338
+ " -2.00000000e-01 -1.00000000e+00 -3.00000000e-01 -3.00000000e-01\n",
339
+ " -9.00000000e-01 -6.00000000e-01 9.00000000e-01 -2.00000000e-01\n",
340
+ " -9.00000000e-01 -8.00000000e-01 -2.10000000e+00 -2.00000000e+00\n",
341
+ " -1.30000000e+00 -1.10000000e+00 -3.00000000e-01 -3.00000000e-01\n",
342
+ " -4.00000000e-01 9.00000000e-01 1.20000000e+00 1.50000000e+00\n",
343
+ " 1.30000000e+00 6.00000000e-01 -4.00000000e-01 2.00000000e-01\n",
344
+ " 1.00000000e-01 -4.00000000e-01 -4.00000000e-01 -4.00000000e-01\n",
345
+ " 1.00000000e-01 4.00000000e-01 1.00000000e-01 -3.00000000e-01\n",
346
+ " 1.00000000e-01 2.00000000e-01 7.00000000e-01 2.77555756e-17\n",
347
+ " -1.50000000e+00 -1.40000000e+00 -1.90000000e+00 -1.10000000e+00\n",
348
+ " -1.20000000e+00 -6.00000000e-01 -6.00000000e-01 1.00000000e-01\n",
349
+ " -1.00000000e-01 -4.00000000e-01 3.00000000e-01 -1.00000000e-01\n",
350
+ " 1.00000000e-01 3.00000000e-01 2.00000000e-01 4.00000000e-01\n",
351
+ " -1.00000000e-01 9.00000000e-01 1.50000000e+00 7.00000000e-01\n",
352
+ " 1.40000000e+00 2.00000000e-01 1.00000000e-01 -2.00000000e-01\n",
353
+ " -2.00000000e-01 -6.00000000e-01 -6.00000000e-01 -1.30000000e+00\n",
354
+ " -5.00000000e-01 -1.70000000e+00 -1.90000000e+00 -1.00000000e+00\n",
355
+ " -1.40000000e+00 -8.00000000e-01 6.00000000e-01 1.00000000e+00\n",
356
+ " 2.00000000e+00 9.00000000e-01 7.00000000e-01 -1.60000000e+00\n",
357
+ " -5.00000000e-01 2.00000000e-01 8.00000000e-01 7.00000000e-01\n",
358
+ " -1.10000000e+00 -1.00000000e-01 7.00000000e-01 -2.00000000e-01\n",
359
+ " 4.00000000e-01 -2.00000000e-01 -1.00000000e-01 5.00000000e-01\n",
360
+ " 9.00000000e-01 8.00000000e-01 5.00000000e-01 2.00000000e-01\n",
361
+ " -2.00000000e-01 2.77555756e-17 -1.60000000e+00 -2.60000000e+00\n",
362
+ " -1.60000000e+00 -8.00000000e-01 6.00000000e-01 1.10000000e+00\n",
363
+ " 1.50000000e+00 1.00000000e-01 -3.00000000e-01 2.77555756e-17\n",
364
+ " 4.00000000e-01 -8.00000000e-01 -3.00000000e-01 3.00000000e-01\n",
365
+ " -1.80000000e+00 2.77555756e-17 -1.80000000e+00 -1.60000000e+00\n",
366
+ " -2.00000000e-01 5.00000000e-01 -2.00000000e-01 -1.00000000e-01\n",
367
+ " -1.50000000e+00 -1.70000000e+00 -1.80000000e+00 -1.70000000e+00\n",
368
+ " 4.00000000e-01 1.20000000e+00 2.77555756e-17 2.77555756e-17\n",
369
+ " -9.00000000e-01 -5.00000000e-01 -5.00000000e-01 -1.80000000e+00\n",
370
+ " -1.50000000e+00 -5.00000000e-01 -1.10000000e+00 -6.00000000e-01\n",
371
+ " 1.00000000e-01 -5.00000000e-01 -3.00000000e-01 -4.00000000e-01\n",
372
+ " -2.20000000e+00 -1.00000000e+00 2.00000000e-01 7.00000000e-01\n",
373
+ " 1.40000000e+00 2.00000000e+00 6.00000000e-01 4.00000000e-01\n",
374
+ " -1.00000000e+00 -1.00000000e+00 -1.10000000e+00 -3.00000000e-01\n",
375
+ " -2.10000000e+00 -5.00000000e-01 6.00000000e-01 2.00000000e-01\n",
376
+ " 1.20000000e+00 4.00000000e-01 -6.00000000e-01 -1.10000000e+00\n",
377
+ " -1.70000000e+00 -1.00000000e-01 -1.20000000e+00 -3.00000000e-01\n",
378
+ " 1.80000000e+00 9.00000000e-01 1.90000000e+00 5.00000000e-01\n",
379
+ " -1.10000000e+00 1.00000000e-01 3.00000000e-01 -2.00000000e-01\n",
380
+ " 2.00000000e-01 1.10000000e+00 -2.77555756e-17 -6.00000000e-01\n",
381
+ " -2.00000000e-01 1.00000000e+00 1.10000000e+00 8.00000000e-01\n",
382
+ " -1.00000000e-01 -3.00000000e-01 -1.00000000e+00 -2.00000000e-01\n",
383
+ " 1.50000000e+00 5.00000000e-01 6.00000000e-01 2.00000000e+00\n",
384
+ " -5.00000000e-01 -1.80000000e+00 -1.40000000e+00 -5.00000000e-01\n",
385
+ " -7.00000000e-01 -9.00000000e-01 -1.40000000e+00 -1.70000000e+00\n",
386
+ " -7.00000000e-01 3.10000000e+00 3.10000000e+00 1.70000000e+00\n",
387
+ " -1.70000000e+00 -7.00000000e-01 9.00000000e-01 1.00000000e-01\n",
388
+ " -4.00000000e-01 -1.50000000e+00 -7.00000000e-01 -4.00000000e-01\n",
389
+ " -1.00000000e-01 8.00000000e-01 -1.00000000e-01 -4.00000000e-01\n",
390
+ " 1.10000000e+00 3.00000000e-01 3.00000000e-01 1.50000000e+00\n",
391
+ " 1.50000000e+00 -1.00000000e+00 -7.00000000e-01 4.00000000e-01\n",
392
+ " -1.70000000e+00 -2.00000000e-01 -1.40000000e+00 2.00000000e+00\n",
393
+ " -3.00000000e-01 6.00000000e-01 1.80000000e+00 1.00000000e-01\n",
394
+ " 3.00000000e-01 -7.00000000e-01 -1.00000000e+00 1.50000000e+00\n",
395
+ " -1.00000000e-01 -5.00000000e-01 6.00000000e-01 2.00000000e-01\n",
396
+ " -1.20000000e+00 -2.20000000e+00 -1.20000000e+00 -4.00000000e-01\n",
397
+ " -7.00000000e-01 -9.00000000e-01 -4.00000000e-01 2.77555756e-17\n",
398
+ " 9.00000000e-01 -6.00000000e-01 -1.40000000e+00 1.00000000e+00\n",
399
+ " -9.00000000e-01 -1.30000000e+00 -1.20000000e+00 2.00000000e-01\n",
400
+ " 1.10000000e+00 1.00000000e-01 -1.30000000e+00 -1.00000000e-01\n",
401
+ " -6.00000000e-01 2.77555756e-17 8.00000000e-01 6.00000000e-01\n",
402
+ " -6.00000000e-01 -5.00000000e-01 -1.10000000e+00 -3.00000000e-01\n",
403
+ " 4.00000000e-01 1.00000000e-01 2.00000000e+00 -1.00000000e+00\n",
404
+ " 7.00000000e-01 -5.00000000e-01 -8.00000000e-01 2.70000000e+00\n",
405
+ " 2.00000000e-01 1.00000000e+00 -1.00000000e+00 1.00000000e+00\n",
406
+ " -9.00000000e-01 4.00000000e-01 4.00000000e-01 -1.10000000e+00\n",
407
+ " -1.20000000e+00 1.40000000e+00 -1.10000000e+00 -5.00000000e-01\n",
408
+ " -4.00000000e-01 -1.00000000e-01 2.00000000e-01 -4.00000000e-01\n",
409
+ " 1.60000000e+00 1.60000000e+00 -4.00000000e-01 -5.00000000e-01\n",
410
+ " -2.00000000e+00 1.00000000e-01 -1.40000000e+00 -4.00000000e-01\n",
411
+ " -1.90000000e+00 -1.10000000e+00 2.90000000e+00 -2.00000000e-01\n",
412
+ " 2.77555756e-17 3.00000000e-01 -7.00000000e-01 -1.50000000e+00\n",
413
+ " 1.50000000e+00 6.00000000e-01 3.00000000e-01 -1.50000000e+00\n",
414
+ " 1.40000000e+00 1.70000000e+00 -1.20000000e+00 -1.60000000e+00\n",
415
+ " 1.00000000e-01 2.10000000e+00 -2.00000000e-01 -9.00000000e-01\n",
416
+ " -3.00000000e-01 1.30000000e+00 2.00000000e-01 1.30000000e+00\n",
417
+ " 1.40000000e+00 -5.00000000e-01 -1.00000000e-01 -7.00000000e-01\n",
418
+ " 2.00000000e-01 -3.00000000e-01 -1.00000000e+00 -5.00000000e-01\n",
419
+ " -5.00000000e-01 9.00000000e-01 -7.00000000e-01 -1.90000000e+00\n",
420
+ " -1.00000000e-01 1.00000000e-01 -1.20000000e+00 -5.00000000e-01\n",
421
+ " 2.77555756e-17 -6.00000000e-01 -3.00000000e-01 1.00000000e+00\n",
422
+ " 3.00000000e-01 3.00000000e-01 1.20000000e+00 -3.00000000e-01\n",
423
+ " 2.00000000e-01 -2.77555756e-17 -1.00000000e+00 -1.00000000e-01\n",
424
+ " 3.00000000e-01 1.00000000e-01 -6.00000000e-01 -8.00000000e-01\n",
425
+ " -6.00000000e-01 -1.50000000e+00 -4.00000000e-01 1.10000000e+00\n",
426
+ " 3.00000000e-01 -6.00000000e-01 -1.20000000e+00 2.00000000e-01\n",
427
+ " -1.00000000e-01 -2.00000000e-01 -3.00000000e-01 4.00000000e-01\n",
428
+ " -3.00000000e-01 1.40000000e+00 1.50000000e+00 -7.00000000e-01\n",
429
+ " -1.80000000e+00 -2.00000000e+00 5.00000000e-01 1.10000000e+00\n",
430
+ " 1.10000000e+00 1.00000000e-01 1.00000000e-01 -9.00000000e-01\n",
431
+ " 4.00000000e-01 -6.00000000e-01 -2.00000000e-01 -3.00000000e-01\n",
432
+ " 8.00000000e-01 6.00000000e-01 -8.00000000e-01 2.77555756e-17\n",
433
+ " -7.00000000e-01 4.00000000e-01 3.00000000e-01 2.00000000e-01\n",
434
+ " -1.00000000e-01 1.00000000e-01 2.00000000e-01 5.00000000e-01\n",
435
+ " 3.00000000e-01 1.00000000e-01 1.00000000e-01 3.00000000e-01\n",
436
+ " 4.00000000e-01 3.00000000e-01 3.00000000e-01 2.00000000e-01\n",
437
+ " -1.00000000e-01 -1.00000000e-01 2.00000000e-01 2.00000000e-01\n",
438
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 3.00000000e-01\n",
439
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 1.00000000e-01\n",
440
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 1.00000000e-01\n",
441
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 1.00000000e-01]\n"
442
+ ]
443
+ },
444
+ {
445
+ "name": "stderr",
446
+ "output_type": "stream",
447
+ "text": [
448
+ " 80%|████████ | 4/5 [00:00<00:00, 4.36it/s]"
449
+ ]
450
+ },
451
+ {
452
+ "name": "stdout",
453
+ "output_type": "stream",
454
+ "text": [
455
+ "Updated Weights after epoch 3 with [-2.77555756e-17 4.00000000e-01 7.00000000e-01 1.00000000e+00\n",
456
+ " -4.00000000e-01 -1.00000000e+00 -1.70000000e+00 -1.20000000e+00\n",
457
+ " -1.00000000e-01 -1.00000000e-01 9.00000000e-01 9.00000000e-01\n",
458
+ " 6.00000000e-01 7.00000000e-01 1.00000000e-01 -3.00000000e-01\n",
459
+ " -1.00000000e+00 -1.00000000e-01 -6.00000000e-01 -2.00000000e-01\n",
460
+ " -6.00000000e-01 -2.00000000e-01 -1.10000000e+00 -7.00000000e-01\n",
461
+ " -7.00000000e-01 1.00000000e+00 6.00000000e-01 2.00000000e+00\n",
462
+ " 1.20000000e+00 1.20000000e+00 2.00000000e-01 7.00000000e-01\n",
463
+ " -3.00000000e-01 3.00000000e-01 1.70000000e+00 1.80000000e+00\n",
464
+ " 1.10000000e+00 9.00000000e-01 2.00000000e-01 1.00000000e-01\n",
465
+ " 3.00000000e-01 2.00000000e-01 8.00000000e-01 1.50000000e+00\n",
466
+ " 1.20000000e+00 7.00000000e-01 1.00000000e-01 -2.00000000e-01\n",
467
+ " -1.40000000e+00 -2.10000000e+00 -1.00000000e-01 -4.00000000e-01\n",
468
+ " 2.00000000e-01 3.00000000e-01 8.00000000e-01 2.77555756e-17\n",
469
+ " -3.00000000e-01 -9.00000000e-01 -1.60000000e+00 -5.00000000e-01\n",
470
+ " -7.00000000e-01 -1.10000000e+00 -1.20000000e+00 -2.30000000e+00\n",
471
+ " -1.20000000e+00 -1.10000000e+00 -5.00000000e-01 -3.00000000e-01\n",
472
+ " 6.00000000e-01 1.50000000e+00 9.00000000e-01 4.00000000e-01\n",
473
+ " 5.00000000e-01 2.00000000e-01 1.70000000e+00 5.00000000e-01\n",
474
+ " -9.00000000e-01 1.30000000e+00 9.00000000e-01 1.40000000e+00\n",
475
+ " 1.40000000e+00 2.00000000e-01 7.00000000e-01 1.50000000e+00\n",
476
+ " -4.00000000e-01 -1.20000000e+00 -2.00000000e-01 -1.00000000e-01\n",
477
+ " -9.00000000e-01 -4.00000000e-01 1.60000000e+00 3.00000000e-01\n",
478
+ " -7.00000000e-01 -5.00000000e-01 -2.20000000e+00 -2.00000000e+00\n",
479
+ " -9.00000000e-01 -7.00000000e-01 3.00000000e-01 2.00000000e-01\n",
480
+ " -2.00000000e-01 1.30000000e+00 1.60000000e+00 1.80000000e+00\n",
481
+ " 1.70000000e+00 8.00000000e-01 -5.00000000e-01 2.00000000e-01\n",
482
+ " 1.00000000e-01 -4.00000000e-01 -3.00000000e-01 -5.00000000e-01\n",
483
+ " 1.00000000e-01 6.00000000e-01 1.00000000e-01 -4.00000000e-01\n",
484
+ " 2.00000000e-01 4.00000000e-01 1.10000000e+00 4.00000000e-01\n",
485
+ " -1.40000000e+00 -1.30000000e+00 -1.80000000e+00 -5.00000000e-01\n",
486
+ " -8.00000000e-01 1.00000000e-01 -2.00000000e-01 8.00000000e-01\n",
487
+ " 6.00000000e-01 -1.00000000e-01 7.00000000e-01 1.00000000e-01\n",
488
+ " 3.00000000e-01 6.00000000e-01 5.00000000e-01 7.00000000e-01\n",
489
+ " -2.77555756e-17 1.60000000e+00 2.30000000e+00 1.50000000e+00\n",
490
+ " 2.20000000e+00 7.00000000e-01 6.00000000e-01 4.00000000e-01\n",
491
+ " 6.00000000e-01 2.00000000e-01 1.00000000e-01 -7.00000000e-01\n",
492
+ " 4.00000000e-01 -1.50000000e+00 -1.90000000e+00 -9.00000000e-01\n",
493
+ " -1.50000000e+00 -7.00000000e-01 1.00000000e+00 1.80000000e+00\n",
494
+ " 2.70000000e+00 1.10000000e+00 6.00000000e-01 -2.20000000e+00\n",
495
+ " -8.00000000e-01 1.00000000e-01 8.00000000e-01 8.00000000e-01\n",
496
+ " -1.90000000e+00 -4.00000000e-01 6.00000000e-01 -5.00000000e-01\n",
497
+ " 3.00000000e-01 -4.00000000e-01 -3.00000000e-01 5.00000000e-01\n",
498
+ " 1.10000000e+00 8.00000000e-01 4.00000000e-01 -3.00000000e-01\n",
499
+ " -7.00000000e-01 -2.00000000e-01 -2.00000000e+00 -3.20000000e+00\n",
500
+ " -2.10000000e+00 -1.00000000e+00 7.00000000e-01 1.20000000e+00\n",
501
+ " 1.60000000e+00 -3.00000000e-01 -9.00000000e-01 -2.00000000e-01\n",
502
+ " 5.00000000e-01 -9.00000000e-01 -1.00000000e-01 1.00000000e+00\n",
503
+ " -1.60000000e+00 1.00000000e+00 -1.60000000e+00 -1.50000000e+00\n",
504
+ " 2.00000000e-01 9.00000000e-01 -1.00000000e-01 1.00000000e-01\n",
505
+ " -2.00000000e+00 -2.30000000e+00 -2.30000000e+00 -2.00000000e+00\n",
506
+ " 5.00000000e-01 1.60000000e+00 1.00000000e-01 2.77555756e-17\n",
507
+ " -1.10000000e+00 -4.00000000e-01 -6.00000000e-01 -2.30000000e+00\n",
508
+ " -2.00000000e+00 -7.00000000e-01 -1.50000000e+00 -9.00000000e-01\n",
509
+ " -2.00000000e-01 -8.00000000e-01 -4.00000000e-01 -4.00000000e-01\n",
510
+ " -2.50000000e+00 -1.00000000e+00 1.00000000e-01 8.00000000e-01\n",
511
+ " 1.40000000e+00 2.20000000e+00 5.00000000e-01 3.00000000e-01\n",
512
+ " -1.40000000e+00 -1.20000000e+00 -1.20000000e+00 -1.00000000e-01\n",
513
+ " -2.70000000e+00 -1.00000000e+00 3.00000000e-01 -2.00000000e-01\n",
514
+ " 1.70000000e+00 8.00000000e-01 -6.00000000e-01 -1.10000000e+00\n",
515
+ " -1.70000000e+00 7.00000000e-01 -7.00000000e-01 2.00000000e-01\n",
516
+ " 2.40000000e+00 1.10000000e+00 1.80000000e+00 4.00000000e-01\n",
517
+ " -1.70000000e+00 -2.00000000e-01 5.00000000e-01 -3.00000000e-01\n",
518
+ " 1.00000000e-01 1.30000000e+00 -3.00000000e-01 -9.00000000e-01\n",
519
+ " -3.00000000e-01 1.30000000e+00 1.40000000e+00 1.30000000e+00\n",
520
+ " 3.00000000e-01 2.00000000e-01 -8.00000000e-01 -2.00000000e-01\n",
521
+ " 1.70000000e+00 5.00000000e-01 6.00000000e-01 2.70000000e+00\n",
522
+ " -3.00000000e-01 -1.70000000e+00 -1.40000000e+00 -3.00000000e-01\n",
523
+ " -4.00000000e-01 -7.00000000e-01 -1.50000000e+00 -2.10000000e+00\n",
524
+ " -1.00000000e+00 3.80000000e+00 3.60000000e+00 1.80000000e+00\n",
525
+ " -2.20000000e+00 -9.00000000e-01 1.30000000e+00 3.00000000e-01\n",
526
+ " -2.77555756e-17 -1.40000000e+00 -7.00000000e-01 -6.00000000e-01\n",
527
+ " 2.77555756e-17 1.10000000e+00 -3.00000000e-01 -9.00000000e-01\n",
528
+ " 1.20000000e+00 2.00000000e-01 1.00000000e-01 2.30000000e+00\n",
529
+ " 2.40000000e+00 -1.30000000e+00 -1.20000000e+00 1.00000000e+00\n",
530
+ " -1.80000000e+00 3.00000000e-01 -1.60000000e+00 2.40000000e+00\n",
531
+ " -8.00000000e-01 2.00000000e-01 1.90000000e+00 -1.00000000e-01\n",
532
+ " 7.00000000e-01 -8.00000000e-01 -1.10000000e+00 1.90000000e+00\n",
533
+ " -2.00000000e-01 -7.00000000e-01 1.20000000e+00 6.00000000e-01\n",
534
+ " -1.10000000e+00 -2.30000000e+00 -8.00000000e-01 -2.77555756e-17\n",
535
+ " -5.00000000e-01 -6.00000000e-01 -2.00000000e-01 -2.00000000e-01\n",
536
+ " 7.00000000e-01 -5.00000000e-01 -1.30000000e+00 1.50000000e+00\n",
537
+ " -8.00000000e-01 -1.20000000e+00 -1.00000000e+00 5.00000000e-01\n",
538
+ " 1.70000000e+00 6.00000000e-01 -1.00000000e+00 -2.00000000e-01\n",
539
+ " -7.00000000e-01 -2.00000000e-01 1.00000000e+00 8.00000000e-01\n",
540
+ " -7.00000000e-01 -3.00000000e-01 -1.30000000e+00 -5.00000000e-01\n",
541
+ " 3.00000000e-01 4.00000000e-01 2.70000000e+00 -1.10000000e+00\n",
542
+ " 1.00000000e+00 -7.00000000e-01 -1.00000000e+00 2.70000000e+00\n",
543
+ " -1.00000000e-01 1.70000000e+00 -1.20000000e+00 1.40000000e+00\n",
544
+ " -8.00000000e-01 1.20000000e+00 1.10000000e+00 -9.00000000e-01\n",
545
+ " -1.20000000e+00 1.60000000e+00 -1.30000000e+00 -5.00000000e-01\n",
546
+ " -5.00000000e-01 3.00000000e-01 1.00000000e-01 -9.00000000e-01\n",
547
+ " 1.50000000e+00 1.20000000e+00 -8.00000000e-01 -4.00000000e-01\n",
548
+ " -2.10000000e+00 6.00000000e-01 -1.00000000e+00 -1.00000000e-01\n",
549
+ " -2.10000000e+00 -1.50000000e+00 3.30000000e+00 -3.00000000e-01\n",
550
+ " -2.00000000e-01 6.00000000e-01 -7.00000000e-01 -1.60000000e+00\n",
551
+ " 1.60000000e+00 2.77555756e-17 -2.77555756e-17 -1.90000000e+00\n",
552
+ " 1.50000000e+00 2.10000000e+00 -1.30000000e+00 -1.60000000e+00\n",
553
+ " 1.00000000e-01 2.40000000e+00 -3.00000000e-01 -9.00000000e-01\n",
554
+ " -4.00000000e-01 1.70000000e+00 2.00000000e-01 1.60000000e+00\n",
555
+ " 1.60000000e+00 -4.00000000e-01 2.77555756e-17 -9.00000000e-01\n",
556
+ " 3.00000000e-01 -3.00000000e-01 -1.30000000e+00 -5.00000000e-01\n",
557
+ " -2.00000000e-01 1.50000000e+00 -8.00000000e-01 -2.60000000e+00\n",
558
+ " -4.00000000e-01 -2.00000000e-01 -1.60000000e+00 -5.00000000e-01\n",
559
+ " 2.77555756e-17 -1.20000000e+00 -5.00000000e-01 1.10000000e+00\n",
560
+ " 2.77555756e-17 1.00000000e-01 1.40000000e+00 -3.00000000e-01\n",
561
+ " -2.77555756e-17 -1.00000000e-01 -1.20000000e+00 3.00000000e-01\n",
562
+ " 8.00000000e-01 4.00000000e-01 -5.00000000e-01 -9.00000000e-01\n",
563
+ " -7.00000000e-01 -1.80000000e+00 -6.00000000e-01 1.30000000e+00\n",
564
+ " 6.00000000e-01 -4.00000000e-01 -1.10000000e+00 6.00000000e-01\n",
565
+ " 1.00000000e-01 -1.00000000e-01 -4.00000000e-01 4.00000000e-01\n",
566
+ " -7.00000000e-01 1.40000000e+00 1.70000000e+00 -1.20000000e+00\n",
567
+ " -1.90000000e+00 -2.30000000e+00 2.00000000e-01 1.40000000e+00\n",
568
+ " 1.50000000e+00 2.00000000e-01 2.77555756e-17 -1.00000000e+00\n",
569
+ " 1.00000000e+00 -5.00000000e-01 -2.00000000e-01 -3.00000000e-01\n",
570
+ " 1.10000000e+00 8.00000000e-01 -1.10000000e+00 -2.00000000e-01\n",
571
+ " -1.10000000e+00 3.00000000e-01 2.00000000e-01 1.00000000e-01\n",
572
+ " -3.00000000e-01 -1.00000000e-01 1.00000000e-01 4.00000000e-01\n",
573
+ " 3.00000000e-01 1.00000000e-01 2.00000000e-01 5.00000000e-01\n",
574
+ " 6.00000000e-01 4.00000000e-01 4.00000000e-01 3.00000000e-01\n",
575
+ " -1.00000000e-01 -2.00000000e-01 2.00000000e-01 2.00000000e-01\n",
576
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 4.00000000e-01\n",
577
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 1.00000000e-01\n",
578
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 1.00000000e-01\n",
579
+ " 1.00000000e-01 1.00000000e-01 1.00000000e-01 1.00000000e-01]\n"
580
+ ]
581
+ },
582
+ {
583
+ "name": "stderr",
584
+ "output_type": "stream",
585
+ "text": [
586
+ "100%|██████████| 5/5 [00:01<00:00, 4.33it/s]"
587
+ ]
588
+ },
589
+ {
590
+ "name": "stdout",
591
+ "output_type": "stream",
592
+ "text": [
593
+ "Updated Weights after epoch 4 with [ 2.00000000e-01 6.00000000e-01 1.10000000e+00 1.40000000e+00\n",
594
+ " -2.00000000e-01 -9.00000000e-01 -1.80000000e+00 -1.10000000e+00\n",
595
+ " 1.00000000e-01 1.00000000e-01 1.20000000e+00 1.20000000e+00\n",
596
+ " 8.00000000e-01 1.00000000e+00 5.00000000e-01 -2.77555756e-17\n",
597
+ " -1.00000000e+00 2.00000000e-01 -4.00000000e-01 -2.00000000e-01\n",
598
+ " -8.00000000e-01 -3.00000000e-01 -1.50000000e+00 -1.10000000e+00\n",
599
+ " -1.00000000e+00 1.10000000e+00 5.00000000e-01 2.30000000e+00\n",
600
+ " 1.30000000e+00 1.30000000e+00 -2.77555756e-17 7.00000000e-01\n",
601
+ " -4.00000000e-01 1.00000000e-01 1.40000000e+00 1.70000000e+00\n",
602
+ " 9.00000000e-01 7.00000000e-01 -1.00000000e-01 -3.00000000e-01\n",
603
+ " -2.77555756e-17 -1.00000000e-01 6.00000000e-01 1.30000000e+00\n",
604
+ " 1.00000000e+00 5.00000000e-01 -3.00000000e-01 -5.00000000e-01\n",
605
+ " -2.10000000e+00 -3.00000000e+00 -2.00000000e-01 -6.00000000e-01\n",
606
+ " 1.00000000e-01 2.00000000e-01 9.00000000e-01 2.77555756e-17\n",
607
+ " -4.00000000e-01 -1.00000000e+00 -1.80000000e+00 -4.00000000e-01\n",
608
+ " -5.00000000e-01 -1.00000000e+00 -1.20000000e+00 -2.60000000e+00\n",
609
+ " -1.10000000e+00 -9.00000000e-01 -1.00000000e-01 2.77555756e-17\n",
610
+ " 1.10000000e+00 2.20000000e+00 1.20000000e+00 5.00000000e-01\n",
611
+ " 5.00000000e-01 1.00000000e-01 1.60000000e+00 1.00000000e-01\n",
612
+ " -1.80000000e+00 1.10000000e+00 9.00000000e-01 1.30000000e+00\n",
613
+ " 1.30000000e+00 -1.00000000e-01 7.00000000e-01 1.80000000e+00\n",
614
+ " -4.00000000e-01 -1.50000000e+00 -2.00000000e-01 2.77555756e-17\n",
615
+ " -1.00000000e+00 -4.00000000e-01 2.10000000e+00 4.00000000e-01\n",
616
+ " -8.00000000e-01 -6.00000000e-01 -2.80000000e+00 -2.50000000e+00\n",
617
+ " -1.30000000e+00 -1.00000000e+00 3.00000000e-01 2.77555756e-17\n",
618
+ " -8.00000000e-01 9.00000000e-01 1.20000000e+00 1.30000000e+00\n",
619
+ " 1.40000000e+00 5.00000000e-01 -7.00000000e-01 1.00000000e-01\n",
620
+ " 2.77555756e-17 -7.00000000e-01 -4.00000000e-01 -5.00000000e-01\n",
621
+ " 4.00000000e-01 7.00000000e-01 2.00000000e-01 -4.00000000e-01\n",
622
+ " 3.00000000e-01 6.00000000e-01 1.40000000e+00 5.00000000e-01\n",
623
+ " -1.70000000e+00 -1.50000000e+00 -2.10000000e+00 -8.00000000e-01\n",
624
+ " -9.00000000e-01 1.00000000e-01 -6.00000000e-01 6.00000000e-01\n",
625
+ " 3.00000000e-01 -8.00000000e-01 5.00000000e-01 -3.00000000e-01\n",
626
+ " -2.00000000e-01 3.00000000e-01 -2.77555756e-17 2.00000000e-01\n",
627
+ " -7.00000000e-01 1.30000000e+00 2.20000000e+00 1.20000000e+00\n",
628
+ " 2.00000000e+00 1.00000000e-01 -1.00000000e-01 -4.00000000e-01\n",
629
+ " 1.00000000e-01 -2.00000000e-01 -4.00000000e-01 -1.20000000e+00\n",
630
+ " 3.00000000e-01 -1.90000000e+00 -2.20000000e+00 -1.00000000e+00\n",
631
+ " -2.00000000e+00 -1.20000000e+00 8.00000000e-01 1.70000000e+00\n",
632
+ " 2.70000000e+00 7.00000000e-01 2.00000000e-01 -3.30000000e+00\n",
633
+ " -1.30000000e+00 -1.00000000e-01 6.00000000e-01 7.00000000e-01\n",
634
+ " -2.20000000e+00 -2.00000000e-01 8.00000000e-01 -6.00000000e-01\n",
635
+ " 4.00000000e-01 -6.00000000e-01 -4.00000000e-01 6.00000000e-01\n",
636
+ " 1.10000000e+00 7.00000000e-01 3.00000000e-01 -5.00000000e-01\n",
637
+ " -1.10000000e+00 -5.00000000e-01 -2.60000000e+00 -3.80000000e+00\n",
638
+ " -2.50000000e+00 -1.10000000e+00 1.00000000e+00 1.30000000e+00\n",
639
+ " 1.70000000e+00 -6.00000000e-01 -1.10000000e+00 -2.00000000e-01\n",
640
+ " 7.00000000e-01 -1.20000000e+00 2.77555756e-17 1.20000000e+00\n",
641
+ " -2.00000000e+00 1.20000000e+00 -2.00000000e+00 -1.90000000e+00\n",
642
+ " 3.00000000e-01 1.20000000e+00 2.77555756e-17 3.00000000e-01\n",
643
+ " -2.30000000e+00 -2.60000000e+00 -2.60000000e+00 -2.30000000e+00\n",
644
+ " 7.00000000e-01 2.40000000e+00 6.00000000e-01 6.00000000e-01\n",
645
+ " -9.00000000e-01 1.00000000e-01 -3.00000000e-01 -2.40000000e+00\n",
646
+ " -1.80000000e+00 -2.00000000e-01 -1.20000000e+00 -3.00000000e-01\n",
647
+ " 5.00000000e-01 -8.00000000e-01 -3.00000000e-01 -4.00000000e-01\n",
648
+ " -3.10000000e+00 -1.20000000e+00 1.00000000e-01 8.00000000e-01\n",
649
+ " 1.50000000e+00 2.60000000e+00 6.00000000e-01 2.00000000e-01\n",
650
+ " -1.60000000e+00 -1.10000000e+00 -1.20000000e+00 1.00000000e-01\n",
651
+ " -3.30000000e+00 -1.30000000e+00 1.00000000e-01 -5.00000000e-01\n",
652
+ " 2.00000000e+00 7.00000000e-01 -1.00000000e+00 -1.90000000e+00\n",
653
+ " -2.40000000e+00 5.00000000e-01 -1.10000000e+00 -1.00000000e-01\n",
654
+ " 2.50000000e+00 1.30000000e+00 2.20000000e+00 3.00000000e-01\n",
655
+ " -2.20000000e+00 -2.00000000e-01 9.00000000e-01 -1.00000000e-01\n",
656
+ " 3.00000000e-01 1.50000000e+00 -2.00000000e-01 -1.40000000e+00\n",
657
+ " -6.00000000e-01 8.00000000e-01 1.10000000e+00 1.00000000e+00\n",
658
+ " -4.00000000e-01 -4.00000000e-01 -1.40000000e+00 -3.00000000e-01\n",
659
+ " 1.50000000e+00 2.00000000e-01 6.00000000e-01 3.10000000e+00\n",
660
+ " -7.00000000e-01 -2.30000000e+00 -1.60000000e+00 -2.00000000e-01\n",
661
+ " -3.00000000e-01 -2.00000000e-01 -1.20000000e+00 -1.90000000e+00\n",
662
+ " -6.00000000e-01 4.50000000e+00 3.90000000e+00 1.90000000e+00\n",
663
+ " -2.70000000e+00 -1.40000000e+00 1.00000000e+00 -2.00000000e-01\n",
664
+ " -3.00000000e-01 -1.60000000e+00 -8.00000000e-01 -9.00000000e-01\n",
665
+ " -1.00000000e-01 1.20000000e+00 -2.00000000e-01 -1.10000000e+00\n",
666
+ " 1.30000000e+00 -2.00000000e-01 -5.00000000e-01 2.40000000e+00\n",
667
+ " 2.70000000e+00 -1.80000000e+00 -1.40000000e+00 9.00000000e-01\n",
668
+ " -2.00000000e+00 4.00000000e-01 -1.80000000e+00 2.70000000e+00\n",
669
+ " -7.00000000e-01 7.00000000e-01 2.70000000e+00 -2.00000000e-01\n",
670
+ " 8.00000000e-01 -9.00000000e-01 -1.40000000e+00 2.10000000e+00\n",
671
+ " -5.00000000e-01 -1.20000000e+00 1.10000000e+00 5.00000000e-01\n",
672
+ " -1.10000000e+00 -1.90000000e+00 -6.00000000e-01 -1.00000000e-01\n",
673
+ " -8.00000000e-01 -7.00000000e-01 -3.00000000e-01 -2.00000000e-01\n",
674
+ " 8.00000000e-01 -4.00000000e-01 -1.30000000e+00 2.30000000e+00\n",
675
+ " -5.00000000e-01 -1.00000000e+00 -9.00000000e-01 7.00000000e-01\n",
676
+ " 2.00000000e+00 2.00000000e-01 -1.40000000e+00 -3.00000000e-01\n",
677
+ " -5.00000000e-01 -4.00000000e-01 5.00000000e-01 6.00000000e-01\n",
678
+ " -1.00000000e+00 -3.00000000e-01 -1.10000000e+00 -3.00000000e-01\n",
679
+ " 4.00000000e-01 -2.77555756e-17 2.80000000e+00 -1.50000000e+00\n",
680
+ " 7.00000000e-01 -9.00000000e-01 -9.00000000e-01 3.00000000e+00\n",
681
+ " -4.00000000e-01 1.80000000e+00 -1.60000000e+00 1.40000000e+00\n",
682
+ " -1.20000000e+00 9.00000000e-01 1.20000000e+00 -1.70000000e+00\n",
683
+ " -1.60000000e+00 1.50000000e+00 -1.50000000e+00 -3.00000000e-01\n",
684
+ " -6.00000000e-01 8.00000000e-01 1.00000000e+00 -7.00000000e-01\n",
685
+ " 1.80000000e+00 1.10000000e+00 -1.40000000e+00 -2.00000000e-01\n",
686
+ " -2.10000000e+00 6.00000000e-01 -1.10000000e+00 -3.00000000e-01\n",
687
+ " -2.00000000e+00 -1.60000000e+00 3.60000000e+00 -6.00000000e-01\n",
688
+ " -8.00000000e-01 4.00000000e-01 -9.00000000e-01 -1.80000000e+00\n",
689
+ " 2.10000000e+00 3.00000000e-01 5.00000000e-01 -1.90000000e+00\n",
690
+ " 1.50000000e+00 2.30000000e+00 -1.60000000e+00 -1.90000000e+00\n",
691
+ " 3.00000000e-01 2.50000000e+00 -5.00000000e-01 -1.40000000e+00\n",
692
+ " -1.00000000e+00 1.60000000e+00 -2.00000000e-01 1.40000000e+00\n",
693
+ " 1.30000000e+00 -1.10000000e+00 -2.00000000e-01 -1.10000000e+00\n",
694
+ " 4.00000000e-01 -3.00000000e-01 -1.30000000e+00 -6.00000000e-01\n",
695
+ " -4.00000000e-01 2.00000000e+00 -6.00000000e-01 -2.40000000e+00\n",
696
+ " 1.00000000e-01 5.00000000e-01 -1.50000000e+00 -1.00000000e-01\n",
697
+ " 5.00000000e-01 -1.00000000e+00 -4.00000000e-01 1.50000000e+00\n",
698
+ " -1.00000000e-01 -1.00000000e-01 1.40000000e+00 -6.00000000e-01\n",
699
+ " -3.00000000e-01 -1.00000000e-01 -1.50000000e+00 2.77555756e-17\n",
700
+ " 4.00000000e-01 1.00000000e-01 -9.00000000e-01 -1.10000000e+00\n",
701
+ " -8.00000000e-01 -1.70000000e+00 -3.00000000e-01 1.90000000e+00\n",
702
+ " 6.00000000e-01 -4.00000000e-01 -1.10000000e+00 9.00000000e-01\n",
703
+ " -2.00000000e-01 -7.00000000e-01 -1.00000000e+00 3.00000000e-01\n",
704
+ " -8.00000000e-01 1.50000000e+00 2.10000000e+00 -1.10000000e+00\n",
705
+ " -1.90000000e+00 -2.40000000e+00 4.00000000e-01 1.50000000e+00\n",
706
+ " 1.40000000e+00 -3.00000000e-01 -5.00000000e-01 -1.50000000e+00\n",
707
+ " 1.00000000e+00 -4.00000000e-01 -2.77555756e-17 -1.00000000e-01\n",
708
+ " 1.20000000e+00 9.00000000e-01 -1.40000000e+00 -4.00000000e-01\n",
709
+ " -1.40000000e+00 4.00000000e-01 3.00000000e-01 2.00000000e-01\n",
710
+ " -3.00000000e-01 -3.00000000e-01 -1.00000000e-01 2.00000000e-01\n",
711
+ " 1.00000000e-01 -2.00000000e-01 -2.77555756e-17 4.00000000e-01\n",
712
+ " 5.00000000e-01 2.00000000e-01 2.00000000e-01 1.00000000e-01\n",
713
+ " -4.00000000e-01 -5.00000000e-01 -2.77555756e-17 -2.77555756e-17\n",
714
+ " -1.00000000e-01 -1.00000000e-01 -1.00000000e-01 3.00000000e-01\n",
715
+ " -2.77555756e-17 -2.77555756e-17 -2.77555756e-17 -2.77555756e-17\n",
716
+ " -2.77555756e-17 -2.77555756e-17 -2.77555756e-17 -2.77555756e-17\n",
717
+ " -2.77555756e-17 -2.77555756e-17 -2.77555756e-17 -2.77555756e-17]\n",
718
+ "Training Completed\n",
719
+ "Accuracy: 49.99%\n"
720
+ ]
721
+ },
722
+ {
723
+ "name": "stderr",
724
+ "output_type": "stream",
725
+ "text": [
726
+ "\n"
727
+ ]
728
+ }
729
+ ],
730
+ "source": [
731
+ "# Load the IMDB dataset\n",
732
+ "top_words = 5000\n",
733
+ "(X_train, y_train), (X_test, y_test) = imdb.load_data(num_words=top_words)\n",
734
+ "\n",
735
+ "# Truncate and pad input sequences\n",
736
+ "max_review_length = 500\n",
737
+ "X_train = sequence.pad_sequences(X_train, maxlen=max_review_length)\n",
738
+ "X_test = sequence.pad_sequences(X_test, maxlen=max_review_length)\n",
739
+ "\n",
740
+ "# Convert data to binary (0/1) for perceptron\n",
741
+ "X_train_bin = np.where(X_train > 0, 1, 0)\n",
742
+ "X_test_bin = np.where(X_test > 0, 1, 0)\n",
743
+ "\n",
744
+ "# Initialize and train the Perceptron\n",
745
+ "bp = BackPropogation(learning_rate=0.1, epochs=5)\n",
746
+ "bp.fit(X_train_bin, y_train)\n",
747
+ "\n",
748
+ "# Evaluate on test data\n",
749
+ "predictions = bp.predict(X_test_bin)\n",
750
+ "accuracy = np.mean(predictions == y_test)\n",
751
+ "print(\"Accuracy: {:.2f}%\".format(accuracy * 100))"
752
+ ]
753
+ },
754
+ {
755
+ "cell_type": "code",
756
+ "execution_count": 3,
757
+ "metadata": {},
758
+ "outputs": [
759
+ {
760
+ "name": "stdout",
761
+ "output_type": "stream",
762
+ "text": [
763
+ "Confusion Matrix:\n",
764
+ "[[12390 110]\n",
765
+ " [12392 108]]\n",
766
+ "\n",
767
+ "Classification Report:\n",
768
+ " precision recall f1-score support\n",
769
+ "\n",
770
+ " 0 0.50 0.99 0.66 12500\n",
771
+ " 1 0.50 0.01 0.02 12500\n",
772
+ "\n",
773
+ " accuracy 0.50 25000\n",
774
+ " macro avg 0.50 0.50 0.34 25000\n",
775
+ "weighted avg 0.50 0.50 0.34 25000\n",
776
+ "\n"
777
+ ]
778
+ }
779
+ ],
780
+ "source": [
781
+ "# Calculate confusion matrix\n",
782
+ "cm = confusion_matrix(y_test, predictions)\n",
783
+ "\n",
784
+ "# Generate classification report\n",
785
+ "report = classification_report(y_test, predictions)\n",
786
+ "\n",
787
+ "# Display confusion matrix and classification report\n",
788
+ "print(\"Confusion Matrix:\")\n",
789
+ "print(cm)\n",
790
+ "print(\"\\nClassification Report:\")\n",
791
+ "print(report)"
792
+ ]
793
+ },
794
+ {
795
+ "cell_type": "code",
796
+ "execution_count": 4,
797
+ "metadata": {},
798
+ "outputs": [],
799
+ "source": [
800
+ "# Save the instance of the Perceptron class\n",
801
+ "with open('backprop_movie_model.pkl', 'wb') as file:\n",
802
+ " pickle.dump(bp, file)"
803
+ ]
804
+ },
805
+ {
806
+ "cell_type": "code",
807
+ "execution_count": 5,
808
+ "metadata": {},
809
+ "outputs": [],
810
+ "source": [
811
+ "def predict_sentiment_backprop(review, backprop_model, max_review_length):\n",
812
+ " word_index = imdb.get_word_index()\n",
813
+ " review = review.lower().split()\n",
814
+ " review = [word_index[word] if (word in word_index and word_index[word] < top_words) else 0 for word in review]\n",
815
+ " review_bin = np.where(np.array(review) > 0, 1, 0)\n",
816
+ " # Padding or truncating the review to match the perceptron's input size\n",
817
+ " review_bin_padded = np.pad(review_bin, (0, max_review_length - len(review_bin)), 'constant')\n",
818
+ " prediction = backprop_model.predict([review_bin_padded])\n",
819
+ " if prediction[0] == 1:\n",
820
+ " return \"Positive\"\n",
821
+ " else:\n",
822
+ " return \"Negative\"\n"
823
+ ]
824
+ },
825
+ {
826
+ "cell_type": "code",
827
+ "execution_count": 7,
828
+ "metadata": {},
829
+ "outputs": [
830
+ {
831
+ "name": "stdout",
832
+ "output_type": "stream",
833
+ "text": [
834
+ "Predicted Sentiment: Negative\n"
835
+ ]
836
+ }
837
+ ],
838
+ "source": [
839
+ "# Example usage after training the perceptron\n",
840
+ "example_review = \"This movie was fantastic! I loved every bit of it.\"\n",
841
+ "sentiment = predict_sentiment_backprop(example_review, bp, max_review_length)\n",
842
+ "print(\"Predicted Sentiment:\", sentiment)"
843
+ ]
844
+ },
845
+ {
846
+ "cell_type": "code",
847
+ "execution_count": 8,
848
+ "metadata": {},
849
+ "outputs": [
850
+ {
851
+ "name": "stdout",
852
+ "output_type": "stream",
853
+ "text": [
854
+ "Predicted Sentiment: Positive\n"
855
+ ]
856
+ }
857
+ ],
858
+ "source": [
859
+ "# Example usage after training the perceptron\n",
860
+ "example_review = \"This movie was bad!.\"\n",
861
+ "sentiment = predict_sentiment_backprop(example_review, bp, max_review_length)\n",
862
+ "print(\"Predicted Sentiment:\", sentiment)"
863
+ ]
864
+ },
865
+ {
866
+ "cell_type": "code",
867
+ "execution_count": 9,
868
+ "metadata": {},
869
+ "outputs": [
870
+ {
871
+ "name": "stdout",
872
+ "output_type": "stream",
873
+ "text": [
874
+ "Predicted Sentiment: Positive\n"
875
+ ]
876
+ }
877
+ ],
878
+ "source": [
879
+ "example_review = \"This movie was terrible. The acting was awful, and the plot was confusing.\"\n",
880
+ "sentiment = predict_sentiment_backprop(example_review, bp, max_review_length)\n",
881
+ "print(\"Predicted Sentiment:\", sentiment)"
882
+ ]
883
+ },
884
+ {
885
+ "cell_type": "code",
886
+ "execution_count": 10,
887
+ "metadata": {},
888
+ "outputs": [
889
+ {
890
+ "name": "stdout",
891
+ "output_type": "stream",
892
+ "text": [
893
+ "Predicted Sentiment: Positive\n"
894
+ ]
895
+ }
896
+ ],
897
+ "source": [
898
+ "example_review = \"This movie was fantastic and great\"\n",
899
+ "sentiment = predict_sentiment_backprop(example_review, bp, max_review_length)\n",
900
+ "print(\"Predicted Sentiment:\", sentiment)"
901
+ ]
902
+ },
903
+ {
904
+ "cell_type": "code",
905
+ "execution_count": null,
906
+ "metadata": {},
907
+ "outputs": [],
908
+ "source": []
909
+ }
910
+ ],
911
+ "metadata": {
912
+ "kernelspec": {
913
+ "display_name": "DLENV",
914
+ "language": "python",
915
+ "name": "python3"
916
+ },
917
+ "language_info": {
918
+ "codemirror_mode": {
919
+ "name": "ipython",
920
+ "version": 3
921
+ },
922
+ "file_extension": ".py",
923
+ "mimetype": "text/x-python",
924
+ "name": "python",
925
+ "nbconvert_exporter": "python",
926
+ "pygments_lexer": "ipython3",
927
+ "version": "3.10.11"
928
+ }
929
+ },
930
+ "nbformat": 4,
931
+ "nbformat_minor": 2
932
+ }
perceptron_movie_model.ipynb ADDED
@@ -0,0 +1,248 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "#### Movie Sentiment Analysis Model using Perceptron"
8
+ ]
9
+ },
10
+ {
11
+ "cell_type": "code",
12
+ "execution_count": 1,
13
+ "metadata": {},
14
+ "outputs": [],
15
+ "source": [
16
+ "from tensorflow.keras.datasets import imdb\n",
17
+ "import numpy as np\n",
18
+ "from tqdm import tqdm\n",
19
+ "from Perceptron import Perceptron\n",
20
+ "from tensorflow.keras.preprocessing import sequence\n",
21
+ "from sklearn.metrics import confusion_matrix, classification_report\n",
22
+ "import pickle"
23
+ ]
24
+ },
25
+ {
26
+ "cell_type": "code",
27
+ "execution_count": 2,
28
+ "metadata": {},
29
+ "outputs": [
30
+ {
31
+ "name": "stderr",
32
+ "output_type": "stream",
33
+ "text": [
34
+ "100%|██████████| 5/5 [00:00<00:00, 20.08it/s]"
35
+ ]
36
+ },
37
+ {
38
+ "name": "stdout",
39
+ "output_type": "stream",
40
+ "text": [
41
+ "Training Completed\n",
42
+ "Accuracy: 50.00%\n"
43
+ ]
44
+ },
45
+ {
46
+ "name": "stderr",
47
+ "output_type": "stream",
48
+ "text": [
49
+ "\n"
50
+ ]
51
+ }
52
+ ],
53
+ "source": [
54
+ "# Load the IMDB dataset\n",
55
+ "top_words = 5000\n",
56
+ "(X_train, y_train), (X_test, y_test) = imdb.load_data(num_words=top_words)\n",
57
+ "\n",
58
+ "# Truncate and pad input sequences\n",
59
+ "max_review_length = 500\n",
60
+ "X_train = sequence.pad_sequences(X_train, maxlen=max_review_length)\n",
61
+ "X_test = sequence.pad_sequences(X_test, maxlen=max_review_length)\n",
62
+ "\n",
63
+ "# Convert data to binary (0/1) for perceptron\n",
64
+ "X_train_bin = np.where(X_train > 0, 1, 0)\n",
65
+ "X_test_bin = np.where(X_test > 0, 1, 0)\n",
66
+ "\n",
67
+ "# Initialize and train the Perceptron\n",
68
+ "perceptron = Perceptron(learning_rate=0.1, epochs=5)\n",
69
+ "perceptron.fit(X_train_bin, y_train)\n",
70
+ "\n",
71
+ "# Evaluate on test data\n",
72
+ "predictions = perceptron.predict(X_test_bin)\n",
73
+ "accuracy = np.mean(predictions == y_test)\n",
74
+ "print(\"Accuracy: {:.2f}%\".format(accuracy * 100))"
75
+ ]
76
+ },
77
+ {
78
+ "cell_type": "code",
79
+ "execution_count": 3,
80
+ "metadata": {},
81
+ "outputs": [
82
+ {
83
+ "name": "stdout",
84
+ "output_type": "stream",
85
+ "text": [
86
+ "Confusion Matrix:\n",
87
+ "[[ 0 12500]\n",
88
+ " [ 0 12500]]\n",
89
+ "\n",
90
+ "Classification Report:\n",
91
+ " precision recall f1-score support\n",
92
+ "\n",
93
+ " 0 0.00 0.00 0.00 12500\n",
94
+ " 1 0.50 1.00 0.67 12500\n",
95
+ "\n",
96
+ " accuracy 0.50 25000\n",
97
+ " macro avg 0.25 0.50 0.33 25000\n",
98
+ "weighted avg 0.25 0.50 0.33 25000\n",
99
+ "\n"
100
+ ]
101
+ },
102
+ {
103
+ "name": "stderr",
104
+ "output_type": "stream",
105
+ "text": [
106
+ "d:\\STUDY\\Sem3\\deeplearning\\DLENV\\lib\\site-packages\\sklearn\\metrics\\_classification.py:1471: UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 in labels with no predicted samples. Use `zero_division` parameter to control this behavior.\n",
107
+ " _warn_prf(average, modifier, msg_start, len(result))\n",
108
+ "d:\\STUDY\\Sem3\\deeplearning\\DLENV\\lib\\site-packages\\sklearn\\metrics\\_classification.py:1471: UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 in labels with no predicted samples. Use `zero_division` parameter to control this behavior.\n",
109
+ " _warn_prf(average, modifier, msg_start, len(result))\n",
110
+ "d:\\STUDY\\Sem3\\deeplearning\\DLENV\\lib\\site-packages\\sklearn\\metrics\\_classification.py:1471: UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 in labels with no predicted samples. Use `zero_division` parameter to control this behavior.\n",
111
+ " _warn_prf(average, modifier, msg_start, len(result))\n"
112
+ ]
113
+ }
114
+ ],
115
+ "source": [
116
+ "# Calculate confusion matrix\n",
117
+ "cm = confusion_matrix(y_test, predictions)\n",
118
+ "\n",
119
+ "# Generate classification report\n",
120
+ "report = classification_report(y_test, predictions)\n",
121
+ "\n",
122
+ "# Display confusion matrix and classification report\n",
123
+ "print(\"Confusion Matrix:\")\n",
124
+ "print(cm)\n",
125
+ "print(\"\\nClassification Report:\")\n",
126
+ "print(report)"
127
+ ]
128
+ },
129
+ {
130
+ "cell_type": "code",
131
+ "execution_count": 4,
132
+ "metadata": {},
133
+ "outputs": [],
134
+ "source": [
135
+ "# Save the instance of the Perceptron class\n",
136
+ "with open('perceptron_movie_model.pkl', 'wb') as file:\n",
137
+ " pickle.dump(perceptron, file)"
138
+ ]
139
+ },
140
+ {
141
+ "cell_type": "code",
142
+ "execution_count": 5,
143
+ "metadata": {},
144
+ "outputs": [],
145
+ "source": [
146
+ "def predict_sentiment_perceptron(review, perceptron_model, max_review_length):\n",
147
+ " word_index = imdb.get_word_index()\n",
148
+ " review = review.lower().split()\n",
149
+ " review = [word_index[word] if (word in word_index and word_index[word] < top_words) else 0 for word in review]\n",
150
+ " review_bin = np.where(np.array(review) > 0, 1, 0)\n",
151
+ " # Padding or truncating the review to match the perceptron's input size\n",
152
+ " review_bin_padded = np.pad(review_bin, (0, max_review_length - len(review_bin)), 'constant')\n",
153
+ " prediction = perceptron_model.predict([review_bin_padded])\n",
154
+ " if prediction[0] == 1:\n",
155
+ " return \"Positive\"\n",
156
+ " else:\n",
157
+ " return \"Negative\"\n"
158
+ ]
159
+ },
160
+ {
161
+ "cell_type": "code",
162
+ "execution_count": 6,
163
+ "metadata": {},
164
+ "outputs": [
165
+ {
166
+ "name": "stdout",
167
+ "output_type": "stream",
168
+ "text": [
169
+ "Predicted Sentiment: Positive\n"
170
+ ]
171
+ }
172
+ ],
173
+ "source": [
174
+ "# Example usage after training the perceptron\n",
175
+ "example_review = \"This movie was fantastic! I loved every bit of it.\"\n",
176
+ "sentiment = predict_sentiment_perceptron(example_review, perceptron, max_review_length)\n",
177
+ "print(\"Predicted Sentiment:\", sentiment)"
178
+ ]
179
+ },
180
+ {
181
+ "cell_type": "code",
182
+ "execution_count": 7,
183
+ "metadata": {},
184
+ "outputs": [
185
+ {
186
+ "name": "stdout",
187
+ "output_type": "stream",
188
+ "text": [
189
+ "Predicted Sentiment: Positive\n"
190
+ ]
191
+ }
192
+ ],
193
+ "source": [
194
+ "# Example usage after training the perceptron\n",
195
+ "example_review = \"This movie was bad!.\"\n",
196
+ "sentiment = predict_sentiment_perceptron(example_review, perceptron, max_review_length)\n",
197
+ "print(\"Predicted Sentiment:\", sentiment)"
198
+ ]
199
+ },
200
+ {
201
+ "cell_type": "code",
202
+ "execution_count": 8,
203
+ "metadata": {},
204
+ "outputs": [
205
+ {
206
+ "name": "stdout",
207
+ "output_type": "stream",
208
+ "text": [
209
+ "Predicted Sentiment: Positive\n"
210
+ ]
211
+ }
212
+ ],
213
+ "source": [
214
+ "example_review = \"This movie was terrible. The acting was awful, and the plot was confusing.\"\n",
215
+ "sentiment = predict_sentiment_perceptron(example_review, perceptron, max_review_length)\n",
216
+ "print(\"Predicted Sentiment:\", sentiment)"
217
+ ]
218
+ },
219
+ {
220
+ "cell_type": "code",
221
+ "execution_count": null,
222
+ "metadata": {},
223
+ "outputs": [],
224
+ "source": []
225
+ }
226
+ ],
227
+ "metadata": {
228
+ "kernelspec": {
229
+ "display_name": "DLENV",
230
+ "language": "python",
231
+ "name": "python3"
232
+ },
233
+ "language_info": {
234
+ "codemirror_mode": {
235
+ "name": "ipython",
236
+ "version": 3
237
+ },
238
+ "file_extension": ".py",
239
+ "mimetype": "text/x-python",
240
+ "name": "python",
241
+ "nbconvert_exporter": "python",
242
+ "pygments_lexer": "ipython3",
243
+ "version": "3.10.11"
244
+ }
245
+ },
246
+ "nbformat": 4,
247
+ "nbformat_minor": 2
248
+ }
perceptron_movie_model.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:504ce3134f1dd442880c222e37d7cdd19ea8262ff433a844608f8a39508e362e
3
+ size 2264