Create config.json
Browse files- config.json +67 -0
config.json
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model_type": "hv_acausal_memory",
|
| 3 |
+
"version": 1,
|
| 4 |
+
"dependencies": ["numpy"],
|
| 5 |
+
"primitive": {
|
| 6 |
+
"representation": "sparse ternary (±1/0)",
|
| 7 |
+
"default_D": 5000,
|
| 8 |
+
"default_nnz": 200,
|
| 9 |
+
"default_max_anchors": 2000,
|
| 10 |
+
"similarity": "weighted cosine"
|
| 11 |
+
},
|
| 12 |
+
"mechanisms": {
|
| 13 |
+
"forget_gate": {
|
| 14 |
+
"beta_base": 0.02,
|
| 15 |
+
"beta_max": 0.30,
|
| 16 |
+
"decay": "exp(-beta * dt) applied per step",
|
| 17 |
+
"pressure": "n_active / max_anchors"
|
| 18 |
+
},
|
| 19 |
+
"resurrection": {
|
| 20 |
+
"threshold": 0.3,
|
| 21 |
+
"boost": 0.5,
|
| 22 |
+
"trigger": "cosine similarity between reminder and dead anchor's key"
|
| 23 |
+
},
|
| 24 |
+
"acausal_prefetch": {
|
| 25 |
+
"partial_query_keep_fraction": "user-specified",
|
| 26 |
+
"similarity_restricted_to_known_dims": true
|
| 27 |
+
},
|
| 28 |
+
"retrieval_boost": 0.5
|
| 29 |
+
},
|
| 30 |
+
"capacity_bound": {
|
| 31 |
+
"formula": "N ≈ D / (2 log D)",
|
| 32 |
+
"value_at_D_5000": 290,
|
| 33 |
+
"applies_to": "noise-free recall",
|
| 34 |
+
"with_noise": "effective bound is larger"
|
| 35 |
+
},
|
| 36 |
+
"storage_estimate": {
|
| 37 |
+
"dense_bytes_per_anchor": "2 * D",
|
| 38 |
+
"sparse_bytes_per_anchor": "2 * nnz * 3",
|
| 39 |
+
"at_D_5000_nnz_200": {
|
| 40 |
+
"dense_kb_per_anchor": 9.77,
|
| 41 |
+
"sparse_kb_per_anchor": 1.17,
|
| 42 |
+
"anchors_in_187KB": 160
|
| 43 |
+
}
|
| 44 |
+
},
|
| 45 |
+
"benchmark_results": {
|
| 46 |
+
"noise_free_retrieval": 1.0,
|
| 47 |
+
"noise_p_0.2_retrieval": 1.0,
|
| 48 |
+
"noise_p_0.5_retrieval": 0.0,
|
| 49 |
+
"capacity_noise_free_N_4000": "degrades below 1.0",
|
| 50 |
+
"capacity_p_0.2_N_4000": 1.0,
|
| 51 |
+
"exact_resurrection_rate": 1.0,
|
| 52 |
+
"partial_resurrection_rate_keep_0.5": 0.7,
|
| 53 |
+
"acausal_top1_keep_0.5_no_noise": 1.0,
|
| 54 |
+
"checks_passed": 16,
|
| 55 |
+
"checks_total": 16
|
| 56 |
+
},
|
| 57 |
+
"source_notes": {
|
| 58 |
+
"issue": "XuanJi #70",
|
| 59 |
+
"title": "Evolutionary Plugin Ecology — Hyper-NSV module",
|
| 60 |
+
"claims_in_source": [
|
| 61 |
+
"187 KB memory footprint",
|
| 62 |
+
"acausal retrieval",
|
| 63 |
+
"forget-gate prevents nostalgia loop"
|
| 64 |
+
],
|
| 65 |
+
"this_implementation": "numpy-only reference with capacity, retrieval, and mechanism benchmarks"
|
| 66 |
+
}
|
| 67 |
+
}
|