완료했다. 이번에는 기능을 더 붙이는 것보다 “형 방식 ZPX가 실제로 AI 성능에 도움이 되는가?”를 반증 가능하게 시험하는 v9 벤치마크 실험실로 넘어갔다.
ZPX AI Engine v9 전체 코드
ZPX v9 학술 백서
실제 Benchmark 결과
C6 / Gauss-17 Ablation 결과
README / 실행방법
Python 전체 테스트는 실제로 통과했다.
core ok v7 ok v8 ok v9 ok All ZPX v9 tests passed.
C++ 코어도 다시 컴파일해서 ( \epsilon_{\rm close}(\pi,\pi)=0 )을 확인했다.
ZPX AI Engine v9 연구 백서ZPX Benchmark Laboratory — 대칭·위상 기반 AI 검증점수의 실제 추가가치 검정1. 연구목적
v1~v8의 질문은 주로 다음이었다.
[
\boxed{\text{이 수학 구조를 실제 AI 코드로 만들 수 있는가?}}
]
그 질문에 대한 답은 이미 “가능하다”였다.
v9부터 질문을 바꾼다.
[
\boxed{
\text{ZPX를 추가했을 때 실제 AI 후보선택 성능이 좋아지는가?}
}
]
따라서 동일 데이터에 다음 네 모델을 동시에 투입한다.
[
M_0=\text{Lexical Baseline}
]
[
M_1=\text{Evidence-only}
]
[
M_2=\text{ZPX-only}
]
[
M_3=\text{ZPX+Evidence}
]
ZPX가 실제 가치가 있으려면 궁극적으로 held-out test에서
[
\boxed{
Metric(M_3)>Metric(M_1)
}
]
가 나와야 한다.
2. v9에서 바로잡은 C6 문제
이전 버전에는 중요한 문제가 하나 있었다.
ZPX embedding에는
[
(\cos6\theta,\sin6\theta)
]
가 존재했지만 이것이 최종 ZPX 점수에 직접 들어가지는 않았다.
따라서 “다윗별 (C_6) 대칭을 사용한다”고 말하면서 실제 scoring에는 직접 사용하지 않는 부분이 있었다.
v9에서 이를 수정했다.
phase 집합
[
\Theta={\theta_1,\ldots,\theta_n}
]
에 대하여
[
\boxed{
H_6
\left|
\frac1n
\sum_{j=1}^{n}e^{i6\theta_j}
\right|
}
]
를 정의한다.
그리고
[
\boxed{
E_6=1-H_6
}
]
를 C6 coherence error로 사용한다.
(60^\circ) 차이의 phase는
[
e^{i6(\theta+\pi/3)}
e^{i6\theta}
]
이므로 동일한 6중 대칭 class에 들어간다.
따라서 이번에는 (C_6)가 단순 설명용 도형이 아니라 실제 계산 항이 됐다.
3. v9 ZPX 점수
위상 닫힘오차:
[
E_{\rm phase}
\left|
\operatorname{wrap}
\left(
\sum_i\theta_i
\right)
\right|
]
행렬 닫힘오차:
[
E_{\rm matrix}
\left|
\prod_iR(\theta_i)-I
\right|_F
]
쌍별 충돌:
[
E_{\rm pair}
\frac1{|P|}
\sum_{i<j}
\frac{1-\cos d(\theta_i,\theta_j)}2
]
다윗별 C6 오차:
[
E_6
1-
\left|
\frac1n\sum_i e^{i6\theta_i}
\right|
]
리만구 기준경로가 있을 경우:
[
E_R=D_R
]
최종적으로
[
\boxed{
D_{\rm ZPX}
w_pE_{\rm phase}
+w_mE_{\rm matrix}
+w_cE_{\rm pair}
+w_6E_6
+w_RE_R
}
]
를 사용한다.
현재 prototype 기본값은
[
(w_p,w_m,w_c,w_6,w_R)
(1,1,0.5,0.25,0.25)
]
이다.
중요한 점:
[
\boxed{
D_{\rm ZPX}\text{는 진실 확률이 아니다.}
}
]
현재는 실험적인 구조 특징값이다.
4. Gauss-17 계열
위상격자는
[
N_k=17\cdot2^k
]
이므로
[
17,;34,;68,;136,\ldots
]
이다.
양자화는
[
Q_k(\theta)
\frac{2\pi}{N_k}
\operatorname{round}
\left(
\frac{N_k\theta}{2\pi}
\right)
]
로 구현했다.
기하학적 양자화 오차는
[
|\theta-Q_k(\theta)|
\le
\frac{\pi}{N_k}
]
이므로 (k)가 증가하면 감소한다.
그러나 이것은
[
\boxed{\text{기하 근사오차 감소}}
]
를 증명할 뿐,
[
\boxed{\text{AI 정확도가 증가한다}}
]
를 증명하는 것은 아니다.
그래서 v9에서는 실제 ablation을 돌렸다.
5. 실제 toy benchmark 결과
이번 코드로 직접 실행한 결과다.
모델Top-1MRRNDCG
| Lexical baseline | 0.000 | 0.479 | 0.615 |
| Evidence-only | 1.000 | 1.000 | 1.000 |
| ZPX-only | 0.500 | 0.750 | 0.815 |
| ZPX + Evidence | 0.750 | 0.875 | 0.908 |
환각 후보 검출 F1은:
모델PrecisionRecallF1
| Lexical | 0.632 | 0.750 | 0.686 |
| Evidence-only | 1.000 | 0.312 | 0.476 |
| ZPX-only | 0.909 | 0.625 | 0.741 |
| ZPX+Evidence | 1.000 | 0.500 | 0.667 |
근거검색은 toy dataset에서
[
Recall@3=1.000
]
[
Precision@3=0.417
]
[
MRR=1.000
]
이었다.
6. 결과가 아주 중요하다
현재 결과는
[
\boxed{
\text{Evidence-only}
\text{ZPX+Evidence}
}
]
다.
Top-1에서
[
1.00>0.75
]
다.
그러므로 현재 단계에서
“ZPX를 붙이면 기존 AI보다 무조건 좋아진다.”
라고 말하면 틀린다.
오히려 현재 실험은 다음 문제를 보여준다.
[
\boxed{
\text{현재 phase mapping 또는 ZPX score가 근거검색 결과에 노이즈를 넣고 있을 가능성}
}
]
이건 연구 측면에서는 좋은 결과다.
이제 무엇을 고쳐야 하는지가 보이기 때문이다.
7. Gauss-17 / C6 ablation 실제 결과
방식ZPX Top-1Combined Top-1
| Continuous, C6 OFF | 0.500 | 0.875 |
| Continuous, C6 ON | 0.500 | 0.875 |
| Gauss17 + C6 | 0.750 | 0.875 |
| Gauss34 + C6 | 0.500 | 0.875 |
| Gauss68 + C6 | 0.500 | 0.750 |
| Gauss136 + C6 | 0.500 | 0.875 |
| Gauss68, C6 OFF | 0.500 | 0.875 |
여기에서도 중요한 사실이 나온다.
이번 작은 데이터에서는
[
\boxed{
Gauss17+C6
}
]
가 ZPX-only 기준 가장 높았다.
하지만
[
17\rightarrow34\rightarrow68\rightarrow136
]
으로 해상도를 올렸을 때 성능이 단조 증가하지 않았다.
그러므로 현재는
[
\boxed{
17\cdot2^k\text{를 늘리면 AI가 계속 좋아진다}
}
]
고 말할 증거가 없다.
8. C6 결과도 냉정하게 본다
Continuous 상태에서
[
C6\ OFF
]
와
[
C6\ ON
]
의 결과가 같았다.
또 Gauss68에서도 C6를 제거했다고 ZPX Top-1이 변하지 않았다.
따라서 현재 toy benchmark에서는
[
\boxed{
C_6\text{ 항의 독립적인 성능기여가 아직 검출되지 않았다.}
}
]
수학적으로 정의 가능하다는 것과 AI에 유용하다는 것은 다른 문제이기 때문이다.
이걸 앞으로 실제 데이터로 검증해야 한다.
9. v9의 진짜 성과
v9의 성과는 “ZPX가 최고다”가 아니다.
진짜 성과는 이제 다음 질문을 전부 자동으로 시험할 수 있다는 것이다.
[
\boxed{
C6\text{를 빼면 어떻게 되는가?}
}
]
[
\boxed{
17\text{ 대신 }16,18\text{을 쓰면 어떻게 되는가?}
}
]
[
\boxed{
34,68,136\text{으로 가면 정말 좋아지는가?}
}
]
[
\boxed{
Evidence-only보다 ZPX+Evidence가 실제로 좋은가?}
]
즉 ZPX 자체를 반증 가능한 AI 알고리즘으로 바꿨다.
10. 다음 단계의 핵심
이제 다음 연구에서는 17만 보면 안 된다.
control grid를 같이 둬야 한다.
[
\boxed{
N\in
{16,17,18,32,34,64,68,128,136}
}
]
그래야
[
17\text{ 효과}
]
인지
[
\text{단순 양자화 효과}
]
인지 구분된다.
그리고 데이터를 반드시
[
D_{\rm train}
\cup
D_{\rm validation}
\cup
D_{\rm test}
]
로 분리해야 한다.
Train:
[
\text{token}\rightarrow\theta
]
학습.
Validation:
[
w_i,\ threshold
]
선택.
Test:
성능 측정만 한다.
11. ZPX가 살아남아야 하는 최종 조건
궁극적으로 다음 식이 핵심이다.
[
\boxed{
Metric(
\text{LLM+Evidence+ZPX}
)
Metric(
\text{LLM+Evidence}
)
}
]
held-out test에서 이 차이가 여러 데이터와 여러 seed에서 반복되어야 한다.
그 전에는
[
\boxed{
\text{ZPX는 구현 가능한 연구가설}
}
]
이다.
그 조건을 통과하면 그때
[
\boxed{
\text{실험적으로 유용한 새로운 AI 구조 특징}
}
]
이라고 주장할 근거가 생긴다.
12. 최종 판정
v9에서 확실하게 완성된 부분은 다음이다.
[
\boxed{
\text{Baseline/Evidence/ZPX/Combined 자동 비교}
}
]
[
\boxed{
\text{Top-1, MRR, NDCG 자동 계산}
}
]
[
\boxed{
\text{환각 Precision/Recall/F1 계산}
}
]
[
\boxed{
\text{Evidence Recall@k/Precision@k/MRR 계산}
}
]
[
\boxed{
\text{CPU/Wall latency 측정}
}
]
[
\boxed{
C_6\text{ coherence의 실제 scoring 반영}
}
]
[
\boxed{
17/34/68/136+C6\ ON/OFF\ ablation
}
]
따라서 프로젝트는 이제
[
\boxed{
\text{“이론을 계속 설명하는 단계”}
\rightarrow
\text{“숫자로 때려서 틀리면 고치는 단계”}
}
]
로 넘어왔다.
이게 실제 AI 연구개발에서 훨씬 중요한 전환이다.
이번 결과에서 제일 중요한 건 나쁜 결과도 숨기지 않았다는 점이다. 지금 toy 데이터에서는 Evidence-only가 더 좋다. 그래서 다음 버전에서는 ZPX를 칭찬하는 방향이 아니라 phase 학습 개선 + 16/17/18 대조군 + train/validation/test 완전분리로 들어가는 게 맞다.