Skip to content

Fernandez-Romero 2026 전문 기반 재분석 + BIOP02 대조표 - #155

Merged
braveji18 merged 2 commits into
mainfrom
docs/BIOP02-fernandez-romero-fulltext
Sep 3, 2026
Merged

Fernandez-Romero 2026 전문 기반 재분석 + BIOP02 대조표#155
braveji18 merged 2 commits into
mainfrom
docs/BIOP02-fernandez-romero-fulltext

Conversation

@kakyungkim

Copy link
Copy Markdown
Collaborator

7/17 분석은 Springer paywall 때문에 초록만 보고 작성됐고 paper-info.yaml에 "표-단위 정확 AUC는 Springer paywall로 미확보(정성 인용만)"로 적혀 있었습니다. 그 E2 판정이 CPTAC 결과를 원고에서 빼는 근거가 됐습니다(BIOP02-70·PR #154 참조).

오늘 Europe PMC(PMC13269319, CC-BY) 에서 전문을 확보해 수치와 방법을 실제로 채웠습니다.

확정된 것

  • 내부 검증 = patient-stratified MCCV, 10 random splits (80/10/10). 환자 단위 층화만 하고 기관은 통제하지 않습니다. 전문에 tissue source site·submitter·batch·scanner 전부 0회.
  • 외부검증은 TCGA 전체 재학습(85/15) 후 CPTAC 테스트.
  • AUROC를 보고하지 않습니다(macro-F1·PR-AUC만) → 우리 수치와 직접 비교 불가.
  • Virchow v2 PAM50 macro-F1 0.542→0.358, HER2 PR-AUC 0.399→0.219. HER2-enriched RPD=1.000(3개 MIL 전부).
  • RPD ~ Δn + d: R²=0.800, adj 0.750, F=16.03, q=0.005.
  • TCGA를 flash-frozen만 사용하고 FFPE 제외. (7/17 판본의 FFPE 표기는 오기였고 정정했습니다.)

그들이 하지 않은 것: 기관 통제 분할, 사전등록(0회), 치료 라우팅·의사결정(0회), 비용·효용(0회), 확률 보정·기권(0회), 다암종(0회), 다중 외부 코호트, FFPE.

신규 _comparison-with-biop02.md

우리 5개 엔드포인트 실측과 정면 대조했습니다. 핵심은 상반이 아니라 상보라는 점입니다. 그들의 PAM50 macro-F1은 0.542→0.358로 무너지는데 우리 AUROC는 0.7589→0.7216으로 버티고, 우리 쪽은 라우팅·보정 층이 CPTAC에서 붕괴합니다. 즉 외부에서 무너지는 것은 판별력이 아니라 보정과 결정이며, 이것이 cost-of-substitution 프레임의 근거입니다.

분할 설계가 낙폭 차이의 원인이라는 것은 가설로만 적었습니다. 지표·FM·포함 기준이 모두 달라 원인을 단정할 수 없습니다.

sources 처리

BP01 하네스 규약(analysis/**/sources/*.pdf gitignore)을 BP02로 이식했습니다. 이 저장소는 PUBLIC이라 출판사 PDF는 올리지 않고 추출 텍스트·DOI URL·PMC URL·bib만 커밋했습니다. 트리 내 PDF 0건 확인했습니다.

미확보

Supplementary PDF가 없어 Table S1–S9는 "원문 미확인"으로 표기했습니다. Figure 1도 수치를 읽지 못했습니다.

7/17 분석은 Springer paywall 때문에 초록만 보고 작성됐고 paper-info.yaml에
"표-단위 정확 AUC는 Springer paywall로 미확보"로 적혀 있었다. 오늘 Europe
PMC(PMC13269319, CC-BY)에서 전문을 확보해 수치와 방법을 실제로 채웠다.

핵심 확정 사항
- 내부 검증 = patient-stratified MCCV 10 random splits (80/10/10). 환자 단위
  층화만 하고 기관은 통제하지 않는다. 전문에 tissue source site·submitter·
  batch·scanner 전부 0회.
- 외부검증은 TCGA 전체로 재학습(85/15) 후 CPTAC 테스트.
- AUROC를 보고하지 않는다(macro-F1·PR-AUC만) — 우리 수치와 직접 비교 불가.
- Virchow v2 PAM50 macro-F1 0.542→0.358, HER2 PR-AUC 0.399→0.219.
  HER2-enriched RPD=1.000(3개 MIL 전부).
- RPD ~ Δn + d: R²=0.800, adj 0.750. TCGA는 flash-frozen만, FFPE 제외.

신규 _comparison-with-biop02.md: 우리 5개 엔드포인트 실측과 대조. 판별력은
보존되는데 라우팅·보정 층이 붕괴하는 해리를 정리했다. 분할 설계가 낙폭
차이의 원인이라는 것은 가설로만 적었다(지표·FM·포함 기준도 다름).

sources/: BP01 하네스 규약을 이식해 추출 텍스트·URL·bib만 커밋하고 출판사
PDF와 원본 XML은 gitignore했다. 이 저장소는 public이다.
Supplementary PDF(1.8MB)를 확보해 "원문 미확인"으로 남겨 둔 항목을 실측값으로
채웠다. pdftotext -layout 로 Table S1~S9 전부 추출했고, RPD·Δn·Δp·d 를
산술 검산으로 행 정렬을 검증했다(각 33/33·33/33·11/11·11/11 일치). S4+S5 에서
계산한 클래스별 3-MIL 평균이 본문 Table 2 와 11/11 일치해 사슬이 맞물린다.

주요 확정
- HER2-enriched RPD=1.000 은 반올림이 아니라 CLAM·DSMIL·TransMIL 셋 다
  CPTAC F1 이 정확히 0.000. 내부는 0.598/0.538/0.912 로 제각각이다.
- 염색 정규화는 33건 중 13건이 오히려 악화(TransMIL ER −0.165 최대 악화,
  CLAM Luminal B +0.186 최대 개선). 기준 슬라이드는 없고 SlideFlow v3 preset
  모집단 평균(TCGA 450장)이 목표다.
- 유병률 Δp: ER-음성 0.160→0.380, Basal-like 0.170→0.302, HER2-양성 0.207→0.108.
- 코사인 거리 d 의 클래스 간 분산은 사실상 DSMIL(0.125~0.365)이 만든다.
- 병리 일치도 κ 6항목 전부 moderate(0.41) 미달.

★ 전제 오류 2건 정정
- Δn 은 유병률 차이가 아니라 Macenko 정규화 이득이다. 유병률은 Δp 이고
  R²=0.800 모형에 Δp 는 들어 있지 않다(단변량 R²=0.029, q=0.615 비유의).
  80% 를 설명하는 둘은 염색 변이(Δn)와 특징공간 발산(d)이다.
- 13 FM × 3 MIL 클래스별 격자는 논문에 없다. 클래스 단위 값은 Virchow v2
  하나 위에서만 계산됐고 Table S1 은 12 FM 만 싣는다.

우리 Macenko 수치의 평가집합을 실측으로 확정했다. 산출 파일이
experiments/kkkim/20260819_stain_norm_robustness/ 에 있고 세 파일 모두
ext_auc 가 null 이라 내부 홀드아웃이다. 그들 Δn 은 외부(CPTAC) 값이므로
두 값을 같은 줄에서 크기 비교하면 안 된다는 단서를 달았다. [Gap:Assumption] 0건.

_comparison-with-biop02.md 에 3-5절(R²=0.800 요인 목록에 기관 변수 부재를
S1~S9 전수로 확정)과 3-6절(염색 정규화 대조, 우열 비교 없이 지표·평가집합·
집계단위 차이 명시)을 신설했다.
@kakyungkim
kakyungkim requested a review from Geongyu September 2, 2026 12:48
@braveji18
braveji18 merged commit 6645371 into main Sep 3, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants