feat(pist): validation + calibration harness

- pist_train.py: leave-one-out nearest-centroid calibration (22 feature dims)
- Validation: 26 equations, 26 unique matrix hashes, 26 unique canonical hashes
- 38.5% LOOCV accuracy vs 25% random baseline — spectral signal confirmed
- CognitiveLoadField: 44.4% (8/18), SignalShapedRouteCompiler: 33.3% (2/6)
- Separation ratio 1.007 — centroids overlap heavily (fold/cusp are adjacent in ADE)
- Feature diversity confirmed: 21/22 features carry variance
This commit is contained in:
Brandon Schneider 2026-05-26 01:49:21 -05:00
parent 96be7cdb97
commit c7eed520f9
5 changed files with 1000 additions and 13 deletions

View file

@ -0,0 +1,329 @@
#!/usr/bin/env python3
"""Calibration harness for the PIST spectral classifier.
Reads the validation report, extracts spectral feature vectors,
tests separability via leave-one-out nearest-centroid classification.
Does NOT produce a production model only a measured calibration signal.
"""
import json
import os
import sys
import argparse
from collections import defaultdict
from math import sqrt
FEATURE_NAMES = [
"zero_mode_proxy_count",
"rank_estimate",
"laplacian_zero_count",
"spectral_gap",
"crossing_density",
"strand_entropy",
]
EIGEN_LEN = 8 # symmetric_eigenvalues[0:8]
SINGULAR_LEN = 8 # singular_values[0:8]
def extract_vector(p: dict) -> list[float]:
"""Build a flat numeric vector from one prediction entry."""
v = []
for name in FEATURE_NAMES:
v.append(float(p.get(name, 0)))
# Eigenvalues
ev = p.get("eigenvalues", [])
for i in range(EIGEN_LEN):
v.append(float(ev[i]) if i < len(ev) else 0.0)
# Singular values (if present; zero-padded if absent)
sv = p.get("singular_values", [])
for i in range(SINGULAR_LEN):
v.append(float(sv[i]) if i < len(sv) else 0.0)
return v
def feature_dim() -> int:
return len(FEATURE_NAMES) + EIGEN_LEN + SINGULAR_LEN
def normalize(vectors: list[list[float]]) -> tuple[list[list[float]], list[float], list[float]]:
"""Z-score normalize each feature dimension."""
n = len(vectors)
if n == 0:
return vectors, [], []
dim = len(vectors[0])
means = [sum(v[i] for v in vectors) / n for i in range(dim)]
stds = [sqrt(sum((v[i] - means[i]) ** 2 for v in vectors) / max(n - 1, 1)) for i in range(dim)]
stds = [s if s > 1e-9 else 1.0 for s in stds] # avoid div-by-zero
normed = [[(v[i] - means[i]) / stds[i] for i in range(dim)] for v in vectors]
return normed, means, stds
def centroid(vectors: list[list[float]]) -> list[float]:
if not vectors:
return []
dim = len(vectors[0])
return [sum(v[i] for v in vectors) / len(vectors) for i in range(dim)]
def euclidean(a: list[float], b: list[float]) -> float:
return sqrt(sum((a[i] - b[i]) ** 2 for i in range(len(a))))
def nearest_centroid_classify(
vectors: list[list[float]], labels: list[str], centroids: dict[str, list[float]]
) -> list[str]:
results = []
for v in vectors:
best_label = None
best_dist = float("inf")
for label, c in centroids.items():
d = euclidean(v, c)
if d < best_dist:
best_dist = d
best_label = label
results.append(best_label)
return results
def main():
parser = argparse.ArgumentParser(
description="Calibration harness for PIST spectral classifier"
)
parser.add_argument(
"--input",
default="shared-data/rrc_pist_exact_validation.json",
help="Input validation report JSON",
)
parser.add_argument(
"--out",
default="shared-data/rrc_pist_training_report.json",
help="Output training report JSON",
)
parser.add_argument(
"--vectors",
default="shared-data/rrc_pist_feature_vectors.jsonl",
help="Output feature vectors as JSONL",
)
args = parser.parse_args()
# ── Load validation report ──
input_path = os.path.join(os.path.dirname(__file__), "../..", args.input)
with open(input_path) as f:
report = json.load(f)
predictions = report.get("predictions", [])
n = len(predictions)
if n == 0:
print("ERROR: No predictions found in input.", flush=True)
return 1
print(f"Loaded {n} labeled predictions", flush=True)
# ── Build feature vectors ──
vectors = []
labels = []
for p in predictions:
v = extract_vector(p)
vectors.append(v)
labels.append(p["ground_truth"])
# Normalize
normed, means, stds = normalize(vectors)
dim = feature_dim()
# ── Feature variance diagnostic ──
feature_var = {}
for i, name in enumerate(FEATURE_NAMES):
vals = [v[i] for v in vectors]
mean = sum(vals) / n
var = sum((x - mean) ** 2 for x in vals) / max(n - 1, 1)
uniq = len(set(vals))
feature_var[name] = {
"mean": round(mean, 4),
"variance": round(var, 4),
"unique": uniq,
"collapsed": uniq <= 1,
}
for band in ["eigenvalues", "singular_values"]:
for i in range(8):
idx = len(FEATURE_NAMES) + (0 if band == "eigenvalues" else 8) + i
vals = [v[idx] for v in vectors]
mean = sum(vals) / n
var = sum((x - mean) ** 2 for x in vals) / max(n - 1, 1)
uniq = len(set(round(x, 6) for x in vals))
feature_var[f"{band}[{i}]"] = {
"mean": round(mean, 4),
"variance": round(var, 4),
"unique": uniq,
"collapsed": uniq <= 1,
}
collapsed_dims = [k for k, v in feature_var.items() if v.get("collapsed")]
print(f" Feature dimensions: {dim}", flush=True)
print(f" Collapsed features: {len(collapsed_dims)} {collapsed_dims[:5]}", flush=True)
# ── Unique labels ──
unique_labels = sorted(set(labels))
print(f" Unique labels: {len(unique_labels)} {unique_labels}", flush=True)
# ── Label balance ──
label_counts = defaultdict(int)
for lbl in labels:
label_counts[lbl] += 1
print(f" Label distribution:", flush=True)
for lbl in sorted(label_counts.keys()):
print(f" {lbl:35s}: {label_counts[lbl]:3d}", flush=True)
# ── Leave-one-out nearest-centroid ──
correct = 0
confusion = defaultdict(lambda: defaultdict(int))
class_distances = defaultdict(list)
for i in range(n):
train_v = normed[:i] + normed[i + 1:]
train_l = labels[:i] + labels[i + 1:]
test_v = normed[i]
test_l = labels[i]
# Build centroids per class from training set
class_vectors = defaultdict(list)
for v, lbl in zip(train_v, train_l):
class_vectors[lbl].append(v)
centroids = {lbl: centroid(vecs) for lbl, vecs in class_vectors.items()}
# Classify test point
best_label = None
best_dist = float("inf")
for lbl, c in centroids.items():
d = euclidean(test_v, c)
if d < best_dist:
best_dist = d
best_label = lbl
class_distances[test_l].append(best_dist)
if best_label == test_l:
correct += 1
confusion[test_l][best_label] += 1
accuracy = correct / n if n > 0 else 0
print(f"\n Leave-one-out nearest-centroid accuracy: {correct}/{n} = {accuracy:.1%}",
flush=True)
# Per-class accuracy
print(f"\n Per-class:", flush=True)
print(f" {'Class':35s} {'N':>5} {'Correct':>8} {'Acc':>6}", flush=True)
for lbl in sorted(unique_labels):
total = label_counts[lbl]
corr = confusion[lbl][lbl]
print(f" {lbl:35s} {total:5d} {corr:8d} {(corr/total*100 if total else 0):5.1f}%",
flush=True)
# Confusion matrix
print(f"\n Confusion matrix (rows=truth, cols=pred):", flush=True)
header = f" {'':20s}" + "".join(f"{c[:16]:>16s}" for c in unique_labels)
print(header)
for gt in unique_labels:
row = f" {gt[:20]:20s}"
for p in unique_labels:
row += f"{confusion[gt][p]:>16d}"
print(row)
# Nearest same-class vs different-class distance
same_dists = []
diff_dists = []
for i in range(n):
for j in range(n):
if i == j:
continue
d = euclidean(normed[i], normed[j])
if labels[i] == labels[j]:
same_dists.append(d)
else:
diff_dists.append(d)
avg_same = sum(same_dists) / len(same_dists) if same_dists else 0
avg_diff = sum(diff_dists) / len(diff_dists) if diff_dists else 0
sep_ratio = avg_same / max(avg_diff, 1e-9)
print(f"\n Within-class mean distance: {avg_same:.4f}", flush=True)
print(f" Between-class mean distance: {avg_diff:.4f}", flush=True)
print(f" Separation ratio (same/diff): {sep_ratio:.4f}", flush=True)
# ── Class centroids ──
centroids: dict[str, list[float]] = {}
for lbl in unique_labels:
idxs = [i for i, l in enumerate(labels) if l == lbl]
centroids[lbl] = centroid([normed[i] for i in idxs])
# ── Build warnings ──
warnings = [
f"Only {n} labeled samples; classifier is calibration-only.",
"Do not promote model to production until full 278 labeled equations are available.",
]
if collapsed_dims:
warnings.append(
f"Collapsed features ({len(collapsed_dims)}): {collapsed_dims[:5]}. "
"These dimensions carry no discriminative power."
)
if accuracy < 0.3:
warnings.append("Accuracy below 30%. Spectral features may need richer extraction.")
elif accuracy > 0.7:
warnings.append(f"Accuracy {accuracy:.0%} is promising but overfits to {n} samples.")
# ── Output report ──
report = {
"n_samples": n,
"dimension": dim,
"method": "leave_one_out_nearest_centroid_v1",
"accuracy": round(accuracy, 4),
"unique_labels": unique_labels,
"label_distribution": dict(label_counts),
"per_class": {
lbl: {
"n": label_counts[lbl],
"correct": confusion[lbl][lbl],
"accuracy": round(confusion[lbl][lbl] / max(label_counts[lbl], 1), 4),
}
for lbl in unique_labels
},
"confusion_matrix": {gt: dict(preds) for gt, preds in confusion.items()},
"feature_variance": feature_var,
"collapsed_features": collapsed_dims,
"within_class_distance": round(avg_same, 4),
"between_class_distance": round(avg_diff, 4),
"separation_ratio": round(sep_ratio, 4),
"class_centroids": {lbl: [round(v, 4) for v in c] for lbl, c in centroids.items()},
"normalization": {
"means": [round(m, 4) for m in means],
"stds": [round(s, 4) for s in stds],
},
"warnings": warnings,
}
out_path = os.path.join(os.path.dirname(__file__), "../..", args.out)
os.makedirs(os.path.dirname(out_path), exist_ok=True)
with open(out_path, "w") as f:
json.dump(report, f, indent=2)
print(f"\nReport: {out_path}", flush=True)
# ── Output feature vectors as JSONL ──
vecs_path = os.path.join(os.path.dirname(__file__), "../..", args.vectors)
os.makedirs(os.path.dirname(vecs_path), exist_ok=True)
with open(vecs_path, "w") as f:
for p, v, l in zip(predictions, normed, labels):
row = {
"equation": p["equation"],
"label": l,
"features": {name: round(v[i], 6) for i, name in enumerate(FEATURE_NAMES)},
"eigenvalues": [round(v[len(FEATURE_NAMES) + i], 6) for i in range(EIGEN_LEN)],
"singular_values": [round(v[len(FEATURE_NAMES) + EIGEN_LEN + i], 6) for i in range(SINGULAR_LEN)],
"vector": [round(x, 6) for x in v],
}
f.write(json.dumps(row) + "\n")
print(f"Feature vectors: {vecs_path}", flush=True)
return 0 if accuracy > 0 else 1
if __name__ == "__main__":
sys.exit(main())

