anhtld commited on
Commit
f8bb346
·
verified ·
1 Parent(s): 39aa013

auto-sync 2026-07-03T00:30:47Z workspace

Browse files
workspace/cil/metrics.py CHANGED
@@ -206,6 +206,24 @@ def proxy_support_distance(
206
  )
207
 
208
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
209
  def negative_near_at_threshold(
210
  generated_tangents: Matrix,
211
  negative_tangents: Matrix,
@@ -228,6 +246,37 @@ def negative_near_at_threshold(
228
  return count / len(generated)
229
 
230
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
231
  def positives_closer_than_negatives(
232
  generated_tangents: Matrix,
233
  positive_tangents: Matrix,
 
206
  )
207
 
208
 
209
+ def mean_nearest_distance_to_set(
210
+ generated_tangents: Matrix,
211
+ reference_tangents: Matrix,
212
+ *,
213
+ k: int | None = None,
214
+ ) -> float | None:
215
+ """Mean nearest RMS-L2 distance from generated tangents to a reference set."""
216
+
217
+ generated = _prefix(generated_tangents, k)
218
+ if not generated or not reference_tangents:
219
+ return None
220
+ distances = [
221
+ min(_rms_l2(tangent, reference) for reference in reference_tangents)
222
+ for tangent in generated
223
+ ]
224
+ return sum(distances) / len(distances)
225
+
226
+
227
  def negative_near_at_threshold(
228
  generated_tangents: Matrix,
229
  negative_tangents: Matrix,
 
246
  return count / len(generated)
247
 
248
 
249
+ def candidate_diversity(generated_tangents: Matrix, *, k: int | None = None) -> float:
250
+ """Mean pairwise RMS-L2 distance among generated tangents."""
251
+
252
+ generated = _prefix(generated_tangents, k)
253
+ if len(generated) < 2:
254
+ return 0.0
255
+ distances = []
256
+ for left_index, left in enumerate(generated):
257
+ for right in generated[left_index + 1 :]:
258
+ distances.append(_rms_l2(left, right))
259
+ return sum(distances) / len(distances)
260
+
261
+
262
+ def collapse_rate(
263
+ generated_tangents: Matrix,
264
+ *,
265
+ k: int | None = None,
266
+ threshold: float = 1.0e-6,
267
+ ) -> float:
268
+ """Fraction of generated tangents collapsed onto the first proposal."""
269
+
270
+ if threshold < 0.0:
271
+ raise ValueError("threshold must be non-negative")
272
+ generated = _prefix(generated_tangents, k)
273
+ if not generated:
274
+ return 0.0
275
+ first = generated[0]
276
+ collapsed = sum(1 for tangent in generated if _rms_l2(first, tangent) <= threshold)
277
+ return collapsed / len(generated)
278
+
279
+
280
  def positives_closer_than_negatives(
281
  generated_tangents: Matrix,
282
  positive_tangents: Matrix,
workspace/data/cil_charts/test/charts_00000.npz CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:0cf3b1f4a0d9a0e77a7c46982368a494a03e5e720fe34a0a1ba229f34a555036
3
  size 6058720
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:92c57d778e4a61b29e57d7e848c828629efd34df3a1bed53137052c01a09c2be
3
  size 6058720
workspace/data/cil_charts/test/index.json CHANGED
@@ -15,7 +15,7 @@
15
  "wrong_direction": 410,
16
  "wrong_gripper": 410
17
  },
18
- "content_hash": "7409ed9e2a8c9f3515e23e14180ec51fbfd56536a59129ca759c4d855e257bf5",
19
  "dataset": "/scratch/knguy52/dovla/experiments/six_task_h16_collection",
20
  "deployment_candidate_excludes_expert": true,
21
  "deployment_clean": false,
@@ -433,9 +433,11 @@
433
  "fe9cc6e4934a28231d7c864c377b2a1b72e4da2b05bf70064db4c6199fe432b9",
434
  "ff354ad90b2deec831a173c06965f2dffc0ea3f17b056e3e5ad55763a2c52d93"
435
  ],
436
- "include_outcomes": false,
437
  "label_counts": {
438
- "hidden": 6560
 
 
439
  },
440
  "leakage_contract": {
441
  "deployment_must_not_read_outcomes": true,
@@ -453,7 +455,7 @@
453
  {
454
  "num_rows": 6560,
455
  "path": "charts_00000.npz",
456
- "sha256": "0cf3b1f4a0d9a0e77a7c46982368a494a03e5e720fe34a0a1ba229f34a555036"
457
  }
458
  ],
459
  "skip_counts": {},
 
15
  "wrong_direction": 410,
16
  "wrong_gripper": 410
17
  },
18
+ "content_hash": "1710ede7c73d8f72479fd63dd9941a0e8bb55211d3ea0267963abc9e7a043b91",
19
  "dataset": "/scratch/knguy52/dovla/experiments/six_task_h16_collection",
20
  "deployment_candidate_excludes_expert": true,
21
  "deployment_clean": false,
 
433
  "fe9cc6e4934a28231d7c864c377b2a1b72e4da2b05bf70064db4c6199fe432b9",
434
  "ff354ad90b2deec831a173c06965f2dffc0ea3f17b056e3e5ad55763a2c52d93"
435
  ],
