infinite000 commited on
Commit
c1606c2
·
verified ·
1 Parent(s): 3ea23c8

Upload checkpoint-1035 with 0.9414 accuracy

Browse files
.gitattributes ADDED
@@ -0,0 +1 @@
 
 
1
+ model.safetensors filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ tags:
4
+ - image-classification
5
+ - dinov2
6
+ - roadwork-detection
7
+ - natix-subnet
8
+ ---
9
+
10
+ # DINOv2-Large Roadwork Detector
11
+
12
+ Fine-tuned DINOv2-large model for roadwork detection on Natix subnet.
13
+
14
+ ## Model Details
15
+
16
+ - **Base Model**: facebook/dinov2-large
17
+ - **Checkpoint**: checkpoint-1035
18
+ - **Submitted By**: 5HT5XkhAg9jTzJLedi16L7uXnMTAy5CCvJd1YjaUy39gsETG
19
+ - **Submission Time**: 2026-02-09 00:25:58
20
+
21
+ ## Performance Metrics
22
+
23
+ - **Accuracy**: 0.9414
24
+ - **Precision**: 0.9654
25
+ - **Recall**: 0.9616
26
+ - **F1 Score**: 0.9635
27
+
28
+ ## Usage
29
+
30
+ ```python
31
+ from transformers import AutoImageProcessor, AutoModelForImageClassification
32
+ from PIL import Image
33
+
34
+ processor = AutoImageProcessor.from_pretrained("YOUR_USERNAME/YOUR_REPO")
35
+ model = AutoModelForImageClassification.from_pretrained("YOUR_USERNAME/YOUR_REPO")
36
+
37
+ image = Image.open("path/to/image.jpg")
38
+ inputs = processor(images=image, return_tensors="pt")
39
+ outputs = model(**inputs)
40
+ predictions = outputs.logits.softmax(dim=-1)
41
+ ```
42
+
43
+ ## Training
44
+
45
+ Trained on Natix roadwork dataset using fine-tuning approach.
config.json ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "apply_layernorm": true,
3
+ "architectures": [
4
+ "Dinov2ForImageClassification"
5
+ ],
6
+ "attention_probs_dropout_prob": 0.0,
7
+ "drop_path_rate": 0.0,
8
+ "dtype": "float32",
9
+ "hidden_act": "gelu",
10
+ "hidden_dropout_prob": 0.0,
11
+ "hidden_size": 1024,
12
+ "image_size": 518,
13
+ "initializer_range": 0.02,
14
+ "layer_norm_eps": 1e-06,
15
+ "layerscale_value": 1.0,
16
+ "mlp_ratio": 4,
17
+ "model_type": "dinov2",
18
+ "num_attention_heads": 16,
19
+ "num_channels": 3,
20
+ "num_hidden_layers": 24,
21
+ "out_features": [
22
+ "stage24"
23
+ ],
24
+ "out_indices": [
25
+ 24
26
+ ],
27
+ "patch_size": 14,
28
+ "problem_type": "single_label_classification",
29
+ "qkv_bias": true,
30
+ "reshape_hidden_states": true,
31
+ "stage_names": [
32
+ "stem",
33
+ "stage1",
34
+ "stage2",
35
+ "stage3",
36
+ "stage4",
37
+ "stage5",
38
+ "stage6",
39
+ "stage7",
40
+ "stage8",
41
+ "stage9",
42
+ "stage10",
43
+ "stage11",
44
+ "stage12",
45
+ "stage13",
46
+ "stage14",
47
+ "stage15",
48
+ "stage16",
49
+ "stage17",
50
+ "stage18",
51
+ "stage19",
52
+ "stage20",
53
+ "stage21",
54
+ "stage22",
55
+ "stage23",
56
+ "stage24"
57
+ ],
58
+ "transformers_version": "5.1.0",
59
+ "use_cache": false,
60
+ "use_mask_token": true,
61
+ "use_swiglu_ffn": false
62
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fb62eb68f403ea620881907f01fda20b4d88bfa4a815f1015fd4cf39ed5ace66
3
+ size 1217542512
model_card.json ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model_name": "DINOv2-Large-Roadwork-Detector",
3
+ "description": "Fine-tuned DINOv2-large for roadwork detection",
4
+ "version": "1.0.0",
5
+ "checkpoint": "checkpoint-1035",
6
+ "submitted_by": "5HT5XkhAg9jTzJLedi16L7uXnMTAy5CCvJd1YjaUy39gsETG",
7
+ "submission_time": 1770596758,
8
+ "metrics": {
9
+ "accuracy": "0.9414",
10
+ "precision": "0.9654",
11
+ "recall": "0.9616",
12
+ "f1": "0.9635",
13
+ "epoch": 15.0
14
+ }
15
+ }
preprocessor_config.json ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "crop_size": {
3
+ "height": 224,
4
+ "width": 224
5
+ },
6
+ "do_center_crop": true,
7
+ "do_convert_rgb": true,
8
+ "do_normalize": true,
9
+ "do_rescale": true,
10
+ "do_resize": true,
11
+ "image_mean": [
12
+ 0.485,
13
+ 0.456,
14
+ 0.406
15
+ ],
16
+ "image_processor_type": "BitImageProcessor",
17
+ "image_std": [
18
+ 0.229,
19
+ 0.224,
20
+ 0.225
21
+ ],
22
+ "resample": 3,
23
+ "rescale_factor": 0.00392156862745098,
24
+ "size": {
25
+ "shortest_edge": 256
26
+ }
27
+ }
trainer_state.json ADDED
@@ -0,0 +1,354 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_global_step": 1035,
3
+ "best_metric": 0.9635036496350365,
4
+ "best_model_checkpoint": "/home/user/natix-mining-project/models/dinov2_roadwork/checkpoint-1035",
5
+ "epoch": 15.0,
6
+ "eval_steps": 500,
7
+ "global_step": 1035,
8
+ "is_hyper_param_search": false,
9
+ "is_local_process_zero": true,
10
+ "is_world_process_zero": true,
11
+ "log_history": [
12
+ {
13
+ "epoch": 0.7299270072992701,
14
+ "grad_norm": 16.808786392211914,
15
+ "learning_rate": 3.3333333333333335e-07,
16
+ "loss": 0.5872037124633789,
17
+ "step": 50
18
+ },
19
+ {
20
+ "epoch": 1.0,
21
+ "eval_accuracy": 0.8219616204690832,
22
+ "eval_f1": 0.8982327848872639,
23
+ "eval_loss": 0.4097755253314972,
24
+ "eval_precision": 0.8318284424379232,
25
+ "eval_recall": 0.976158940397351,
26
+ "eval_runtime": 87.0676,
27
+ "eval_samples_per_second": 10.773,
28
+ "eval_steps_per_second": 0.345,
29
+ "step": 69
30
+ },
31
+ {
32
+ "epoch": 1.4525547445255476,
33
+ "grad_norm": 26.81678581237793,
34
+ "learning_rate": 6.884057971014494e-07,
35
+ "loss": 0.420146598815918,
36
+ "step": 100
37
+ },
38
+ {
39
+ "epoch": 2.0,
40
+ "eval_accuracy": 0.908315565031983,
41
+ "eval_f1": 0.944372574385511,
42
+ "eval_loss": 0.23657475411891937,
43
+ "eval_precision": 0.922882427307206,
44
+ "eval_recall": 0.9668874172185431,
45
+ "eval_runtime": 89.7516,
46
+ "eval_samples_per_second": 10.451,
47
+ "eval_steps_per_second": 0.334,
48
+ "step": 138
49
+ },
50
+ {
51
+ "epoch": 2.1751824817518246,
52
+ "grad_norm": 17.34227180480957,
53
+ "learning_rate": 1.0434782608695653e-06,
54
+ "loss": 0.27175182342529297,
55
+ "step": 150
56
+ },
57
+ {
58
+ "epoch": 2.905109489051095,
59
+ "grad_norm": 19.6271915435791,
60
+ "learning_rate": 1.4057971014492755e-06,
61
+ "loss": 0.23565080642700195,
62
+ "step": 200
63
+ },
64
+ {
65
+ "epoch": 3.0,
66
+ "eval_accuracy": 0.9168443496801706,
67
+ "eval_f1": 0.9483443708609272,
68
+ "eval_loss": 0.20701788365840912,
69
+ "eval_precision": 0.9483443708609272,
70
+ "eval_recall": 0.9483443708609272,
71
+ "eval_runtime": 83.376,
72
+ "eval_samples_per_second": 11.25,
73
+ "eval_steps_per_second": 0.36,
74
+ "step": 207
75
+ },
76
+ {
77
+ "epoch": 3.627737226277372,
78
+ "grad_norm": 19.950403213500977,
79
+ "learning_rate": 1.7681159420289855e-06,
80
+ "loss": 0.2077177619934082,
81
+ "step": 250
82
+ },
83
+ {
84
+ "epoch": 4.0,
85
+ "eval_accuracy": 0.9275053304904051,
86
+ "eval_f1": 0.9554390563564875,
87
+ "eval_loss": 0.1865338534116745,
88
+ "eval_precision": 0.9455252918287937,
89
+ "eval_recall": 0.9655629139072848,
90
+ "eval_runtime": 95.1442,
91
+ "eval_samples_per_second": 9.859,
92
+ "eval_steps_per_second": 0.315,
93
+ "step": 276
94
+ },
95
+ {
96
+ "epoch": 4.350364963503649,
97
+ "grad_norm": 14.074359893798828,
98
+ "learning_rate": 2.130434782608696e-06,
99
+ "loss": 0.1941886329650879,
100
+ "step": 300
101
+ },
102
+ {
103
+ "epoch": 5.0,
104
+ "eval_accuracy": 0.9392324093816631,
105
+ "eval_f1": 0.9623762376237623,
106
+ "eval_loss": 0.1691393107175827,
107
+ "eval_precision": 0.9592105263157895,
108
+ "eval_recall": 0.9655629139072848,
109
+ "eval_runtime": 94.5554,
110
+ "eval_samples_per_second": 9.92,
111
+ "eval_steps_per_second": 0.317,
112
+ "step": 345
113
+ },
114
+ {
115
+ "epoch": 5.072992700729927,
116
+ "grad_norm": 15.120301246643066,
117
+ "learning_rate": 2.492753623188406e-06,
118
+ "loss": 0.18418676376342774,
119
+ "step": 350
120
+ },
121
+ {
122
+ "epoch": 5.802919708029197,
123
+ "grad_norm": 20.06453514099121,
124
+ "learning_rate": 2.847826086956522e-06,
125
+ "loss": 0.16181354522705077,
126
+ "step": 400
127
+ },
128
+ {
129
+ "epoch": 6.0,
130
+ "eval_accuracy": 0.9317697228144989,
131
+ "eval_f1": 0.9571619812583668,
132
+ "eval_loss": 0.17490684986114502,
133
+ "eval_precision": 0.9675236806495264,
134
+ "eval_recall": 0.9470198675496688,
135
+ "eval_runtime": 78.099,
136
+ "eval_samples_per_second": 12.01,
137
+ "eval_steps_per_second": 0.384,
138
+ "step": 414
139
+ },
140
+ {
141
+ "epoch": 6.525547445255475,
142
+ "grad_norm": 16.788759231567383,
143
+ "learning_rate": 3.2101449275362324e-06,
144
+ "loss": 0.15671510696411134,
145
+ "step": 450
146
+ },
147
+ {
148
+ "epoch": 7.0,
149
+ "eval_accuracy": 0.9157782515991472,
150
+ "eval_f1": 0.9460013670539986,
151
+ "eval_loss": 0.22261112928390503,
152
+ "eval_precision": 0.9774011299435028,
153
+ "eval_recall": 0.9165562913907285,
154
+ "eval_runtime": 92.5911,
155
+ "eval_samples_per_second": 10.131,
156
+ "eval_steps_per_second": 0.324,
157
+ "step": 483
158
+ },
159
+ {
160
+ "epoch": 7.248175182481752,
161
+ "grad_norm": 36.52346420288086,
162
+ "learning_rate": 3.5724637681159423e-06,
163
+ "loss": 0.16417793273925782,
164
+ "step": 500
165
+ },
166
+ {
167
+ "epoch": 7.978102189781022,
168
+ "grad_norm": 146.48744201660156,
169
+ "learning_rate": 3.9347826086956525e-06,
170
+ "loss": 0.13912958145141602,
171
+ "step": 550
172
+ },
173
+ {
174
+ "epoch": 8.0,
175
+ "eval_accuracy": 0.9381663113006397,
176
+ "eval_f1": 0.9617414248021108,
177
+ "eval_loss": 0.15613189339637756,
178
+ "eval_precision": 0.9579500657030223,
179
+ "eval_recall": 0.9655629139072848,
180
+ "eval_runtime": 125.8153,
181
+ "eval_samples_per_second": 7.455,
182
+ "eval_steps_per_second": 0.238,
183
+ "step": 552
184
+ },
185
+ {
186
+ "epoch": 8.700729927007298,
187
+ "grad_norm": 37.7802734375,
188
+ "learning_rate": 4.297101449275362e-06,
189
+ "loss": 0.12975292205810546,
190
+ "step": 600
191
+ },
192
+ {
193
+ "epoch": 9.0,
194
+ "eval_accuracy": 0.9402985074626866,
195
+ "eval_f1": 0.9627659574468085,
196
+ "eval_loss": 0.1664065420627594,
197
+ "eval_precision": 0.9666221628838452,
198
+ "eval_recall": 0.9589403973509933,
199
+ "eval_runtime": 93.79,
200
+ "eval_samples_per_second": 10.001,
201
+ "eval_steps_per_second": 0.32,
202
+ "step": 621
203
+ },
204
+ {
205
+ "epoch": 9.423357664233576,
206
+ "grad_norm": 39.47712707519531,
207
+ "learning_rate": 4.659420289855073e-06,
208
+ "loss": 0.12847793579101563,
209
+ "step": 650
210
+ },
211
+ {
212
+ "epoch": 10.0,
213
+ "eval_accuracy": 0.9402985074626866,
214
+ "eval_f1": 0.963302752293578,
215
+ "eval_loss": 0.16533519327640533,
216
+ "eval_precision": 0.953307392996109,
217
+ "eval_recall": 0.9735099337748344,
218
+ "eval_runtime": 92.125,
219
+ "eval_samples_per_second": 10.182,
220
+ "eval_steps_per_second": 0.326,
221
+ "step": 690
222
+ },
223
+ {
224
+ "epoch": 10.145985401459853,
225
+ "grad_norm": 13.382551193237305,
226
+ "learning_rate": 4.999997120818891e-06,
227
+ "loss": 0.12533601760864257,
228
+ "step": 700
229
+ },
230
+ {
231
+ "epoch": 10.875912408759124,
232
+ "grad_norm": 152.12037658691406,
233
+ "learning_rate": 4.999101429246326e-06,
234
+ "loss": 0.10754921913146973,
235
+ "step": 750
236
+ },
237
+ {
238
+ "epoch": 11.0,
239
+ "eval_accuracy": 0.9402985074626866,
240
+ "eval_f1": 0.9628154050464808,
241
+ "eval_loss": 0.15896020829677582,
242
+ "eval_precision": 0.9653794940079894,
243
+ "eval_recall": 0.9602649006622517,
244
+ "eval_runtime": 92.6027,
245
+ "eval_samples_per_second": 10.129,
246
+ "eval_steps_per_second": 0.324,
247
+ "step": 759
248
+ },
249
+ {
250
+ "epoch": 11.598540145985401,
251
+ "grad_norm": 7.632987022399902,
252
+ "learning_rate": 4.996606852480508e-06,
253
+ "loss": 0.08507664680480957,
254
+ "step": 800
255
+ },
256
+ {
257
+ "epoch": 12.0,
258
+ "eval_accuracy": 0.9275053304904051,
259
+ "eval_f1": 0.9562419562419563,
260
+ "eval_loss": 0.19671548902988434,
261
+ "eval_precision": 0.9299123904881101,
262
+ "eval_recall": 0.9841059602649007,
263
+ "eval_runtime": 79.1855,
264
+ "eval_samples_per_second": 11.846,
265
+ "eval_steps_per_second": 0.379,
266
+ "step": 828
267
+ },
268
+ {
269
+ "epoch": 12.321167883211679,
270
+ "grad_norm": 451.5773010253906,
271
+ "learning_rate": 4.992514986511825e-06,
272
+ "loss": 0.11187627792358398,
273
+ "step": 850
274
+ },
275
+ {
276
+ "epoch": 13.0,
277
+ "eval_accuracy": 0.9339019189765458,
278
+ "eval_f1": 0.9602053915275995,
279
+ "eval_loss": 0.20483285188674927,
280
+ "eval_precision": 0.9315068493150684,
281
+ "eval_recall": 0.990728476821192,
282
+ "eval_runtime": 84.5285,
283
+ "eval_samples_per_second": 11.097,
284
+ "eval_steps_per_second": 0.355,
285
+ "step": 897
286
+ },
287
+ {
288
+ "epoch": 13.043795620437956,
289
+ "grad_norm": 27.037843704223633,
290
+ "learning_rate": 4.986828449250792e-06,
291
+ "loss": 0.08265207290649414,
292
+ "step": 900
293
+ },
294
+ {
295
+ "epoch": 13.773722627737227,
296
+ "grad_norm": 58.419273376464844,
297
+ "learning_rate": 4.979550878853154e-06,
298
+ "loss": 0.08042881965637207,
299
+ "step": 950
300
+ },
301
+ {
302
+ "epoch": 14.0,
303
+ "eval_accuracy": 0.9349680170575693,
304
+ "eval_f1": 0.9605688429217841,
305
+ "eval_loss": 0.21270374953746796,
306
+ "eval_precision": 0.9381313131313131,
307
+ "eval_recall": 0.9841059602649007,
308
+ "eval_runtime": 92.7757,
309
+ "eval_samples_per_second": 10.11,
310
+ "eval_steps_per_second": 0.323,
311
+ "step": 966
312
+ },
313
+ {
314
+ "epoch": 14.496350364963504,
315
+ "grad_norm": 60.74350357055664,
316
+ "learning_rate": 4.97068693139226e-06,
317
+ "loss": 0.08053727149963379,
318
+ "step": 1000
319
+ },
320
+ {
321
+ "epoch": 15.0,
322
+ "eval_accuracy": 0.94136460554371,
323
+ "eval_f1": 0.9635036496350365,
324
+ "eval_loss": 0.18071264028549194,
325
+ "eval_precision": 0.9654255319148937,
326
+ "eval_recall": 0.9615894039735099,
327
+ "eval_runtime": 87.3638,
328
+ "eval_samples_per_second": 10.737,
329
+ "eval_steps_per_second": 0.343,
330
+ "step": 1035
331
+ }
332
+ ],
333
+ "logging_steps": 50,
334
+ "max_steps": 6900,
335
+ "num_input_tokens_seen": 0,
336
+ "num_train_epochs": 100,
337
+ "save_steps": 500,
338
+ "stateful_callbacks": {
339
+ "TrainerControl": {
340
+ "args": {
341
+ "should_epoch_stop": false,
342
+ "should_evaluate": false,
343
+ "should_log": false,
344
+ "should_save": true,
345
+ "should_training_stop": false
346
+ },
347
+ "attributes": {}
348
+ }
349
+ },
350
+ "total_flos": 1.80402939303552e+19,
351
+ "train_batch_size": 16,
352
+ "trial_name": null,
353
+ "trial_params": null
354
+ }