Skip to content

Shallow Claim 22 KO

teamswyg edited this page Sep 30, 2026 · 1 revision

작은 회귀 트리로 호출을 고르는 실험 22

호출을 더 줄였지만, 페이지·검색 품질에서 손해가 있어 사전 기준을 통과하지 못했다. 기존 16개 특징 모델(실험 21, seed 1729) 대비 호출 2,408→1,884, 페이지 6,326→6,333이다. 기본 적용하지 않는다. 실제 LLM 절감은 입증하지 않았다.

무엇을 시험했나

보조 검색이 페이지를 줄이는 질문은 2,948개 중 332개뿐이고, 146개에서는 페이지를 늘리며 2,470개에서는 같다. 이런 조건부 차이를 아주 작은 모델이 구분할 수 있는지 시험했다. 원래 16개 기본 검색 특징을 유지하고, 기본 페이지−보조 페이지를 예측하는 회귀 트리를 Go로 직접 학습했다. 양수는 예상 절감, 음수는 예상 손해다. 확률이나 행동 권한이 아니다.

기존 선형 분류와 비교해 모델 구조와 학습 목표가 모두 바뀐다. 결과 차이를 비선형 구조 하나의 효과로 해석하지 않는다. 최대 깊이 1/2/3/4 × 말단 최소 표본 16/64 × 저장소 분할 3개 = 24개 모델 조건이며, 질문 수는 그대로 고유 질문 2,948개다. 결정적인 알고리즘이라 seed가 없고 재실행은 재현 확인일 뿐 독립 시험이 아니다.

계획을 학습 전에 커밋했다. 학습 저장소에서 제곱오차를 줄이는 분할을 선택하고, 말단에는 학습 표본의 평균 절감을 저장한다. 검증 저장소에서 기존 90% 호출 예산 임계값과 후보 모델을 고른다. 선택 우선순위는 검증 페이지, 호출, 작은 깊이, 큰 최소 표본 수다. 평가 결과는 선택에 사용하지 않는다. 기존 모델은 검증된 HF 21 파일 그대로 읽고 다시 학습하지 않았다.

결과

정책 호출 페이지 Recall@10
기본 검색 0 9,488 0.7483
항상 보조 검색 2,948 6,287 0.8138
간단한 점수 차이 규칙 2,548 6,323 0.8097
실험 21, seed 1729 2,408 6,326 0.8100
실험 21, seed 2718 2,317 6,331 0.8094
새 회귀 트리 1,884 6,333 0.8039
정답 기반 페이지 oracle 332 6,014 0.7948

모든 정책의 Recall@1은 기본 검색과 같은 0.4179다. 트리의 검증 선택은 etcd에서 깊이 4/최소 16, test-infra와 lxd에서 깊이 4/최소 64였다. 총 2,948개 질문을 각 정책에서 한 번씩 집계했다. 항상 보조 검색보다 46페이지, 간단한 규칙보다 10페이지 많아 고정된 기준을 통과하지 못했다. 호출 감소만으로 성공으로 바꾸지 않는다.

어디서 손해를 보는가

정책 이득 있는 호출 / 332 놓친 절감 페이지 해로운 호출 / 146 발생한 손해 페이지 페이지 동률 호출 / 2,470
점수 차이 규칙 319 39 144 270 2,085
실험 21, seed 1729 315 53 139 259 1,954
실험 21, seed 2718 313 58 139 259 1,865
회귀 트리 299 62 135 257 1,450

트리는 페이지 동률 호출을 많이 줄였지만, 해로운 146개 중 135개를 여전히 호출했다. 이 자료에서 페이지 비용은 6,014(oracle) + 놓친 절감 + 발생한 손해로 설명된다. 예를 들어 트리는 6,014+62+257=6,333이다. 지금은 불필요한 호출을 줄이는 신호보다 해로운 보조 검색을 구별하는 신호를 더 점검할 근거가 생겼다. 이 표만으로 기존 특징에 그런 정보가 전혀 없다고 결론 내리지는 않는다.

Oracle은 정답을 미리 읽는 계산상 하한이며 실행 가능한 정책이 아니다. 페이지가 같아도 20개 묶음 안에서 정답 순위가 달라져 Recall@10은 달라질 수 있다. 따라서 페이지 동률 2,470개를 모든 관점에서 무가치한 호출이라고 부르면 안 된다. Oracle의 자동 승격도 명시적으로 금지한다.

자원과 구현

Go 모델은 최대 31개 노드의 특징 번호·좌우 자식·분할값·예측값을 별도 고정 배열로 저장한다. 검증 후 읽기만 하므로 공유 잠금이 필요 없다. 점수 계산은 최대 4번 비교하며 할당하지 않는다. 학습 단계에는 정렬·분할을 위한 임시 배열 할당이 있다. 학습까지 무할당이라고 주장하지 않는다. SIMD·GPU는 사용하지 않았다. float64 수치 트리이며 3진 압축 실험은 별도다.

Apple M4 Pro/macOS/Go 1.27.1에서 고정된 합성 깊이 4 경로를 반복한 측정은 2.501/2.483/2.407ns, 0 B/op, 0 allocs/op이었다. 분기 예측과 캐시에 유리한 마이크로벤치마크다. 특징 추출·검색·JSON·프로세스 실행은 포함하지 않으며 실제 질의 지연으로 쓰지 않는다. CPU 프로파일의 75.19%가 점수 계산에 포함됐고, 이것도 이 합성 반복 범위다.

전체 원천 검증·준비·24회 학습·평가·출력 한 번은 wall 1.80초, user CPU 1.43초, 최대 RSS 99,008,512바이트(약 94.4MiB)였다. 전체 프로세스 측정이며 개별 모델이나 GPU 메모리가 아니다. JSON 모델 하나는 2,059–2,562바이트다. 더 작은 직렬화는 품질이 확인된 뒤 별도로 비교한다.

24개 모델과 결과 1개가 재실행에서 25/25 바이트 일치했고, 고정된 실험 21 두 정책의 전체 지표도 기존 결과와 정확히 일치했다. 분할 최소 크기·동일 특징 처리·결정적 선택·잘못된 트리·평가 데이터 격리를 검사했다.

go run ./cmd/riido-shallowclaim --control .cache/spread-claim-hf-verified-21 --out .cache/shallow-claim-22
go test ./internal/claimtree -run '^$' -bench BenchmarkScoreDepth4 -benchmem

전체 결과. 제곱오차 분할·말단 평균·깊이 제한 원리는 회귀 트리 문서를 참고했다. 외부 구현을 복사하거나 Python 런타임을 추가하지 않았다.

이는 반복 관찰한 세 저장소 설명 질문의 개발 시험이다. 새로운 실제 사용자 요청 2,400개, 저장소 선택·작업 분할, 실제 에이전트 완료율·총비용은 미검증이다. CoSQA reserve는 사용하지 않았다. 다음은 유해 호출의 입력 신호와 품질·비용의 관계를 별도 계획으로 검증한다. 실패한 모델도 재현용 연구 자료로만 보관하며 원문·개별 질문·정답·원시 프로파일은 공개하지 않는다.

Source / 소스

Publication / 배포: immutable research archive. 31/31 files byte-identical after download; exact-source CI passed. MANIFEST SHA-256: a7e7831e52aeb2ca64ec247414332aab91d65263c7fac27cdaf7c55123301290. PR #45 merged as 90a3949b578f7ece957ed8997a7412b1d9170fc1; research-only, not activated.

Clone this wiki locally