View file

@ -15,6 +15,15 @@ import sys
import tempfile
from collections import Counter, defaultdict
def require_path(obj, *path):
cur = obj
for key in path:
if key not in cur:
raise KeyError(f"Missing path: {'.'.join(path)} in result")
cur = cur[key]
return cur
PIST_DECOMPOSE = os.environ.get(
"PIST_DECOMPOSE_BIN",
"/home/allaun/.local/share/opencode/worktree/"
@ -103,22 +112,25 @@ def main():
errors.append(result)
continue
mhash = result["braid"]["matrix_hash"][:16]
chash = result["canonical_hash"][:16]
mhash = require_path(result, "braid", "matrix_hash")[:16]
chash = require_path(result, "canonical_hash")[:16]
proxy_label = require_path(result, "rrc_shape", "proxy", "label")
exact_label = require_path(result, "rrc_shape", "exact", "label")
zmp = require_path(result, "spectral", "zero_mode_proxy_count")
sym_ev = require_path(result, "spectral", "symmetric_eigenvalues") or [0.0] * 8
sv_raw = result.get("spectral", {}).get("singular_values")
if sv_raw is None:
singular_v = [0.0] * 8
else:
singular_v = [float(v) if v is not None else 0.0 for v in sv_raw]
lap_zero = require_path(result, "spectral", "laplacian_zero_count")
rank = require_path(result, "spectral", "rank_estimate")
cd = require_path(result, "braid", "crossing_density")
sent = require_path(result, "braid", "strand_entropy")
gap = require_path(result, "spectral", "symmetric_spectral_gap")
matrix_hashes[mhash] += 1
canonical_hashes[chash] += 1
proxy_label = result["rrc_shape"]["proxy"]["label"]
exact_label = result["rrc_shape"]["exact"]["label"]
zmp = result["spectral"]["zero_mode_proxy_count"]
sym_ev = result["spectral"]["symmetric_eigenvalues"]
lap_zero = result["spectral"]["laplacian_zero_count"]
rank = result["spectral"]["rank_estimate"]
cd = result["braid"]["crossing_density"]
sent = result["braid"]["strand_entropy"]
gap = result["spectral"].get("symmetric_spectral_gap", 0)
mhash = result["braid"]["matrix_hash"][:16]
print(f"{proxy_label:35s} | exact={exact_label:30s} | ZMP={zmp} | hash={mhash} | "
f"rank={rank} | lap_zero={lap_zero} | gap={gap:.3f}",
flush=True)
@ -130,6 +142,7 @@ def main():
"exact_pred": exact_label,
"zmp": zmp,
"eigenvalues": [round(v, 4) for v in sym_ev],
"singular_values": [round(v, 4) for v in singular_v],
"laplacian_zero_count": lap_zero,
"rank_estimate": rank,
"crossing_density": cd,

View file

@ -54,6 +54,16 @@
-0.25,
-0.5
],
"singular_values": [
0.6036,
0.5,
0.5,
0.25,
0.25,
0.25,
0.25,
0.1036
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.16071428571428573,
@ -78,6 +88,16 @@
-0.3559,
-0.4615
],
"singular_values": [
0.6016,
0.5187,
0.4615,
0.3559,
0.25,
0.25,
0.1689,
0.0282
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.16071428571428573,
@ -102,6 +122,16 @@
-0.3426,
-0.4681
],
"singular_values": [
0.6114,
0.4681,
0.3426,
0.1992,
0.0,
0.0,
0.0,
0.0
],
"laplacian_zero_count": 3,
"rank_estimate": 4,
"crossing_density": 0.10714285714285714,
@ -126,6 +156,16 @@
-0.4563,
-0.5328
],
"singular_values": [
0.7337,
0.5328,
0.4563,
0.3736,
0.25,
0.25,
0.25,
0.1319
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.19642857142857142,
@ -150,6 +190,16 @@
-0.4785,
-0.6208
],
"singular_values": [
0.8921,
0.6208,
0.4785,
0.319,
0.283,
0.1575,
0.0708,
0.0572
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.23214285714285715,
@ -174,6 +224,16 @@
-0.4539,
-0.5992
],
"singular_values": [
1.104,
0.5992,
0.4539,
0.2928,
0.2821,
0.1783,
0.138,
0.0
],
"laplacian_zero_count": 1,
"rank_estimate": 7,
"crossing_density": 0.2857142857142857,
@ -198,6 +258,16 @@
-0.3787,
-0.627
],
"singular_values": [
0.627,
0.627,
0.3787,
0.3787,
0.1612,
0.1612,
0.0,
0.0
],
"laplacian_zero_count": 1,
"rank_estimate": 6,
"crossing_density": 0.16071428571428573,
@ -222,6 +292,16 @@
-0.4274,
-0.6007
],
"singular_values": [
0.8634,
0.6007,
0.4274,
0.325,
0.2155,
0.18,
0.1591,
0.0343
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.21428571428571427,
@ -246,6 +326,16 @@
-0.25,
-0.4918
],
"singular_values": [
0.5743,
0.4918,
0.3733,
0.25,
0.25,
0.16,
0.1158,
0.0
],
"laplacian_zero_count": 2,
"rank_estimate": 7,
"crossing_density": 0.125,
@ -270,6 +360,16 @@
-0.3886,
-0.478
],
"singular_values": [
0.747,
0.478,
0.0,
0.3918,
0.3886,
0.3167,
0.1921,
0.1476
],
"laplacian_zero_count": 1,
"rank_estimate": 7,
"crossing_density": 0.17857142857142858,
@ -294,6 +394,16 @@
-0.3519,
-0.7616
],
"singular_values": [
0.861,
0.7616,
0.3519,
0.3186,
0.2008,
0.1688,
0.098,
0.0
],
"laplacian_zero_count": 1,
"rank_estimate": 7,
"crossing_density": 0.23214285714285715,
@ -318,6 +428,16 @@
-0.4045,
-0.5375
],
"singular_values": [
0.5731,
0.5375,
0.4045,
0.332,
0.2277,
0.1713,
0.1545,
0.0612
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.14285714285714285,
@ -342,6 +462,16 @@
-0.3378,
-0.7508
],
"singular_values": [
1.0067,
0.7508,
0.3378,
0.25,
0.25,
0.1919,
0.1445,
0.0345
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.26785714285714285,
@ -366,6 +496,16 @@
-0.3382,
-0.5451
],
"singular_values": [
0.8253,
0.5451,
0.3382,
0.3081,
0.25,
0.0,
0.0,
0.0
],
"laplacian_zero_count": 2,
"rank_estimate": 5,
"crossing_density": 0.17857142857142858,
@ -390,6 +530,16 @@
-0.4188,
-0.5
],
"singular_values": [
0.5536,
0.5,
0.4188,
0.25,
0.25,
0.1348,
0.0,
0.0
],
"laplacian_zero_count": 2,
"rank_estimate": 6,
"crossing_density": 0.125,
@ -414,6 +564,16 @@
-0.3397,
-0.4871
],
"singular_values": [
0.7484,
0.4871,
0.3397,
0.3156,
0.25,
0.1645,
0.1519,
0.0
],
"laplacian_zero_count": 2,
"rank_estimate": 7,
"crossing_density": 0.16071428571428573,
@ -438,6 +598,16 @@
-0.4471,
-0.5733
],
"singular_values": [
0.816,
0.5733,
0.4471,
0.2769,
0.2297,
0.1948,
0.0977,
0.0603
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.19642857142857142,
@ -462,6 +632,16 @@
-0.25,
-0.5339
],
"singular_values": [
0.5339,
0.5339,
0.5,
0.25,
0.25,
0.1655,
0.1655,
0.0
],
"laplacian_zero_count": 2,
"rank_estimate": 7,
"crossing_density": 0.14285714285714285,
@ -486,6 +666,16 @@
-0.4517,
-0.5
],
"singular_values": [
0.6451,
0.5,
0.4517,
0.3786,
0.2692,
0.1972,
0.0,
0.0
],
"laplacian_zero_count": 1,
"rank_estimate": 6,
"crossing_density": 0.16071428571428573,
@ -510,6 +700,16 @@
-0.25,
-0.6311
],
"singular_values": [
0.6311,
0.6311,
0.25,
0.25,
0.1981,
0.1981,
0.0,
0.0
],
"laplacian_zero_count": 2,
"rank_estimate": 6,
"crossing_density": 0.14285714285714285,
@ -534,6 +734,16 @@
-0.3471,
-0.5305
],
"singular_values": [
0.6486,
0.5305,
0.3471,
0.229,
0.0,
0.0,
0.0,
0.0
],
"laplacian_zero_count": 2,
"rank_estimate": 4,
"crossing_density": 0.125,
@ -558,6 +768,16 @@
-0.3634,
-0.5713
],
"singular_values": [
0.5713,
0.5713,
0.3634,
0.3634,
0.172,
0.172,
0.1094,
0.1094
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.14285714285714285,
@ -582,6 +802,16 @@
-0.4487,
-0.5382
],
"singular_values": [
0.8268,
0.5382,
0.4487,
0.3888,
0.2703,
0.25,
0.1865,
0.0624
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.21428571428571427,
@ -606,6 +836,16 @@
-0.4398,
-0.5617
],
"singular_values": [
0.9383,
0.5617,
0.4398,
0.3086,
0.283,
0.2005,
0.1387,
0.0271
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.23214285714285715,
@ -630,6 +870,16 @@
-0.45,
-0.6437
],
"singular_values": [
0.9877,
0.6437,
0.45,
0.3993,
0.25,
0.1822,
0.1442,
0.0813
],
"laplacian_zero_count": 1,
"rank_estimate": 8,
"crossing_density": 0.26785714285714285,
@ -654,6 +904,16 @@
-0.3643,
-0.5898
],
"singular_values": [
0.7388,
0.5898,
0.3643,
0.3297,
0.2331,
0.1858,
0.1616,
0.0
],
"laplacian_zero_count": 1,
"rank_estimate": 7,
"crossing_density": 0.17857142857142858,