436
+ "include_outcomes": true,
437
  "label_counts": {
438
+ "negative": 5179,
439
+ "neutral": 1222,
440
+ "positive": 159
441
  },
442
  "leakage_contract": {
443
  "deployment_must_not_read_outcomes": true,
 
455
  {
456
  "num_rows": 6560,
457
  "path": "charts_00000.npz",
458
+ "sha256": "92c57d778e4a61b29e57d7e848c828629efd34df3a1bed53137052c01a09c2be"
459
  }
460
  ],
461
  "skip_counts": {},
workspace/data/cil_charts/val/charts_00000.npz CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:f98dd7cef0fd1b7aa6afa79bf10da77139090e25bdd7a337ed46d88ba4ecff7f
3
  size 6190771
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:023fc16bb169c4c958c10e95859ed60bf6fa37d57098208e2ca6da8000a0cc4d
3
  size 6190771
workspace/data/cil_charts/val/index.json CHANGED
@@ -15,7 +15,7 @@
15
  "wrong_direction": 419,
16
  "wrong_gripper": 419
17
  },
18
- "content_hash": "eb4c66b3f5952b80ad4dc8eee2fbd04742688d5bcdaec341fbc851e170371f82",
19
  "dataset": "/scratch/knguy52/dovla/experiments/six_task_h16_collection",
20
  "deployment_candidate_excludes_expert": true,
21
  "deployment_clean": false,
@@ -442,9 +442,11 @@
442
  "fee98f221151bb980cdb862306da346bf3b0d9cec0b9cbdd9c2ba13ef635201a",
443
  "ff1366cc917bc6dcdc630665d80888e067a67153e0291eb502ce1c061598ceb9"
444
  ],
445
- "include_outcomes": false,
446
  "label_counts": {
447
- "hidden": 6704
 
 
448
  },
449
  "leakage_contract": {
450
  "deployment_must_not_read_outcomes": true,
@@ -462,7 +464,7 @@
462
  {
463
  "num_rows": 6704,
464
  "path": "charts_00000.npz",
465
- "sha256": "f98dd7cef0fd1b7aa6afa79bf10da77139090e25bdd7a337ed46d88ba4ecff7f"
466
  }
467
  ],
468
  "skip_counts": {},
 
15
  "wrong_direction": 419,
16
  "wrong_gripper": 419
17
  },
18
+ "content_hash": "fa0fe0e3881ee70ce91492445871614d01b3a47fc7c576659c53ff17ddee4e42",
19
  "dataset": "/scratch/knguy52/dovla/experiments/six_task_h16_collection",
20
  "deployment_candidate_excludes_expert": true,
21
  "deployment_clean": false,
 
442
  "fee98f221151bb980cdb862306da346bf3b0d9cec0b9cbdd9c2ba13ef635201a",
443
  "ff1366cc917bc6dcdc630665d80888e067a67153e0291eb502ce1c061598ceb9"
444
  ],
445
+ "include_outcomes": true,
446
  "label_counts": {
447
+ "negative": 5134,
448
+ "neutral": 1325,
449
+ "positive": 245
450
  },
451
  "leakage_contract": {
452
  "deployment_must_not_read_outcomes": true,
 
464
  {
465
  "num_rows": 6704,
466
  "path": "charts_00000.npz",
467
+ "sha256": "023fc16bb169c4c958c10e95859ed60bf6fa37d57098208e2ca6da8000a0cc4d"
468
  }
469
  ],
470
  "skip_counts": {},