ravi.naik commited on
Commit
70f7a67
Β·
1 Parent(s): 8413265

added model link into app

Browse files
Files changed (2) hide show
  1. README.md +526 -1
  2. markdown.py +1 -1
README.md CHANGED
@@ -10,4 +10,529 @@ pinned: false
10
  license: mit
11
  ---
12
 
13
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  license: mit
11
  ---
12
 
13
+ # ERA-SESSION13 YoloV3 with Pytorch Lightning & Gradio
14
+
15
+ HF Link: https://huggingface.co/spaces/RaviNaik/ERA-SESSION13
16
+
17
+ ### Achieved:
18
+ 1. **Training Loss: 3.680**
19
+ 2. **Validation Loss: 4.940**
20
+ 3. **Class accuracy: 81.601883%**
21
+ 4. **No obj accuracy: 97.991463%**
22
+ 5. **Obj accuracy: 75.976616%**
23
+ 6. **MAP: 0.4366795**
24
+
25
+ ### Tasks:
26
+ 1. :heavy_check_mark: Move the code to PytorchLightning
27
+ 2. :heavy_check_mark: Train the model to reach such that all of these are true:
28
+ - Class accuracy is more than 75%
29
+ - No Obj accuracy of more than 95%
30
+ - Object Accuracy of more than 70% (assuming you had to reduce the kernel numbers, else 80/98/78)
31
+ - Ideally trained till 40 epochs
32
+ 3. :heavy_check_mark: Add these training features:
33
+ - Add multi-resolution training - the code shared trains only on one resolution 416
34
+ - Add Implement Mosaic Augmentation only 75% of the times
35
+ - Train on float16
36
+ - GradCam must be implemented.
37
+ 4. :heavy_check_mark: Things that are allowed due to HW constraints:
38
+ - Change of batch size
39
+ - Change of resolution
40
+ - Change of OCP parameters
41
+ 5. :heavy_check_mark: Once done:
42
+ - Move the app to HuggingFace Spaces
43
+ - Allow custom upload of images
44
+ - Share some samples from the existing dataset
45
+ - Show the GradCAM output for the image that the user uploads as well as for the samples.
46
+ 6. :heavy_check_mark: Mention things like:
47
+ - classes that your model support
48
+ - link to the actual model
49
+ 7. :heavy_check_mark: Assignment:
50
+ - Share HuggingFace App Link
51
+ - Share LightningCode Link on Github
52
+ - Share notebook link (with logs) on GitHub
53
+
54
+ ### Results
55
+ ![image](https://github.com/RaviNaik/ERA-SESSION13/blob/main/yolo_results.png)
56
+
57
+ ### Gradio App
58
+ ![image](https://github.com/RaviNaik/ERA-SESSION13/assets/23289802/95335687-e717-4467-bcb1-227a79dd5c3f)
59
+ ![image](https://github.com/RaviNaik/ERA-SESSION13/assets/23289802/3ab67d32-38e6-436a-86d4-b76b5bd52a77)
60
+
61
+ ### Model Summary
62
+ ```python
63
+ | Name | Type | Params
64
+ -------------------------------------------------------------------
65
+ 0 | loss_fn | YoloLoss | 0
66
+ 1 | loss_fn.mse | MSELoss | 0
67
+ 2 | loss_fn.bce | BCEWithLogitsLoss | 0
68
+ 3 | loss_fn.entropy | CrossEntropyLoss | 0
69
+ 4 | loss_fn.sigmoid | Sigmoid | 0
70
+ 5 | layers | ModuleList | 61.6 M
71
+ 6 | layers.0 | CNNBlock | 928
72
+ 7 | layers.0.conv | Conv2d | 864
73
+ 8 | layers.0.bn | BatchNorm2d | 64
74
+ 9 | layers.0.leaky | LeakyReLU | 0
75
+ 10 | layers.1 | CNNBlock | 18.6 K
76
+ 11 | layers.1.conv | Conv2d | 18.4 K
77
+ 12 | layers.1.bn | BatchNorm2d | 128
78
+ 13 | layers.1.leaky | LeakyReLU | 0
79
+ 14 | layers.2 | ResidualBlock | 20.7 K
80
+ 15 | layers.2.layers | ModuleList | 20.7 K
81
+ 16 | layers.2.layers.0 | Sequential | 20.7 K
82
+ 17 | layers.2.layers.0.0 | CNNBlock | 2.1 K
83
+ 18 | layers.2.layers.0.0.conv | Conv2d | 2.0 K
84
+ 19 | layers.2.layers.0.0.bn | BatchNorm2d | 64
85
+ 20 | layers.2.layers.0.0.leaky | LeakyReLU | 0
86
+ 21 | layers.2.layers.0.1 | CNNBlock | 18.6 K
87
+ 22 | layers.2.layers.0.1.conv | Conv2d | 18.4 K
88
+ 23 | layers.2.layers.0.1.bn | BatchNorm2d | 128
89
+ 24 | layers.2.layers.0.1.leaky | LeakyReLU | 0
90
+ 25 | layers.3 | CNNBlock | 74.0 K
91
+ 26 | layers.3.conv | Conv2d | 73.7 K
92
+ 27 | layers.3.bn | BatchNorm2d | 256
93
+ 28 | layers.3.leaky | LeakyReLU | 0
94
+ 29 | layers.4 | ResidualBlock | 164 K
95
+ 30 | layers.4.layers | ModuleList | 164 K
96
+ 31 | layers.4.layers.0 | Sequential | 82.3 K
97
+ 32 | layers.4.layers.0.0 | CNNBlock | 8.3 K
98
+ 33 | layers.4.layers.0.0.conv | Conv2d | 8.2 K
99
+ 34 | layers.4.layers.0.0.bn | BatchNorm2d | 128
100
+ 35 | layers.4.layers.0.0.leaky | LeakyReLU | 0
101
+ 36 | layers.4.layers.0.1 | CNNBlock | 74.0 K
102
+ 37 | layers.4.layers.0.1.conv | Conv2d | 73.7 K
103
+ 38 | layers.4.layers.0.1.bn | BatchNorm2d | 256
104
+ 39 | layers.4.layers.0.1.leaky | LeakyReLU | 0
105
+ 40 | layers.4.layers.1 | Sequential | 82.3 K
106
+ 41 | layers.4.layers.1.0 | CNNBlock | 8.3 K
107
+ 42 | layers.4.layers.1.0.conv | Conv2d | 8.2 K
108
+ 43 | layers.4.layers.1.0.bn | BatchNorm2d | 128
109
+ 44 | layers.4.layers.1.0.leaky | LeakyReLU | 0
110
+ 45 | layers.4.layers.1.1 | CNNBlock | 74.0 K
111
+ 46 | layers.4.layers.1.1.conv | Conv2d | 73.7 K
112
+ 47 | layers.4.layers.1.1.bn | BatchNorm2d | 256
113
+ 48 | layers.4.layers.1.1.leaky | LeakyReLU | 0
114
+ 49 | layers.5 | CNNBlock | 295 K
115
+ 50 | layers.5.conv | Conv2d | 294 K
116
+ 51 | layers.5.bn | BatchNorm2d | 512
117
+ 52 | layers.5.leaky | LeakyReLU | 0
118
+ 53 | layers.6 | ResidualBlock | 2.6 M
119
+ 54 | layers.6.layers | ModuleList | 2.6 M
120
+ 55 | layers.6.layers.0 | Sequential | 328 K
121
+ 56 | layers.6.layers.0.0 | CNNBlock | 33.0 K
122
+ 57 | layers.6.layers.0.0.conv | Conv2d | 32.8 K
123
+ 58 | layers.6.layers.0.0.bn | BatchNorm2d | 256
124
+ 59 | layers.6.layers.0.0.leaky | LeakyReLU | 0
125
+ 60 | layers.6.layers.0.1 | CNNBlock | 295 K
126
+ 61 | layers.6.layers.0.1.conv | Conv2d | 294 K
127
+ 62 | layers.6.layers.0.1.bn | BatchNorm2d | 512
128
+ 63 | layers.6.layers.0.1.leaky | LeakyReLU | 0
129
+ 64 | layers.6.layers.1 | Sequential | 328 K
130
+ 65 | layers.6.layers.1.0 | CNNBlock | 33.0 K
131
+ 66 | layers.6.layers.1.0.conv | Conv2d | 32.8 K
132
+ 67 | layers.6.layers.1.0.bn | BatchNorm2d | 256
133
+ 68 | layers.6.layers.1.0.leaky | LeakyReLU | 0
134
+ 69 | layers.6.layers.1.1 | CNNBlock | 295 K
135
+ 70 | layers.6.layers.1.1.conv | Conv2d | 294 K
136
+ 71 | layers.6.layers.1.1.bn | BatchNorm2d | 512
137
+ 72 | layers.6.layers.1.1.leaky | LeakyReLU | 0
138
+ 73 | layers.6.layers.2 | Sequential | 328 K
139
+ 74 | layers.6.layers.2.0 | CNNBlock | 33.0 K
140
+ 75 | layers.6.layers.2.0.conv | Conv2d | 32.8 K
141
+ 76 | layers.6.layers.2.0.bn | BatchNorm2d | 256
142
+ 77 | layers.6.layers.2.0.leaky | LeakyReLU | 0
143
+ 78 | layers.6.layers.2.1 | CNNBlock | 295 K
144
+ 79 | layers.6.layers.2.1.conv | Conv2d | 294 K
145
+ 80 | layers.6.layers.2.1.bn | BatchNorm2d | 512
146
+ 81 | layers.6.layers.2.1.leaky | LeakyReLU | 0
147
+ 82 | layers.6.layers.3 | Sequential | 328 K
148
+ 83 | layers.6.layers.3.0 | CNNBlock | 33.0 K
149
+ 84 | layers.6.layers.3.0.conv | Conv2d | 32.8 K
150
+ 85 | layers.6.layers.3.0.bn | BatchNorm2d | 256
151
+ 86 | layers.6.layers.3.0.leaky | LeakyReLU | 0
152
+ 87 | layers.6.layers.3.1 | CNNBlock | 295 K
153
+ 88 | layers.6.layers.3.1.conv | Conv2d | 294 K
154
+ 89 | layers.6.layers.3.1.bn | BatchNorm2d | 512
155
+ 90 | layers.6.layers.3.1.leaky | LeakyReLU | 0
156
+ 91 | layers.6.layers.4 | Sequential | 328 K
157
+ 92 | layers.6.layers.4.0 | CNNBlock | 33.0 K
158
+ 93 | layers.6.layers.4.0.conv | Conv2d | 32.8 K
159
+ 94 | layers.6.layers.4.0.bn | BatchNorm2d | 256
160
+ 95 | layers.6.layers.4.0.leaky | LeakyReLU | 0
161
+ 96 | layers.6.layers.4.1 | CNNBlock | 295 K
162
+ 97 | layers.6.layers.4.1.conv | Conv2d | 294 K
163
+ 98 | layers.6.layers.4.1.bn | BatchNorm2d | 512
164
+ 99 | layers.6.layers.4.1.leaky | LeakyReLU | 0
165
+ 100 | layers.6.layers.5 | Sequential | 328 K
166
+ 101 | layers.6.layers.5.0 | CNNBlock | 33.0 K
167
+ 102 | layers.6.layers.5.0.conv | Conv2d | 32.8 K
168
+ 103 | layers.6.layers.5.0.bn | BatchNorm2d | 256
169
+ 104 | layers.6.layers.5.0.leaky | LeakyReLU | 0
170
+ 105 | layers.6.layers.5.1 | CNNBlock | 295 K
171
+ 106 | layers.6.layers.5.1.conv | Conv2d | 294 K
172
+ 107 | layers.6.layers.5.1.bn | BatchNorm2d | 512
173
+ 108 | layers.6.layers.5.1.leaky | LeakyReLU | 0
174
+ 109 | layers.6.layers.6 | Sequential | 328 K
175
+ 110 | layers.6.layers.6.0 | CNNBlock | 33.0 K
176
+ 111 | layers.6.layers.6.0.conv | Conv2d | 32.8 K
177
+ 112 | layers.6.layers.6.0.bn | BatchNorm2d | 256
178
+ 113 | layers.6.layers.6.0.leaky | LeakyReLU | 0
179
+ 114 | layers.6.layers.6.1 | CNNBlock | 295 K
180
+ 115 | layers.6.layers.6.1.conv | Conv2d | 294 K
181
+ 116 | layers.6.layers.6.1.bn | BatchNorm2d | 512
182
+ 117 | layers.6.layers.6.1.leaky | LeakyReLU | 0
183
+ 118 | layers.6.layers.7 | Sequential | 328 K
184
+ 119 | layers.6.layers.7.0 | CNNBlock | 33.0 K
185
+ 120 | layers.6.layers.7.0.conv | Conv2d | 32.8 K
186
+ 121 | layers.6.layers.7.0.bn | BatchNorm2d | 256
187
+ 122 | layers.6.layers.7.0.leaky | LeakyReLU | 0
188
+ 123 | layers.6.layers.7.1 | CNNBlock | 295 K
189
+ 124 | layers.6.layers.7.1.conv | Conv2d | 294 K
190
+ 125 | layers.6.layers.7.1.bn | BatchNorm2d | 512
191
+ 126 | layers.6.layers.7.1.leaky | LeakyReLU | 0
192
+ 127 | layers.7 | CNNBlock | 1.2 M
193
+ 128 | layers.7.conv | Conv2d | 1.2 M
194
+ 129 | layers.7.bn | BatchNorm2d | 1.0 K
195
+ 130 | layers.7.leaky | LeakyReLU | 0
196
+ 131 | layers.8 | ResidualBlock | 10.5 M
197
+ 132 | layers.8.layers | ModuleList | 10.5 M
198
+ 133 | layers.8.layers.0 | Sequential | 1.3 M
199
+ 134 | layers.8.layers.0.0 | CNNBlock | 131 K
200
+ 135 | layers.8.layers.0.0.conv | Conv2d | 131 K
201
+ 136 | layers.8.layers.0.0.bn | BatchNorm2d | 512
202
+ 137 | layers.8.layers.0.0.leaky | LeakyReLU | 0
203
+ 138 | layers.8.layers.0.1 | CNNBlock | 1.2 M
204
+ 139 | layers.8.layers.0.1.conv | Conv2d | 1.2 M
205
+ 140 | layers.8.layers.0.1.bn | BatchNorm2d | 1.0 K
206
+ 141 | layers.8.layers.0.1.leaky | LeakyReLU | 0
207
+ 142 | layers.8.layers.1 | Sequential | 1.3 M
208
+ 143 | layers.8.layers.1.0 | CNNBlock | 131 K
209
+ 144 | layers.8.layers.1.0.conv | Conv2d | 131 K
210
+ 145 | layers.8.layers.1.0.bn | BatchNorm2d | 512
211
+ 146 | layers.8.layers.1.0.leaky | LeakyReLU | 0
212
+ 147 | layers.8.layers.1.1 | CNNBlock | 1.2 M
213
+ 148 | layers.8.layers.1.1.conv | Conv2d | 1.2 M
214
+ 149 | layers.8.layers.1.1.bn | BatchNorm2d | 1.0 K
215
+ 150 | layers.8.layers.1.1.leaky | LeakyReLU | 0
216
+ 151 | layers.8.layers.2 | Sequential | 1.3 M
217
+ 152 | layers.8.layers.2.0 | CNNBlock | 131 K
218
+ 153 | layers.8.layers.2.0.conv | Conv2d | 131 K
219
+ 154 | layers.8.layers.2.0.bn | BatchNorm2d | 512
220
+ 155 | layers.8.layers.2.0.leaky | LeakyReLU | 0
221
+ 156 | layers.8.layers.2.1 | CNNBlock | 1.2 M
222
+ 157 | layers.8.layers.2.1.conv | Conv2d | 1.2 M
223
+ 158 | layers.8.layers.2.1.bn | BatchNorm2d | 1.0 K
224
+ 159 | layers.8.layers.2.1.leaky | LeakyReLU | 0
225
+ 160 | layers.8.layers.3 | Sequential | 1.3 M
226
+ 161 | layers.8.layers.3.0 | CNNBlock | 131 K
227
+ 162 | layers.8.layers.3.0.conv | Conv2d | 131 K
228
+ 163 | layers.8.layers.3.0.bn | BatchNorm2d | 512
229
+ 164 | layers.8.layers.3.0.leaky | LeakyReLU | 0
230
+ 165 | layers.8.layers.3.1 | CNNBlock | 1.2 M
231
+ 166 | layers.8.layers.3.1.conv | Conv2d | 1.2 M
232
+ 167 | layers.8.layers.3.1.bn | BatchNorm2d | 1.0 K
233
+ 168 | layers.8.layers.3.1.leaky | LeakyReLU | 0
234
+ 169 | layers.8.layers.4 | Sequential | 1.3 M
235
+ 170 | layers.8.layers.4.0 | CNNBlock | 131 K
236
+ 171 | layers.8.layers.4.0.conv | Conv2d | 131 K
237
+ 172 | layers.8.layers.4.0.bn | BatchNorm2d | 512
238
+ 173 | layers.8.layers.4.0.leaky | LeakyReLU | 0
239
+ 174 | layers.8.layers.4.1 | CNNBlock | 1.2 M
240
+ 175 | layers.8.layers.4.1.conv | Conv2d | 1.2 M
241
+ 176 | layers.8.layers.4.1.bn | BatchNorm2d | 1.0 K
242
+ 177 | layers.8.layers.4.1.leaky | LeakyReLU | 0
243
+ 178 | layers.8.layers.5 | Sequential | 1.3 M
244
+ 179 | layers.8.layers.5.0 | CNNBlock | 131 K
245
+ 180 | layers.8.layers.5.0.conv | Conv2d | 131 K
246
+ 181 | layers.8.layers.5.0.bn | BatchNorm2d | 512
247
+ 182 | layers.8.layers.5.0.leaky | LeakyReLU | 0
248
+ 183 | layers.8.layers.5.1 | CNNBlock | 1.2 M
249
+ 184 | layers.8.layers.5.1.conv | Conv2d | 1.2 M
250
+ 185 | layers.8.layers.5.1.bn | BatchNorm2d | 1.0 K
251
+ 186 | layers.8.layers.5.1.leaky | LeakyReLU | 0
252
+ 187 | layers.8.layers.6 | Sequential | 1.3 M
253
+ 188 | layers.8.layers.6.0 | CNNBlock | 131 K
254
+ 189 | layers.8.layers.6.0.conv | Conv2d | 131 K
255
+ 190 | layers.8.layers.6.0.bn | BatchNorm2d | 512
256
+ 191 | layers.8.layers.6.0.leaky | LeakyReLU | 0
257
+ 192 | layers.8.layers.6.1 | CNNBlock | 1.2 M
258
+ 193 | layers.8.layers.6.1.conv | Conv2d | 1.2 M
259
+ 194 | layers.8.layers.6.1.bn | BatchNorm2d | 1.0 K
260
+ 195 | layers.8.layers.6.1.leaky | LeakyReLU | 0
261
+ 196 | layers.8.layers.7 | Sequential | 1.3 M
262
+ 197 | layers.8.layers.7.0 | CNNBlock | 131 K
263
+ 198 | layers.8.layers.7.0.conv | Conv2d | 131 K
264
+ 199 | layers.8.layers.7.0.bn | BatchNorm2d | 512
265
+ 200 | layers.8.layers.7.0.leaky | LeakyReLU | 0
266
+ 201 | layers.8.layers.7.1 | CNNBlock | 1.2 M
267
+ 202 | layers.8.layers.7.1.conv | Conv2d | 1.2 M
268
+ 203 | layers.8.layers.7.1.bn | BatchNorm2d | 1.0 K
269
+ 204 | layers.8.layers.7.1.leaky | LeakyReLU | 0
270
+ 205 | layers.9 | CNNBlock | 4.7 M
271
+ 206 | layers.9.conv | Conv2d | 4.7 M
272
+ 207 | layers.9.bn | BatchNorm2d | 2.0 K
273
+ 208 | layers.9.leaky | LeakyReLU | 0
274
+ 209 | layers.10 | ResidualBlock | 21.0 M
275
+ 210 | layers.10.layers | ModuleList | 21.0 M
276
+ 211 | layers.10.layers.0 | Sequential | 5.2 M
277
+ 212 | layers.10.layers.0.0 | CNNBlock | 525 K
278
+ 213 | layers.10.layers.0.0.conv | Conv2d | 524 K
279
+ 214 | layers.10.layers.0.0.bn | BatchNorm2d | 1.0 K
280
+ 215 | layers.10.layers.0.0.leaky | LeakyReLU | 0
281
+ 216 | layers.10.layers.0.1 | CNNBlock | 4.7 M
282
+ 217 | layers.10.layers.0.1.conv | Conv2d | 4.7 M
283
+ 218 | layers.10.layers.0.1.bn | BatchNorm2d | 2.0 K
284
+ 219 | layers.10.layers.0.1.leaky | LeakyReLU | 0
285
+ 220 | layers.10.layers.1 | Sequential | 5.2 M
286
+ 221 | layers.10.layers.1.0 | CNNBlock | 525 K
287
+ 222 | layers.10.layers.1.0.conv | Conv2d | 524 K
288
+ 223 | layers.10.layers.1.0.bn | BatchNorm2d | 1.0 K
289
+ 224 | layers.10.layers.1.0.leaky | LeakyReLU | 0
290
+ 225 | layers.10.layers.1.1 | CNNBlock | 4.7 M
291
+ 226 | layers.10.layers.1.1.conv | Conv2d | 4.7 M
292
+ 227 | layers.10.layers.1.1.bn | BatchNorm2d | 2.0 K
293
+ 228 | layers.10.layers.1.1.leaky | LeakyReLU | 0
294
+ 229 | layers.10.layers.2 | Sequential | 5.2 M
295
+ 230 | layers.10.layers.2.0 | CNNBlock | 525 K
296
+ 231 | layers.10.layers.2.0.conv | Conv2d | 524 K
297
+ 232 | layers.10.layers.2.0.bn | BatchNorm2d | 1.0 K
298
+ 233 | layers.10.layers.2.0.leaky | LeakyReLU | 0
299
+ 234 | layers.10.layers.2.1 | CNNBlock | 4.7 M
300
+ 235 | layers.10.layers.2.1.conv | Conv2d | 4.7 M
301
+ 236 | layers.10.layers.2.1.bn | BatchNorm2d | 2.0 K
302
+ 237 | layers.10.layers.2.1.leaky | LeakyReLU | 0
303
+ 238 | layers.10.layers.3 | Sequential | 5.2 M
304
+ 239 | layers.10.layers.3.0 | CNNBlock | 525 K
305
+ 240 | layers.10.layers.3.0.conv | Conv2d | 524 K
306
+ 241 | layers.10.layers.3.0.bn | BatchNorm2d | 1.0 K
307
+ 242 | layers.10.layers.3.0.leaky | LeakyReLU | 0
308
+ 243 | layers.10.layers.3.1 | CNNBlock | 4.7 M
309
+ 244 | layers.10.layers.3.1.conv | Conv2d | 4.7 M
310
+ 245 | layers.10.layers.3.1.bn | BatchNorm2d | 2.0 K
311
+ 246 | layers.10.layers.3.1.leaky | LeakyReLU | 0
312
+ 247 | layers.11 | CNNBlock | 525 K
313
+ 248 | layers.11.conv | Conv2d | 524 K
314
+ 249 | layers.11.bn | BatchNorm2d | 1.0 K
315
+ 250 | layers.11.leaky | LeakyReLU | 0
316
+ 251 | layers.12 | CNNBlock | 4.7 M
317
+ 252 | layers.12.conv | Conv2d | 4.7 M
318
+ 253 | layers.12.bn | BatchNorm2d | 2.0 K
319
+ 254 | layers.12.leaky | LeakyReLU | 0
320
+ 255 | layers.13 | ResidualBlock | 5.2 M
321
+ 256 | layers.13.layers | ModuleList | 5.2 M
322
+ 257 | layers.13.layers.0 | Sequential | 5.2 M
323
+ 258 | layers.13.layers.0.0 | CNNBlock | 525 K
324
+ 259 | layers.13.layers.0.0.conv | Conv2d | 524 K
325
+ 260 | layers.13.layers.0.0.bn | BatchNorm2d | 1.0 K
326
+ 261 | layers.13.layers.0.0.leaky | LeakyReLU | 0
327
+ 262 | layers.13.layers.0.1 | CNNBlock | 4.7 M
328
+ 263 | layers.13.layers.0.1.conv | Conv2d | 4.7 M
329
+ 264 | layers.13.layers.0.1.bn | BatchNorm2d | 2.0 K
330
+ 265 | layers.13.layers.0.1.leaky | LeakyReLU | 0
331
+ 266 | layers.14 | CNNBlock | 525 K
332
+ 267 | layers.14.conv | Conv2d | 524 K
333
+ 268 | layers.14.bn | BatchNorm2d | 1.0 K
334
+ 269 | layers.14.leaky | LeakyReLU | 0
335
+ 270 | layers.15 | ScalePrediction | 4.8 M
336
+ 271 | layers.15.pred | Sequential | 4.8 M
337
+ 272 | layers.15.pred.0 | CNNBlock | 4.7 M
338
+ 273 | layers.15.pred.0.conv | Conv2d | 4.7 M
339
+ 274 | layers.15.pred.0.bn | BatchNorm2d | 2.0 K
340
+ 275 | layers.15.pred.0.leaky | LeakyReLU | 0
341
+ 276 | layers.15.pred.1 | CNNBlock | 77.0 K
342
+ 277 | layers.15.pred.1.conv | Conv2d | 76.9 K
343
+ 278 | layers.15.pred.1.bn | BatchNorm2d | 150
344
+ 279 | layers.15.pred.1.leaky | LeakyReLU | 0
345
+ 280 | layers.16 | CNNBlock | 131 K
346
+ 281 | layers.16.conv | Conv2d | 131 K
347
+ 282 | layers.16.bn | BatchNorm2d | 512
348
+ 283 | layers.16.leaky | LeakyReLU | 0
349
+ 284 | layers.17 | Upsample | 0
350
+ 285 | layers.18 | CNNBlock | 197 K
351
+ 286 | layers.18.conv | Conv2d | 196 K
352
+ 287 | layers.18.bn | BatchNorm2d | 512
353
+ 288 | layers.18.leaky | LeakyReLU | 0
354
+ 289 | layers.19 | CNNBlock | 1.2 M
355
+ 290 | layers.19.conv | Conv2d | 1.2 M
356
+ 291 | layers.19.bn | BatchNorm2d | 1.0 K
357
+ 292 | layers.19.leaky | LeakyReLU | 0
358
+ 293 | layers.20 | ResidualBlock | 1.3 M
359
+ 294 | layers.20.layers | ModuleList | 1.3 M
360
+ 295 | layers.20.layers.0 | Sequential | 1.3 M
361
+ 296 | layers.20.layers.0.0 | CNNBlock | 131 K
362
+ 297 | layers.20.layers.0.0.conv | Conv2d | 131 K
363
+ 298 | layers.20.layers.0.0.bn | BatchNorm2d | 512
364
+ 299 | layers.20.layers.0.0.leaky | LeakyReLU | 0
365
+ 300 | layers.20.layers.0.1 | CNNBlock | 1.2 M
366
+ 301 | layers.20.layers.0.1.conv | Conv2d | 1.2 M
367
+ 302 | layers.20.layers.0.1.bn | BatchNorm2d | 1.0 K
368
+ 303 | layers.20.layers.0.1.leaky | LeakyReLU | 0
369
+ 304 | layers.21 | CNNBlock | 131 K
370
+ 305 | layers.21.conv | Conv2d | 131 K
371
+ 306 | layers.21.bn | BatchNorm2d | 512
372
+ 307 | layers.21.leaky | LeakyReLU | 0
373
+ 308 | layers.22 | ScalePrediction | 1.2 M
374
+ 309 | layers.22.pred | Sequential | 1.2 M
375
+ 310 | layers.22.pred.0 | CNNBlock | 1.2 M
376
+ 311 | layers.22.pred.0.conv | Conv2d | 1.2 M
377
+ 312 | layers.22.pred.0.bn | BatchNorm2d | 1.0 K
378
+ 313 | layers.22.pred.0.leaky | LeakyReLU | 0
379
+ 314 | layers.22.pred.1 | CNNBlock | 38.6 K
380
+ 315 | layers.22.pred.1.conv | Conv2d | 38.5 K
381
+ 316 | layers.22.pred.1.bn | BatchNorm2d | 150
382
+ 317 | layers.22.pred.1.leaky | LeakyReLU | 0
383
+ 318 | layers.23 | CNNBlock | 33.0 K
384
+ 319 | layers.23.conv | Conv2d | 32.8 K
385
+ 320 | layers.23.bn | BatchNorm2d | 256
386
+ 321 | layers.23.leaky | LeakyReLU | 0
387
+ 322 | layers.24 | Upsample | 0
388
+ 323 | layers.25 | CNNBlock | 49.4 K
389
+ 324 | layers.25.conv | Conv2d | 49.2 K
390
+ 325 | layers.25.bn | BatchNorm2d | 256
391
+ 326 | layers.25.leaky | LeakyReLU | 0
392
+ 327 | layers.26 | CNNBlock | 295 K
393
+ 328 | layers.26.conv | Conv2d | 294 K
394
+ 329 | layers.26.bn | BatchNorm2d | 512
395
+ 330 | layers.26.leaky | LeakyReLU | 0
396
+ 331 | layers.27 | ResidualBlock | 328 K
397
+ 332 | layers.27.layers | ModuleList | 328 K
398
+ 333 | layers.27.layers.0 | Sequential | 328 K
399
+ 334 | layers.27.layers.0.0 | CNNBlock | 33.0 K
400
+ 335 | layers.27.layers.0.0.conv | Conv2d | 32.8 K
401
+ 336 | layers.27.layers.0.0.bn | BatchNorm2d | 256
402
+ 337 | layers.27.layers.0.0.leaky | LeakyReLU | 0
403
+ 338 | layers.27.layers.0.1 | CNNBlock | 295 K
404
+ 339 | layers.27.layers.0.1.conv | Conv2d | 294 K
405
+ 340 | layers.27.layers.0.1.bn | BatchNorm2d | 512
406
+ 341 | layers.27.layers.0.1.leaky | LeakyReLU | 0
407
+ 342 | layers.28 | CNNBlock | 33.0 K
408
+ 343 | layers.28.conv | Conv2d | 32.8 K
409
+ 344 | layers.28.bn | BatchNorm2d | 256
410
+ 345 | layers.28.leaky | LeakyReLU | 0
411
+ 346 | layers.29 | ScalePrediction | 314 K
412
+ 347 | layers.29.pred | Sequential | 314 K
413
+ 348 | layers.29.pred.0 | CNNBlock | 295 K
414
+ 349 | layers.29.pred.0.conv | Conv2d | 294 K
415
+ 350 | layers.29.pred.0.bn | BatchNorm2d | 512
416
+ 351 | layers.29.pred.0.leaky | LeakyReLU | 0
417
+ 352 | layers.29.pred.1 | CNNBlock | 19.4 K
418
+ 353 | layers.29.pred.1.conv | Conv2d | 19.3 K
419
+ 354 | layers.29.pred.1.bn | BatchNorm2d | 150
420
+ 355 | layers.29.pred.1.leaky | LeakyReLU | 0
421
+ -------------------------------------------------------------------
422
+ 61.6 M Trainable params
423
+ 0 Non-trainable params
424
+ 61.6 M Total params
425
+ 246.506 Total estimated model params size (MB)
426
+ ```
427
+
428
+ ### LR Finder
429
+ ![image](https://github.com/RaviNaik/ERA-SESSION13/assets/23289802/a6d64f13-a7b7-4e17-abfc-3ec86e84b710)
430
+
431
+ ### Loss & Accuracy
432
+ **Training & Validation Loss:**
433
+ ![image](https://github.com/RaviNaik/ERA-SESSION13/assets/23289802/9391157e-a889-480d-b233-b72e86745245)
434
+
435
+ **Testing Accuracy:**
436
+ ```python
437
+ 0%| | 0/39 [00:00<?, ?it/s]
438
+ 3%|β–Ž | 1/39 [00:05<03:24, 5.37s/it]
439
+ 5%|β–Œ | 2/39 [00:11<03:32, 5.75s/it]
440
+ 8%|β–Š | 3/39 [00:16<03:14, 5.41s/it]
441
+ 10%|β–ˆ | 4/39 [00:21<03:06, 5.33s/it]
442
+ 13%|β–ˆβ–Ž | 5/39 [00:26<02:55, 5.17s/it]
443
+ 15%|β–ˆβ–Œ | 6/39 [00:31<02:50, 5.16s/it]
444
+ 18%|β–ˆβ–Š | 7/39 [00:36<02:43, 5.11s/it]
445
+ 21%|β–ˆβ–ˆ | 8/39 [00:42<02:48, 5.43s/it]
446
+ 23%|β–ˆβ–ˆβ–Ž | 9/39 [00:48<02:44, 5.47s/it]
447
+ 26%|β–ˆβ–ˆβ–Œ | 10/39 [00:54<02:41, 5.58s/it]
448
+ 28%|β–ˆβ–ˆβ–Š | 11/39 [00:59<02:36, 5.59s/it]
449
+ 31%|β–ˆβ–ˆβ–ˆ | 12/39 [01:05<02:35, 5.77s/it]
450
+ 33%|β–ˆβ–ˆβ–ˆβ–Ž | 13/39 [01:11<02:28, 5.70s/it]
451
+ 36%|β–ˆβ–ˆβ–ˆβ–Œ | 14/39 [01:16<02:15, 5.42s/it]
452
+ 38%|β–ˆβ–ˆβ–ˆβ–Š | 15/39 [01:21<02:07, 5.30s/it]
453
+ 41%|β–ˆβ–ˆβ–ˆβ–ˆ | 16/39 [01:26<02:02, 5.34s/it]
454
+ 44%|β–ˆβ–ˆβ–ˆβ–ˆβ–Ž | 17/39 [01:31<01:54, 5.23s/it]
455
+ 46%|β–ˆβ–ˆβ–ˆβ–ˆβ–Œ | 18/39 [01:36<01:49, 5.22s/it]
456
+ 49%|β–ˆβ–ˆβ–ˆβ–ˆβ–Š | 19/39 [01:42<01:43, 5.20s/it]
457
+ 51%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 20/39 [01:46<01:33, 4.94s/it]
458
+ 54%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 21/39 [01:50<01:23, 4.64s/it]
459
+ 56%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹ | 22/39 [01:54<01:14, 4.41s/it]
460
+ 59%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‰ | 23/39 [01:57<01:03, 3.96s/it]
461
+ 62%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 24/39 [02:00<00:54, 3.66s/it]
462
+ 64%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 25/39 [02:04<00:55, 3.94s/it]
463
+ 67%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹ | 26/39 [02:10<00:56, 4.38s/it]
464
+ 69%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‰ | 27/39 [02:14<00:53, 4.47s/it]
465
+ 72%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 28/39 [02:20<00:52, 4.77s/it]
466
+ 74%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 29/39 [02:25<00:50, 5.04s/it]
467
+ 77%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹ | 30/39 [02:31<00:47, 5.25s/it]
468
+ 79%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‰ | 31/39 [02:37<00:42, 5.36s/it]
469
+ 82%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 32/39 [02:42<00:38, 5.43s/it]
470
+ 85%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 33/39 [02:47<00:31, 5.24s/it]
471
+ 87%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹ | 34/39 [02:53<00:26, 5.29s/it]
472
+ 90%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‰ | 35/39 [02:58<00:21, 5.32s/it]
473
+ 92%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–| 36/39 [03:03<00:15, 5.23s/it]
474
+ 95%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–| 37/39 [03:08<00:10, 5.26s/it]
475
+ 97%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹| 38/39 [03:14<00:05, 5.32s/it]
476
+ 100%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 39/39 [03:17<00:00, 5.07s/it]
477
+ Class accuracy is: 81.601883%
478
+ No obj accuracy is: 97.991463%
479
+ Obj accuracy is: 75.976616%
480
+ ```
481
+ ### MAP Calculations
482
+ ```python
483
+ 0%| | 0/39 [00:00<?, ?it/s]
484
+ 3%|β–Ž | 1/39 [00:40<25:35, 40.40s/it]
485
+ 5%|β–Œ | 2/39 [01:24<26:05, 42.31s/it]
486
+ 8%|β–Š | 3/39 [02:01<24:02, 40.07s/it]
487
+ 10%|β–ˆ | 4/39 [02:40<23:04, 39.57s/it]
488
+ 13%|β–ˆβ–Ž | 5/39 [03:36<25:45, 45.46s/it]
489
+ 15%|β–ˆβ–Œ | 6/39 [04:20<24:45, 45.00s/it]
490
+ 18%|β–ˆβ–Š | 7/39 [05:03<23:37, 44.29s/it]
491
+ 21%|β–ˆβ–ˆ | 8/39 [05:47<22:55, 44.36s/it]
492
+ 23%|β–ˆβ–ˆβ–Ž | 9/39 [06:33<22:25, 44.84s/it]
493
+ 26%|β–ˆβ–ˆβ–Œ | 10/39 [07:06<19:54, 41.20s/it]
494
+ 28%|β–ˆβ–ˆβ–Š | 11/39 [07:58<20:45, 44.49s/it]
495
+ 31%|β–ˆβ–ˆβ–ˆ | 12/39 [08:36<19:10, 42.60s/it]
496
+ 33%|β–ˆβ–ˆβ–ˆβ–Ž | 13/39 [09:20<18:33, 42.81s/it]
497
+ 36%|β–ˆβ–ˆβ–ˆβ–Œ | 14/39 [10:01<17:43, 42.53s/it]
498
+ 38%|β–ˆβ–ˆβ–ˆβ–Š | 15/39 [10:42<16:49, 42.04s/it]
499
+ 41%|β–ˆβ–ˆβ–ˆβ–ˆ | 16/39 [11:25<16:10, 42.18s/it]
500
+ 44%|β–ˆβ–ˆβ–ˆβ–ˆβ–Ž | 17/39 [12:12<16:02, 43.73s/it]
501
+ 46%|β–ˆβ–ˆβ–ˆβ–ˆβ–Œ | 18/39 [12:56<15:20, 43.83s/it]
502
+ 49%|β–ˆβ–ˆβ–ˆβ–ˆβ–Š | 19/39 [13:36<14:12, 42.64s/it]
503
+ 51%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 20/39 [14:20<13:37, 43.04s/it]
504
+ 54%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 21/39 [14:58<12:27, 41.54s/it]
505
+ 56%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹ | 22/39 [15:43<12:01, 42.45s/it]
506
+ 59%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‰ | 23/39 [16:29<11:35, 43.49s/it]
507
+ 62%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 24/39 [17:13<10:55, 43.69s/it]
508
+ 64%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 25/39 [18:02<10:34, 45.29s/it]
509
+ 67%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹ | 26/39 [18:41<09:25, 43.53s/it]
510
+ 69%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‰ | 27/39 [19:26<08:45, 43.77s/it]
511
+ 72%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 28/39 [20:04<07:44, 42.22s/it]
512
+ 74%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 29/39 [20:45<06:56, 41.65s/it]
513
+ 77%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹ | 30/39 [21:32<06:30, 43.44s/it]
514
+ 79%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‰ | 31/39 [22:16<05:47, 43.46s/it]
515
+ 82%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 32/39 [22:52<04:49, 41.32s/it]
516
+ 85%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ– | 33/39 [23:36<04:13, 42.19s/it]
517
+ 87%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹ | 34/39 [24:18<03:29, 41.99s/it]
518
+ 90%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‰ | 35/39 [25:00<02:48, 42.17s/it]
519
+ 92%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–| 36/39 [25:46<02:09, 43.24s/it]
520
+ 95%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–| 37/39 [26:29<01:26, 43.24s/it]
521
+ 97%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‹| 38/39 [27:18<00:44, 44.74s/it]
522
+ 100%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 39/39 [27:46<00:00, 42.74s/it]
523
+ MAP: 0.43667954206466675
524
+ ```
525
+ ### Tensorboard Plots
526
+ **Training Loss vs Steps:** ![image](https://github.com/RaviNaik/ERA-SESSION13/assets/23289802/5cb753e0-377b-4d9f-a240-871270ed50db)
527
+
528
+ **Validation Loss vs Steps:**
529
+ (Info: Validation loss calculated every 10 epochs to save time, thats why the straight line)
530
+ ![image](https://github.com/RaviNaik/ERA-SESSION13/assets/23289802/7401c0aa-f7ff-4a5b-bab2-dbb5ebe0b400)
531
+
532
+ ### GradCAM Representations
533
+ EigenCAM is used to generate CAM representation, since usal gradient based method wont work with detection models like Yolo, FRCNN etc.
534
+ ![image](https://github.com/RaviNaik/ERA-SESSION13/assets/23289802/3e3917f1-c8d1-4c3f-a028-de1292575e0b)
535
+
536
+
537
+
538
+
markdown.py CHANGED
@@ -11,7 +11,7 @@ Github Link: https://github.com/RaviNaik/ERA-SESSION13/tree/main
11
  5. **Obj accuracy: 75.976616%**
12
  6. **MAP: 0.4366795**
13
 
14
- Model Link:
15
 
16
  """
17
 
 
11
  5. **Obj accuracy: 75.976616%**
12
  6. **MAP: 0.4366795**
13
 
14
+ Model Link: https://huggingface.co/spaces/RaviNaik/ERA-SESSION13/blob/main/model.ckpt
15
 
16
  """
17