View file

@ -0,0 +1,26 @@
{"equation": "Equation", "label": "RRC shape", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": -1.49541, "crossing_density": -0.437076, "strand_entropy": 0.581816}, "eigenvalues": [-0.861383, 1.957796, 1.108202, -2.09609, -1.674705, -0.412367, 1.786534, 0.810478], "singular_values": [-0.861383, -0.86341, 1.102175, -1.061587, 0.284742, 1.039763, 1.745079, 1.465319], "vector": [0.0, 0.811107, -0.616381, -1.49541, -0.437076, 0.581816, -0.861383, 1.957796, 1.108202, -2.09609, -1.674705, -0.412367, 1.786534, 0.810478, -0.861383, -0.86341, 1.102175, -1.061587, 0.284742, 1.039763, 1.745079, 1.465319]}
{"equation": "---", "label": "---", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": -1.599452, "crossing_density": -0.437076, "strand_entropy": 0.604336}, "eigenvalues": [-0.873929, 2.186306, -0.031623, 0.222988, -1.674705, -0.412367, 0.289063, 1.306527], "singular_values": [-0.873929, -0.61541, 0.7184, 0.783026, 0.284742, 1.039763, 0.723742, -0.17187], "vector": [0.0, 0.811107, -0.616381, -1.599452, -0.437076, 0.604336, -0.873929, 2.186306, -0.031623, 0.222988, -1.674705, -0.412367, 0.289063, 1.306527, -0.873929, -0.61541, 0.7184, 0.783026, 0.284742, 1.039763, 0.723742, -0.17187]}
{"equation": "bandwidth_adjusted_threshold", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": -2.433321, "laplacian_zero_count": 2.944929, "spectral_gap": 0.055675, "crossing_density": -1.536816, "strand_entropy": -3.14349}, "eigenvalues": [-0.812453, -1.717912, -2.405438, -0.273203, 1.321766, 2.793455, 0.477131, 1.22149], "singular_values": [-0.812453, -1.28647, -0.466818, -1.946443, -2.875272, -2.307832, -1.403309, -0.784187], "vector": [0.0, -2.433321, 2.944929, 0.055675, -1.536816, -3.14349, -0.812453, -1.717912, -2.405438, -0.273203, 1.321766, 2.793455, 0.477131, 1.22149, -0.812453, -1.28647, -0.466818, -1.946443, -2.875272, -2.307832, -1.403309, -0.784187]}
{"equation": "bandwidth_overflow", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": -0.20619, "crossing_density": 0.296084, "strand_entropy": 0.605085}, "eigenvalues": [-0.045262, 0.413216, 1.108202, 2.047635, -1.674705, -0.412367, -1.130636, 0.38787], "singular_values": [-0.045262, -0.428415, 0.666565, 1.091332, 0.284742, 1.039763, 1.745079, 2.079808], "vector": [0.0, 0.811107, -0.616381, -0.20619, 0.296084, 0.605085, -0.045262, 0.413216, 1.108202, 2.047635, -1.674705, -0.412367, -1.130636, 0.38787, -0.045262, -0.428415, 0.666565, 1.091332, 0.284742, 1.039763, 1.745079, 2.079808]}
{"equation": "effective_cognitive_load", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": 0.863887, "crossing_density": 1.029244, "strand_entropy": 0.605085}, "eigenvalues": [0.948385, -0.253983, -0.191845, 0.972554, 0.636174, -0.835536, -1.444553, -0.745957], "singular_values": [0.948385, 0.738645, 0.887859, 0.140285, 0.701863, -0.198847, -0.511686, 0.457818], "vector": [0.0, 0.811107, -0.616381, 0.863887, 1.029244, 0.605085, 0.948385, -0.253983, -0.191845, 0.972554, 0.636174, -0.835536, -1.444553, -0.745957, 0.948385, 0.738645, 0.887859, 0.140285, 0.701863, -0.198847, -0.511686, 0.457818]}
{"equation": "emotional_gate", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.0, "laplacian_zero_count": -0.616381, "spectral_gap": 2.114405, "crossing_density": 2.128983, "strand_entropy": 0.605085}, "eigenvalues": [2.277638, -0.704893, -0.465909, -0.273203, -0.815317, -0.961204, -1.096699, -0.467654], "singular_values": [2.277638, 0.452185, 0.642642, -0.316078, 0.690487, 0.079673, 0.334601, -0.784187], "vector": [0.0, 0.0, -0.616381, 2.114405, 2.128983, 0.605085, 2.277638, -0.704893, -0.465909, -0.273203, -0.815317, -0.961204, -1.096699, -0.467654, 2.277638, 0.452185, 0.642642, -0.316078, 0.690487, 0.079673, 0.334601, -0.784187]}
{"equation": "emotional_load", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": -0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": -0.768119, "crossing_density": -0.437076, "strand_entropy": 0.605054}, "eigenvalues": [-0.714594, 0.475537, -0.139843, -0.273203, 1.321766, 0.726341, -0.033339, -0.82584], "singular_values": [-0.714594, 0.82087, -0.106966, 1.180166, -0.837695, -0.149303, -1.403309, -0.784187], "vector": [0.0, -0.811107, -0.616381, -0.768119, -0.437076, 0.605054, -0.714594, 0.475537, -0.139843, -0.273203, 1.321766, 0.726341, -0.033339, -0.82584, -0.714594, 0.82087, -0.106966, 1.180166, -0.837695, -0.149303, -1.403309, -0.784187]}
{"equation": "emotional_offload", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": 0.689981, "crossing_density": 0.662664, "strand_entropy": 0.605085}, "eigenvalues": [0.768349, -0.180665, 0.124383, 0.33032, -0.585188, 0.030036, -0.721977, -0.486981], "singular_values": [0.768349, 0.472078, 0.378485, 0.244796, -0.15134, 0.102436, 0.600325, -0.039418], "vector": [0.0, 0.811107, -0.616381, 0.689981, 0.662664, 0.605085, 0.768349, -0.180665, 0.124383, 0.33032, -0.585188, 0.030036, -0.721977, -0.486981, 0.768349, 0.472078, 0.378485, 0.244796, -0.15134, 0.102436, 0.600325, -0.039418]}
{"equation": "historical_emotional_barrier", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.0, "laplacian_zero_count": 1.164274, "spectral_gap": -1.006361, "crossing_density": -1.170236, "strand_entropy": -1.135121}, "eigenvalues": [-1.045182, 0.40955, -0.156708, -0.273203, -0.066199, -0.412367, 1.786534, 0.91613], "singular_values": [-1.045182, -0.972159, -0.160795, -1.061587, 0.284742, -0.165371, 0.055024, -0.784187], "vector": [0.0, 0.0, 1.164274, -1.006361, -1.170236, -1.135121, -1.045182, 0.40955, -0.156708, -0.273203, -0.066199, -0.412367, 1.786534, 0.91613, -1.045182, -0.972159, -0.160795, -1.061587, 0.284742, -0.165371, 0.055024, -0.784187]}
{"equation": "historical_emotional_temperature", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.0, "laplacian_zero_count": -0.616381, "spectral_gap": -0.230316, "crossing_density": -0.070496, "strand_entropy": 0.605053}, "eigenvalues": [0.038169, 0.635616, 0.294443, -0.273203, -0.44735, -1.267681, -0.173329, 1.093935], "singular_values": [0.038169, -1.155175, -3.881921, 1.408348, 2.036653, 1.932901, 1.015912, 2.420708], "vector": [0.0, 0.0, -0.616381, -0.230316, -0.070496, 0.605053, 0.038169, 0.635616, 0.294443, -0.273203, -0.44735, -1.267681, -0.173329, 1.093935, 0.038169, -1.155175, -3.881921, 1.408348, 2.036653, 1.932901, 1.015912, 2.420708]}
{"equation": "historical_offload_efficiency", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.0, "laplacian_zero_count": -0.616381, "spectral_gap": 0.710086, "crossing_density": 1.029244, "strand_entropy": 0.605085}, "eigenvalues": [0.753294, -0.258871, 0.416718, -0.273203, 0.14715, 0.628884, 0.345625, -2.56008], "singular_values": [0.753294, 2.605941, -0.374114, 0.133318, -0.337149, -0.047536, -0.169141, -0.784187], "vector": [0.0, 0.0, -0.616381, 0.710086, 1.029244, 0.605085, 0.753294, -0.258871, 0.416718, -0.273203, 0.14715, 0.628884, 0.345625, -2.56008, 0.753294, 2.605941, -0.374114, 0.133318, -0.337149, -0.047536, -0.169141, -0.784187]}
{"equation": "overflow_gate", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": -0.80481, "crossing_density": -0.803656, "strand_entropy": 0.605082}, "eigenvalues": [-1.05271, -0.095126, 0.002108, 2.445292, 0.58823, -0.126408, -0.398162, 0.327313], "singular_values": [-1.05271, -0.366083, 0.150213, 0.366725, 0.002868, -0.01406, 0.542395, 0.544672], "vector": [0.0, 0.811107, -0.616381, -0.80481, -0.803656, 0.605082, -1.05271, -0.095126, 0.002108, 2.445292, 0.58823, -0.126408, -0.398162, 0.327313, -1.05271, -0.366083, 0.150213, 0.366725, 0.002868, -0.01406, 0.542395, 0.544672]}
{"equation": "raw_cognitive_load", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": 1.7872, "crossing_density": 1.762403, "strand_entropy": 0.605085}, "eigenvalues": [1.667273, -1.097148, 0.291632, 0.33384, -0.410194, -0.412367, 0.545005, -2.420929], "singular_values": [1.667273, 2.462711, -0.514665, -1.061587, 0.284742, 0.261782, 0.416459, -0.035075], "vector": [0.0, 0.811107, -0.616381, 1.7872, 1.762403, 0.605085, 1.667273, -1.097148, 0.291632, 0.33384, -0.410194, -0.412367, 0.545005, -2.420929, 1.667273, 2.462711, -0.514665, -1.061587, 0.284742, 0.261782, 0.416459, -0.035075]}
{"equation": "residual_stress", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": -1.622214, "laplacian_zero_count": 1.164274, "spectral_gap": 0.583425, "crossing_density": -0.070496, "strand_entropy": -1.134869}, "eigenvalues": [0.529347, -0.387179, -2.405438, -0.273203, 1.321766, -0.412367, 0.539348, 0.229392], "singular_values": [0.529347, -0.265292, -0.510678, -0.049576, 0.284742, -2.307832, -1.403309, -0.784187], "vector": [0.0, -1.622214, 1.164274, 0.583425, -0.070496, -1.134869, 0.529347, -0.387179, -2.405438, -0.273203, 1.321766, -0.412367, 0.539348, 0.229392, 0.529347, -0.265292, -0.510678, -0.049576, 0.284742, -2.307832, -1.403309, -0.784187]}
{"equation": "threshold", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": -0.811107, "laplacian_zero_count": 1.164274, "spectral_gap": -0.49017, "crossing_density": -1.170236, "strand_entropy": -1.134865}, "eigenvalues": [-1.175034, -1.097148, 1.108202, -0.273203, 1.321766, 1.064876, -0.60037, 0.810478], "singular_values": [-1.175034, -0.86341, 0.292758, -1.061587, 0.284742, -0.502809, -1.403309, -0.784187], "vector": [0.0, -0.811107, 1.164274, -0.49017, -1.170236, -1.134865, -1.175034, -1.097148, 1.108202, -0.273203, 1.321766, 1.064876, -0.60037, 0.810478, -1.175034, -0.86341, 0.292758, -1.061587, 0.284742, -0.502809, -1.403309, -0.784187]}
{"equation": "total_protective_load", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.0, "laplacian_zero_count": 1.164274, "spectral_gap": 0.159214, "crossing_density": -0.437076, "strand_entropy": -1.134865}, "eigenvalues": [0.046951, -0.295531, -0.093463, -0.273203, -0.498889, -0.412367, 0.518138, 0.976687], "singular_values": [0.046951, -1.034491, -0.495726, 0.081063, 0.284742, -0.105114, 0.509651, -0.784187], "vector": [0.0, 0.0, 1.164274, 0.159214, -0.437076, -1.134865, 0.046951, -0.295531, -0.093463, -0.273203, -0.498889, -0.412367, 0.518138, 0.976687, 0.046951, -1.034491, -0.495726, 0.081063, 0.284742, -0.105114, 0.509651, -0.784187]}
{"equation": "trauma_adjusted_emotional_barrier", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": 0.693499, "crossing_density": 0.296084, "strand_entropy": 0.605085}, "eigenvalues": [0.471007, -0.768436, 0.33239, 0.787802, 0.150746, -0.152055, -1.000544, -0.133948], "singular_values": [0.471007, 0.108698, 0.574858, -0.593031, 0.028148, 0.300614, -0.172919, 0.52513], "vector": [0.0, 0.811107, -0.616381, 0.693499, 0.296084, 0.605085, 0.471007, -0.768436, 0.33239, 0.787802, 0.150746, -0.152055, -1.000544, -0.133948, 0.471007, 0.108698, 0.574858, -0.593031, 0.028148, 0.300614, -0.172919, 0.52513]}
{"equation": "trauma_adjusted_emotional_temperature", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.0, "laplacian_zero_count": 1.164274, "spectral_gap": -1.845735, "crossing_density": -0.803656, "strand_entropy": -0.911985}, "eigenvalues": [-1.298612, 1.957796, -0.079408, -0.273203, -0.661897, -0.412367, 1.786534, 0.373697], "singular_values": [-1.298612, -0.413827, 1.102175, -1.061587, 0.284742, -0.091724, 0.680924, -0.784187], "vector": [0.0, 0.0, 1.164274, -1.845735, -0.803656, -0.911985, -1.298612, 1.957796, -0.079408, -0.273203, -0.661897, -0.412367, 1.786534, 0.373697, -1.298612, -0.413827, 1.102175, -1.061587, 0.284742, -0.091724, 0.680924, -0.784187]}
{"equation": "trauma_adjusted_offload_efficiency", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": -0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": -0.676139, "crossing_density": -0.437076, "strand_entropy": 0.605078}, "eigenvalues": [-0.601052, 0.474315, 0.366121, -0.273203, 1.321766, -0.658575, -1.06559, 0.810478], "singular_values": [-0.601052, -0.86341, 0.620712, 1.178424, 0.527431, 0.332751, -1.403309, -0.784187], "vector": [0.0, -0.811107, -0.616381, -0.676139, -0.437076, 0.605078, -0.601052, 0.474315, 0.366121, -0.273203, 1.321766, -0.658575, -1.06559, 0.810478, -0.601052, -0.86341, 0.620712, 1.178424, 0.527431, 0.332751, -1.403309, -0.784187]}
{"equation": "trauma_adjusted_threshold", "label": "CognitiveLoadField", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": -0.811107, "laplacian_zero_count": 1.164274, "spectral_gap": -0.10064, "crossing_density": -0.803656, "strand_entropy": -1.134865}, "eigenvalues": [-0.688874, -1.097148, 0.37877, -0.273203, 1.321766, 0.253161, 1.786534, -0.878666], "singular_values": [-0.688874, 0.875244, -1.389873, -1.061587, -0.371277, 0.344802, -1.403309, -0.784187], "vector": [0.0, -0.811107, 1.164274, -0.10064, -0.803656, -1.134865, -0.688874, -1.097148, 0.37877, -0.273203, 1.321766, 0.253161, 1.786534, -0.878666, -0.688874, 0.875244, -1.389873, -1.061587, -0.371277, 0.344802, -1.403309, -0.784187]}
{"equation": "core_equations", "label": "SignalShapedRouteCompiler", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": -2.433321, "laplacian_zero_count": 1.164274, "spectral_gap": 0.092869, "crossing_density": -1.170236, "strand_entropy": -1.134865}, "eigenvalues": [-0.579096, -1.353763, -2.405438, -0.273203, 1.321766, 2.793455, 0.413499, 0.417504], "singular_values": [-0.579096, -0.458918, -0.421961, -1.427374, -2.875272, -2.307832, -1.403309, -0.784187], "vector": [0.0, -2.433321, 1.164274, 0.092869, -1.170236, -1.134865, -0.579096, -1.353763, -2.405438, -0.273203, 1.321766, 2.793455, 0.413499, 0.417504, -0.579096, -0.458918, -0.421961, -1.427374, -2.875272, -2.307832, -1.403309, -0.784187]}
{"equation": "field_mapping", "label": "SignalShapedRouteCompiler", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": -0.970675, "crossing_density": -0.803656, "strand_entropy": 0.60257}, "eigenvalues": [-1.064001, 0.288575, 0.011946, 1.651738, 0.010511, 0.587849, 0.18301, -0.108179], "singular_values": [-1.064001, 0.082174, -0.25948, 0.913664, -0.701183, -0.004687, -0.025575, 1.591257], "vector": [0.0, 0.811107, -0.616381, -0.970675, -0.803656, 0.60257, -1.064001, 0.288575, 0.011946, 1.651738, 0.010511, 0.587849, 0.18301, -0.108179, -1.064001, 0.082174, -0.25948, 0.913664, -0.701183, -0.004687, -0.025575, 1.591257]}
{"equation": "source_domain", "label": "SignalShapedRouteCompiler", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": 0.185351, "crossing_density": 0.662664, "strand_entropy": 0.605085}, "eigenvalues": [0.538756, 0.598957, 1.39351, -1.371158, -0.913601, -0.412367, -1.023169, 0.318294], "singular_values": [0.538756, -0.3568, 0.590807, 1.356092, 0.541335, 1.039763, 0.945388, 0.570728], "vector": [0.0, 0.811107, -0.616381, 0.185351, 0.662664, 0.605085, 0.538756, 0.598957, 1.39351, -1.371158, -0.913601, -0.412367, -1.023169, 0.318294, 0.538756, -0.3568, 0.590807, 1.356092, 0.541335, 1.039763, 0.945388, 0.570728]}
{"equation": "target_domain", "label": "SignalShapedRouteCompiler", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": 1.277543, "crossing_density": 1.029244, "strand_entropy": 0.605085}, "eigenvalues": [1.238198, -0.693895, 0.412501, 0.203633, -0.340676, -1.163812, -0.897319, 0.015511], "singular_values": [1.238198, -0.045142, 0.50209, -0.040866, 0.701863, 0.376939, 0.343417, -0.195754], "vector": [0.0, 0.811107, -0.616381, 1.277543, 1.029244, 0.605085, 1.238198, -0.693895, 0.412501, 0.203633, -0.340676, -1.163812, -0.897319, 0.015511, 1.238198, -0.045142, 0.50209, -0.040866, 0.701863, 0.376939, 0.343417, -0.195754]}
{"equation": "heat_loss", "label": "SignalShapedRouteCompiler", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.811107, "laplacian_zero_count": -0.616381, "spectral_gap": 0.940788, "crossing_density": 1.762403, "strand_entropy": 0.605085}, "eigenvalues": [1.548085, 0.727265, 0.155303, -1.703712, -0.406598, -0.412367, -1.041551, -1.04101], "singular_values": [1.548085, 1.042346, 0.603766, 1.538986, 0.284742, 0.131895, 0.412681, 0.981111], "vector": [0.0, 0.811107, -0.616381, 0.940788, 1.762403, 0.605085, 1.548085, 0.727265, 0.155303, -1.703712, -0.406598, -0.412367, -1.041551, -1.04101, 1.548085, 1.042346, 0.603766, 1.538986, 0.284742, 0.131895, 0.412681, 0.981111]}
{"equation": "magnetic_projection", "label": "SignalShapedRouteCompiler", "features": {"zero_mode_proxy_count": 0.0, "rank_estimate": 0.0, "laplacian_zero_count": -0.616381, "spectral_gap": 0.040094, "crossing_density": -0.070496, "strand_entropy": 0.605085}, "eigenvalues": [-0.01327, -0.123232, 0.87068, -0.273203, -0.615152, 0.410888, 0.170283, -0.346541], "singular_values": [-0.01327, 0.327522, -0.250508, 0.326663, 0.071125, 0.180101, 0.631809, -0.784187], "vector": [0.0, 0.0, -0.616381, 0.040094, -0.070496, 0.605085, -0.01327, -0.123232, 0.87068, -0.273203, -0.615152, 0.410888, 0.170283, -0.346541, -0.01327, 0.327522, -0.250508, 0.326663, 0.071125, 0.180101, 0.631809, -0.784187]}

View file

@ -0,0 +1,359 @@
{
"n_samples": 26,
"dimension": 22,
"method": "leave_one_out_nearest_centroid_v1",
"accuracy": 0.3846,
"unique_labels": [
"---",
"CognitiveLoadField",
"RRC shape",
"SignalShapedRouteCompiler"
],
"label_distribution": {
"RRC shape": 1,
"---": 1,
"CognitiveLoadField": 18,
"SignalShapedRouteCompiler": 6
},
"per_class": {
"---": {
"n": 1,
"correct": 0,
"accuracy": 0.0
},
"CognitiveLoadField": {
"n": 18,
"correct": 8,
"accuracy": 0.4444
},
"RRC shape": {
"n": 1,
"correct": 0,
"accuracy": 0.0
},
"SignalShapedRouteCompiler": {
"n": 6,
"correct": 2,
"accuracy": 0.3333
}
},
"confusion_matrix": {
"RRC shape": {
"---": 1,
"RRC shape": 0,
"CognitiveLoadField": 0,
"SignalShapedRouteCompiler": 0
},
"---": {
"RRC shape": 1,
"---": 0,
"CognitiveLoadField": 0,
"SignalShapedRouteCompiler": 0
},
"CognitiveLoadField": {
"CognitiveLoadField": 8,
"SignalShapedRouteCompiler": 9,
"---": 1,
"RRC shape": 0
},
"SignalShapedRouteCompiler": {
"CognitiveLoadField": 4,
"SignalShapedRouteCompiler": 2,
"---": 0,
"RRC shape": 0
}
},
"feature_variance": {
"zero_mode_proxy_count": {
"mean": 0.0,
"variance": 0.0,
"unique": 1,
"collapsed": true
},
"rank_estimate": {
"mean": 7.0,
"variance": 1.52,
"unique": 5,
"collapsed": false
},
"laplacian_zero_count": {
"mean": 1.3462,
"variance": 0.3154,
"unique": 3,
"collapsed": false
},
"spectral_gap": {
"mean": 0.4011,
"variance": 0.0396,
"unique": 26,
"collapsed": false
},
"crossing_density": {
"mean": 0.182,
"variance": 0.0024,
"unique": 10,
"collapsed": false
},
"strand_entropy": {
"mean": 2.933,
"variance": 0.0123,
"unique": 26,
"collapsed": false
},
"eigenvalues[0]": {
"mean": 0.7409,
"variance": 0.0254,
"unique": 26,
"collapsed": false
},
"eigenvalues[1]": {
"mean": 0.3398,
"variance": 0.0067,
"unique": 23,
"collapsed": false
},
"eigenvalues[2]": {
"mean": 0.1712,
"variance": 0.0051,
"unique": 22,
"collapsed": false
},
"eigenvalues[3]": {
"mean": 0.0155,
"variance": 0.0032,
"unique": 13,
"collapsed": false
},
"eigenvalues[4]": {
"mean": -0.1103,
"variance": 0.007,
"unique": 18,
"collapsed": false
},
"eigenvalues[5]": {
"mean": -0.2178,
"variance": 0.0061,
"unique": 16,
"collapsed": false
},
"eigenvalues[6]": {
"mean": -0.3763,
"variance": 0.005,
"unique": 23,
"collapsed": false
},
"eigenvalues[7]": {
"mean": -0.5629,
"variance": 0.006,
"unique": 24,
"collapsed": false
},
"singular_values[0]": {
"mean": 0.7409,
"variance": 0.0254,
"unique": 26,
"collapsed": false
},
"singular_values[1]": {
"mean": 0.5651,
"variance": 0.0057,
"unique": 24,
"collapsed": false
},
"singular_values[2]": {
"mean": 0.3894,
"variance": 0.0101,
"unique": 25,
"collapsed": false
},
"singular_values[3]": {
"mean": 0.3109,
"variance": 0.0033,
"unique": 21,
"collapsed": false
},
"singular_values[4]": {
"mean": 0.2275,
"variance": 0.0063,
"unique": 15,
"collapsed": false
},
"singular_values[5]": {
"mean": 0.1723,
"variance": 0.0056,
"unique": 21,
"collapsed": false
},
"singular_values[6]": {
"mean": 0.1114,
"variance": 0.0063,
"unique": 19,
"collapsed": false
},
"singular_values[7]": {
"mean": 0.0361,
"variance": 0.0021,
"unique": 14,
"collapsed": false
}
},
"collapsed_features": [
"zero_mode_proxy_count"
],
"within_class_distance": 6.1938,
"between_class_distance": 6.1482,
"separation_ratio": 1.0074,
"class_centroids": {
"---": [
0.0,
0.8111,
-0.6164,
-1.5995,
-0.4371,
0.6043,
-0.8739,
2.1863,
-0.0316,
0.223,
-1.6747,
-0.4124,
0.2891,
1.3065,
-0.8739,
-0.6154,
0.7184,
0.783,
0.2847,
1.0398,
0.7237,
-0.1719
],
"CognitiveLoadField": [
0.0,
-0.1352,
0.175,
0.0849,
-0.0298,
-0.1708,
0.0037,
-0.1993,
-0.0842,
0.2022,
0.2385,
-0.0544,
0.0066,
-0.0763,
0.0037,
0.0493,
-0.1436,
-0.1327,
0.0782,
-0.0831,
-0.1874,
-0.1485
],
"RRC shape": [
0.0,
0.8111,
-0.6164,
-1.4954,
-0.4371,
0.5818,
-0.8614,
1.9578,
1.1082,
-2.0961,
-1.6747,
-0.4124,
1.7865,
0.8105,
-0.8614,
-0.8634,
1.1022,
-1.0616,
0.2847,
1.0398,
1.7451,
1.4653
],
"SignalShapedRouteCompiler": [
0.0,
0.1352,
-0.3196,
0.261,
0.235,
0.3147,
0.2781,
-0.0927,
0.0731,
-0.2943,
-0.1573,
0.3006,
-0.3659,
-0.1241,
0.2781,
0.0985,
0.1275,
0.4445,
-0.3296,
-0.0973,
0.1507,
0.2298
]
},
"normalization": {
"means": [
0.0,
7.0,
1.3462,
0.4011,
0.182,
2.933,
0.7409,
0.3398,
0.1712,
0.0155,
-0.1103,
-0.2178,
-0.3763,
-0.5629,
0.7409,
0.5651,
0.3894,
0.3109,
0.2275,
0.1723,
0.1114,
0.0361
],
"stds": [
1.0,
1.2329,
0.5616,
0.199,
0.0487,
0.1107,
0.1594,
0.0818,
0.0712,
0.0568,
0.0834,
0.078,
0.0707,
0.0776,
0.1594,
0.0754,
0.1003,
0.0574,
0.0791,
0.0747,
0.0794,
0.0461
]
},
"warnings": [
"Only 26 labeled samples; classifier is calibration-only.",
"Do not promote model to production until full 278 labeled equations are available.",
"Collapsed features (1): ['zero_mode_proxy_count']. These dimensions carry no discriminative power."
]
}