diff --git a/.gitignore b/.gitignore index b93bff1..a64c087 100644 --- a/.gitignore +++ b/.gitignore @@ -303,3 +303,13 @@ INFRA_PRIVATE.md biop02_infra.local + +# 논문 분석 하네스 — 원문 바이너리는 커밋하지 않는다 (BP01 규약 이식). +# 추출 텍스트(fulltext_extracted.txt)·URL·bib 만 커밋해 재현 경로를 남긴다. +# 이 저장소는 public 이므로 출판사 PDF 를 올리지 않는다. +research/**/sources/*.pdf +research/**/sources/*.PDF +research/**/sources/*_pmc.xml +research/**/sources/*.xlsx +research/**/sources/*.docx +research/**/sources/*.zip diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_abstract.md b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_abstract.md index e44f48f..0b67bd6 100644 --- a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_abstract.md +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_abstract.md @@ -1,27 +1,31 @@ -# fernandez-romero-2026-domaingen — Abstract +# Fernandez-Romero et al., 2026 — Domain generalisation in BC molecular classification — Abstract 분석 + +> 근거 자료: `sources/fernandez-romero-2026-domaingen_pmc.xml`(Europe PMC JATS 전문) + `sources/fernandez-romero-2026-domaingen.pdf`(본문 11p). 2026-09-02 전문 재분석으로 갱신했고, 그 전 판본은 초록만 보고 작성된 것이라 수치가 비어 있었다. +> +> 표기: `해석:` / `계산값:` / `원문 미확인:`(본문·표에서 찾지 못함, 대개 Supplementary PDF 소재). ## 서지 -- **Title:** Domain generalisation challenges in breast cancer molecular classification using foundation models: a cross-cohort exploratory study -- **Authors:** Jesus Fernandez-Romero, Pablo Ramos-Berciano, Manuel Perez-Perez, David Benavides, Antonio Robles-Frias, Jorge Garcia-Gutierrez, Laura Macias-Garcia (Crossref 확정) -- **Venue:** Medical & Biological Engineering & Computing (Med Biol Eng Comput), 2026 (vol 64) -- **DOI:** [10.1007/s11517-026-03590-4](https://doi.org/10.1007/s11517-026-03590-4) -## 초록 요약 -분자 분류는 유방암 치료를 안내하지만 PAM50과 면역조직화학(IHC)은 여전히 비싸고 많은 -세팅에서 이용 불가하다. Pathology foundation model(FM)과 multiple instance learning(MIL)의 -결합은 H&E 슬라이드만으로 분자 아형을 예측할 가능성을 보였으나, 대부분의 선행연구는 -**internal validation만** 보고했다. 본 연구는 **13개 FM × 3개의 상보적 MIL 아키텍처**를 -PAM50 아형 예측과 IHC 바이오마커(ER/PR/HER2) 예측에 대해 평가했다 — **TCGA-BRCA(n=1,079) -교차검증** 후 **CPTAC-BRCA(n=120) 외부검증**. +- **Title**: Domain generalisation challenges in breast cancer molecular classification using foundation models: a cross-cohort exploratory study +- **Authors**: Jesus Fernandez-Romero, Pablo Ramos-Berciano, Manuel Perez-Perez, David Benavides, Antonio Robles-Frias, Jorge Garcia-Gutierrez, Laura Macias-Garcia +- **Venue**: *Medical & Biological Engineering & Computing* **64(6):2321–2331** (2026) +- **DOI**: [10.1007/s11517-026-03590-4](https://doi.org/10.1007/s11517-026-03590-4) · PMC13269319 · PMID 42113320 · CC-BY 4.0 +- **소속**: Universidad de Sevilla, Hospital Universitario Virgen de Valme (스페인 세비야) +- **Citation key**: `fernandez-romero-2026-domaingen` +- **Funding**: MICIU/AEI PID2023-147688OA-I00, Data-pl(PID2022-138486OB-I00), SENSOLIVE(PLSQ_00162). 이해상충 없음 선언. + +## Abstract 요약 + +- **한 문장 요약**: 병리 foundation model(FM) 13종과 MIL 아키텍처 3종을 PAM50 아형과 ER/PR/HER2 예측에 붙여 TCGA-BRCA(n=1,079)에서 교차검증하고 CPTAC-BRCA(n=120)로 외부검증한 뒤, 코호트 간 성능 열화(RPD)를 네 가지 도메인 시프트 요인으로 회귀해 원인을 나눈 탐색적 연구. +- **문제의식**: 대부분의 선행연구가 같은 기관 내부 검증만 보고하고 외부 코호트를 시험하지 않아, 도메인 일반화가 검증되지 않은 채로 남아 있다. +- **핵심 방법**: 13 FM(SOTA 12종 + ResNet-50 baseline)을 baseline CLAM으로 먼저 선별하고, 최고 FM 하나(Virchow v2)에 Optuna로 최적화한 CLAM, TransMIL, DSMIL 3종을 붙여 열화 패턴이 아키텍처 의존인지 확인한다. 지표는 PAM50 macro-F1, ER/PR/HER2 PR-AUC. +- **주요 결과**: Virchow v2가 종합 1위(mean rank 2.00)지만 외부검증에서 심한 열화를 보이고, 그 열화는 3개 MIL 전부에서 같은 방향으로 나타난다. HER2-enriched와 Normal-like 아형, HER2-양성 IHC에서 특히 크다. +- **요인분해**: 네 요인 중 염색 변이(Δn), 특징공간 발산(d), 형태 분리도(B̃)가 단변량에서 유의하고 유병률 시프트(Δp)는 유의하지 않다(q=0.615). 최종 다변량 모형 `RPD ~ Δn + d`가 RPD 분산의 80.0%를 설명한다(R²=0.800, R²adj=0.750, F=16.03, q=0.005). +- **저자 스스로의 한정**: 클래스 수준 관측치가 11개뿐이라 회귀는 탐색적이고 가설 생성 수준이라고 본문에 명시한다. -핵심 결과: **Virchow v2**가 전체 최고 성능을 냈으나, **외부검증에서 심각한 열화(degradation)**를 -보였고 이 붕괴는 **3개 MIL 아키텍처 전반에서 일관**되게 나타났으며 특히 **HER2-enriched· -Normal-like PAM50 아형**과 **HER2-positive IHC 예측**에서 두드러졌다. 즉 in-domain 예측은 -강하지만 도메인 시프트(코호트·염색·특징공간)에서 무너진다는 것이 주된 메시지다. -(표-단위 정확 AUC는 paywall로 미확보 — 정성 인용만 가능.) +## 우리 논문(BIOP02 Paper C)에서의 역할 -## 우리 논문에서의 역할 -- **SCOOP (최근접).** 우리가 former 유방 "Paper A"로 하려던 서술적 실험(H&E FM+MIL → ER/PR/HER2/PAM50 예측 + TCGA→CPTAC 외부검증 + multi-FM 비교)을 **동일 설계로 이미 출판** — 우리의 HER2 외부 실패까지 재현. 이 논문이 유방을 standalone 예측 논문에서 **flagship Paper C(치환비용 결정지도)의 anchor로 흡수**하게 만든 직접 원인이다. -- **인용 방식:** 정성 한 줄로 양보 — "H&E→분자 예측 + 외부검증 열화는 이미 출판됨[Fernandez-Romero 2026], 특히 HER2-enriched/Normal-like 붕괴는 우리 HER2 reject와 일관" — 그 뒤 곧바로 **결정-가치(substitutability) 프레임**으로 전환. -- **포지셔닝 지지/위협:** 예측 정확도를 헤드라인으로 삼으면 **정면 스쿱**(위협). 그러나 우리의 novelty(형태 예측이 *언제* 분자검사를 값싸게 대체 가능한가의 결정지도)는 이 논문이 다루지 **않으므로**, 오히려 "예측은 포화됐다"는 우리 전제를 **강화**하는 증거로 재활용된다. -- **사전등록 법칙 연결:** 이 논문의 CPTAC 도메인 붕괴는 우리 SUBSTITUTABILITY_LAW의 "저비용 대체는 in-domain 조건부, cross-domain에는 보정·기권 필요" 조항의 외부 근거로 인용됨. +- **최근접 스쿱**: 우리가 유방 단독 예측 논문(구 Paper A)으로 하려던 설계, 곧 H&E FM+MIL로 PAM50과 ER/PR/HER2를 예측하고 TCGA에서 학습해 CPTAC로 외부검증하는 구성이 같은 코호트, 같은 동기로 이미 출판되었다. 유방을 flagship Paper C(치환비용 결정지도)로 흡수하게 만든 직접 원인이 이 논문이다. +- **인용 방식**: 예측 정확도를 헤드라인으로 삼지 않는다. "H&E에서 분자 아형을 예측하는 일과 그 외부 열화는 이미 보고되었다[Fernandez-Romero 2026]"로 한 줄 양보한 뒤 곧바로 결정가치(치환비용) 프레임으로 넘어간다. +- **동시에 우리 전제의 근거**: 이 논문의 외부 붕괴는 "예측만으로는 취약하므로 치환에는 계량 가능한 비용이 따르고 보정과 기권이 필요하다"는 SUBSTITUTABILITY_LAW의 외부 근거로 쓸 수 있다. +- **분할 설계 차이가 새로 확보된 대조축**: 전문에서 확인한 바로는 이 논문의 내부 검증이 환자 층화만 하고 기관(tissue source site)을 통제하지 않는다. 우리는 사전 고정된 site-disjoint 분할을 쓴다. 상세 대조는 `_comparison-with-biop02.md`. diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_comparison-with-biop02.md b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_comparison-with-biop02.md new file mode 100644 index 0000000..32e8dcc --- /dev/null +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_comparison-with-biop02.md @@ -0,0 +1,216 @@ +# Fernandez-Romero 2026 vs BIOP02 Paper C — 정면 대조 + +> 작성 2026-09-02. 그들 쪽 수치는 `sources/fernandez-romero-2026-domaingen_pmc.xml`(Table 1·2·3)과 `sources/..._supplementary.pdf`(Table S1~S9, 2026-09-02 확보)에서, 우리 쪽 수치는 아래 명시한 결과 파일에서 그대로 옮겼다. 추정한 값은 없고, 나눗셈으로 만든 값은 `계산값:`으로 표시한다. +> +> **출처 (우리 쪽)** +> - `experiments/sjpark/{er,pr,her2}_status_clam_uni_v2/{metrics.json, ext_eval_summary.json}` +> - `experiments/sjpark/pam50_clam_mb_uni_v1/{metrics.json, ext_eval_summary.json}` +> - `experiments/sjpark/pam50_clam_mb_uni_v1_4class/{metrics.json, ext_eval_summary.json}` +> - 분할 정의: `agents/data/split_policy_v0.md`(LOCKED 2026-07-11, Critic cross-sign 2026-07-13), `agents/data/manifests/split_manifest_meta.json`(split_hash `5995f29d3978b831`) +> - 라우팅·보정 붕괴: `experiments/crosscancer/PROGRESS_DECISIONS.md` + +## 1. 설계 대조표 + +| 축 | Fernandez-Romero 2026 | BIOP02 Paper C | +|---|---|---| +| 내부 코호트 | TCGA-BRCA 냉동만, 1,522 슬라이드 / 1,079 환자 | TCGA-BRCA 진단 슬라이드, 1,010 환자 | +| 외부 코호트 | CPTAC-BRCA 387 슬라이드 / 120 환자 | CPTAC-BRCA(전량 hold-out) | +| 내부 분할 | 환자 층화 Monte Carlo CV, 무작위 10회, 80/10/10 | 환자 + **기관(TSS) disjoint**, 사전 고정 1회, 707/152/151 환자 (16/10/11 사이트) | +| 기관 통제 | 없음(`tissue source site`·`submitter`·`batch`·`scanner` 각 0회) | Howard PreservedSiteCV(QP 클래스 균형), fallback은 site-grouped greedy | +| 분할 잠금 | 없음(매 반복 무작위 재분할) | split_hash를 모든 `metrics.json`에 각인, sign-off 후 동결 | +| FM | 13종 비교, 최종 Virchow v2 | UNI v1 | +| MIL | CLAM, TransMIL, DSMIL(Optuna 튜닝) | CLAM-SB(ER/PR/HER2), CLAM-MB(PAM50) | +| 지표 | PAM50 macro-F1, IHC PR-AUC (AUROC 0회) | AUROC 주 지표, AUPRC·balanced accuracy 병기 | +| 열화 지표 | RPD = (CV − HO)/CV | 상대 낙폭을 별도 정의하지 않음(아래는 우리가 계산한 참고치) | +| 결정 층위 | 없음 | 라우팅 비용, 보정, 기권 | + +## 2. 수치 대조 + +### 2-1. 그들 (Table 1, baseline CLAM, Virchow v2) + +| 엔드포인트 | 지표 | 내부(MCCV) | 외부(HO) | 계산값: 상대 낙폭 | +|---|---|---|---|---| +| PAM50 5-class | macro-F1 | 0.542 | 0.358 | 0.339 | +| ER | PR-AUC | 0.972 | 0.916 | 0.058 | +| PR | PR-AUC | 0.874 | 0.862 | 0.014 | +| HER2 | PR-AUC | 0.399 | 0.219 | 0.451 | + +참고로 우리가 쓰는 encoder 계열: UNI는 HER2 0.396 → 0.148(계산값 0.626), UNI-2는 0.353 → 0.164(계산값 0.535). 13종 중 최고 모형이 Virchow v2라는 것이지, 어느 것도 외부 HER2를 지키지 못한다. + +### 2-2. 그들 (Table 2, 최적화 MIL 3종 평균의 클래스별 RPD) + +| 클래스 | RPD | +|---|---| +| HER2-enriched | **1.000** | +| Normal-like | 0.906 | +| Luminal B | 0.644 | +| HER2-positive (IHC) | 0.643 | +| Basal-like | 0.219 | +| Luminal A | 0.166 | +| PR-negative | 0.163 | +| PR-positive | 0.161 | +| ER-positive | 0.093 | +| ER-negative | 0.063 | +| HER2-negative | 0.021 | + +### 2-3. 우리 (UNI v1 + CLAM, 사전등록 site-disjoint 분할, AUROC) + +| 엔드포인트 | 내부 홀드아웃 | CPTAC 외부 | n(외부) | 계산값: 상대 낙폭 | +|---|---|---|---|---| +| ER | 0.9013 | 0.894 | 387 | +0.008 | +| PR | 0.7765 | 0.7776 | 375 | −0.001 | +| HER2 | 0.5992 | 0.5297 | 294 | +0.116 | +| PAM50 5-class | 0.7589 | 0.7216 | 395 | +0.049 | +| PAM50 4-class | 0.8053 | 0.8181 | 382 | −0.016 | + +- 95% CI(외부): ER 0.861–0.926, PR 0.729–0.825, HER2 0.440–0.619, PAM50 5-class 0.678–0.767, PAM50 4-class 0.788–0.854. +- PAM50 4-class는 split_policy_v0 §4에 따라 Normal-like 13건을 제외한 평가다. +- **경고**: 이 상대 낙폭은 AUROC 기반이라 그들의 RPD(macro-F1·PR-AUC 기반)와 같은 양이 아니다. 나란히 두는 것은 방향 비교까지이고, 크기 비교로 쓰면 안 된다. + +## 3. 다뤄야 할 논점 네 가지 + +### 3-1. 내부 수치의 성격이 다르다 + +그들의 내부 성능은 환자만 층화한 무작위 분할에서 나온다. 원문 문장이 통제 범위를 명확히 한다. + +> "Patient-level stratification ensured that all slides from the same patient remained in the same fold, preventing data leakage." + +우리 내부 성능은 기관을 fold 사이에서 분리한 사전 고정 분할에서 나온다. 근거는 Howard 2021이 보고한 기관 서명이고, 분할은 2026-07-11에 잠근 뒤 모든 실행의 `metrics.json`에 해시로 각인했다. + +따라서 두 논문의 "내부 숫자"는 같은 이름이 붙었을 뿐 서로 다른 조건에서 얻은 값이다. 우리 원고는 이 차이를 먼저 밝히고 나서 비교를 시작해야 한다. + +### 3-2. 외부에서 판별력이 보존되는 정도가 다르다 (원인은 가설) + +- **사실**: 그들은 CPTAC에서 심각한 열화를 보고한다. HER2-enriched는 RPD=1.000으로 완전히 무너지고 Normal-like 0.906, Luminal B 0.644다. +- **사실**: 우리 CPTAC 결과에서 판별력은 대체로 보존된다. ER 0.9013 → 0.894, PR 0.7765 → 0.7776, PAM50 5-class 0.7589 → 0.7216, 4-class 0.8053 → 0.8181. +- **사실**: 그들은 내부 분할에서 기관을 통제하지 않았다. +- **가설(우리 추론이며 검증되지 않음)**: 기관을 통제하지 않은 내부 분할은 기관 서명을 fold를 가로질러 남겨 내부 성능을 위로 밀어 올릴 수 있고, RPD의 분모가 커진 만큼 낙폭이 커 보일 수 있다. 우리 쪽 낙폭이 작은 것은 내부 성능이 이미 기관을 넘은 조건에서 측정되었기 때문일 수 있다. +- **가설을 단정으로 바꾸지 않기 위한 조건**: 그들이 기관 분리 분할로 내부 성능을 다시 재는 실험을 하지 않았으므로, 위 설명은 검정되지 않은 후보다. 지표(macro-F1·PR-AUC 대 AUROC), FM(Virchow v2 대 UNI v1), 슬라이드 포함 기준도 함께 다르다. 원고에는 "설계 차이가 낙폭 차이의 한 가지 설명이 될 수 있다"는 수준으로 적고, 원인 규명은 후속 과제로 남긴다. + +### 3-3. 판별력 보존과 결정 안전성 붕괴의 해리 (우리 프레임의 핵심) + +우리 쪽 판별력이 보존된다는 사실이 "CPTAC에서 잘 돌아간다"를 뜻하지 않는다. 라우팅과 보정 층은 무너졌다. + +`experiments/crosscancer/PROGRESS_DECISIONS.md` 기록: + +- CPTAC에서 예측이 다수 클래스로 붕괴한다. 항HER2 예측이 0%이고 ER은 과다 호출된다. +- 그 결과로 나온 endocrine 5% / chemo 73%라는 "반전"은 모델의 실력이 아니라 붕괴의 산물이다. +- 원문 기록 그대로: "raw AUROC(0.9)가 숨긴 miscalibration을 cost가 축별로 드러냄(방법론 기여)". + +여기서 나오는 것이 cost-of-substitution 프레임의 근거다. 판별력(순위를 매기는 능력)과 결정 안전성(그 순위를 임계값 위에 올려 치료를 배정하는 능력)은 같이 움직이지 않는다. AUROC가 0.9여도 배치된 분류기가 한 클래스로 쏠리면 라우팅은 전량 오배정이 된다. 정확도 한 축만 재는 논문은 이 실패 양식을 볼 수 없고, 그들의 지표 체계(macro-F1·PR-AUC)도 마찬가지다. + +곧 우리 기여는 "우리 예측이 더 잘 버틴다"가 아니라 **"예측 충실도와 결정 가치는 분리해서 재야 한다"**이다. 두 층을 하나의 비용 숫자로 합치지 않는 규율이 여기서 나온다. + +### 3-4. HER2는 양쪽 다 실패한다 (수렴 증거) + +| | 그들 | 우리 | +|---|---|---| +| HER2-enriched(PAM50) | RPD = 1.000 | 별도 클래스 지표 미산출 | +| HER2 수용체 상태 | 내부 PR-AUC 0.399 → 외부 0.219, RPD(클래스 평균) 0.643 | 내부 AUROC 0.5992 → 외부 0.5297 | +| 외부 CI | 원문 미제공 | 0.440–0.619 (우연 수준 0.5를 포함) | +| 외부 balanced accuracy | **원문에 없음(확정)** | 0.500 (정확히 우연) | + +- Supplementary Table S4로 그들 HER2 쪽 클래스별 원값이 확정되었다. HER2-양성 PR-AUC는 내부 CLAM 0.728 / DSMIL 0.329 / TransMIL 0.244에서 외부 0.176 / 0.123 / 0.111로 떨어진다. HER2-enriched(PAM50)는 세 아키텍처 모두 외부 F1이 **정확히 0.000**이다. RPD=1.000이 반올림이 아니라 완전한 0이라는 뜻이므로, 원고에서 "완전 붕괴"라는 표현을 쓸 근거가 확실해졌다. +- 분할 설계가 다르고, FM이 다르고(Virchow v2 대 UNI v1), 지표가 다른데도 HER2 축은 양쪽 모두에서 쓸 수 없는 수준이다. +- 우리 쪽은 **내부에서 이미 0.599**다. 곧 이것은 도메인 시프트만의 문제가 아니라 H&E 형태에서 HER2를 읽어 내는 일 자체의 한계로 보는 편이 자연스럽다. 그들 Table 1에서도 13개 FM 전부 내부 HER2 PR-AUC가 0.25~0.40에 머문다는 사실이 같은 방향을 가리킨다. +- 원고에서는 이를 독립 재현으로 서술한다. 서로 다른 방법 선택에서 같은 실패가 나왔으므로 방법 의존적 결함이 아니다. +- 다만 구분해 두어야 할 것이 있다. **전량 붕괴(도메인·보정 문제, 고칠 수 있음)와 HER2 내재적 형태 blind(0.599, 고쳐지지 않음)는 다른 현상**이다. `PROGRESS_DECISIONS.md`도 이 구분을 명시한다. + +## 3-5. R²=0.800의 요인 목록에 기관 변수가 없다 (Supplementary로 확정) + +### 먼저 기호부터 바로잡는다 + +이 논문에서 `Δn`은 **유병률 차이가 아니다**. 두 기호를 혼동하면 결론이 정반대로 뒤집히므로 못 박아 둔다. + +| 기호 | 실제 뜻 | 근거 표 | 회귀 결과 | +|---|---|---|---| +| **Δn** | Macenko 염색 정규화 이득. 정규화 후 외부 성능에서 원본 외부 성능을 뺀 값 | Table S5 | **유의** (R²=0.479, q=0.037) | +| **Δp** | 클래스 유병률 시프트. p(CPTAC) − p(TCGA) | Table S6 | **비유의** (R²=0.029, q=0.615) | + +곧 R²=0.800을 만드는 두 요인은 **염색 변이(Δn)와 특징공간 발산(d)**이고, 유병률(Δp)은 그 모형에서 빠졌다. "유병률 차이와 코사인 거리가 분산의 80%를 설명한다"고 인용하면 원문과 어긋난다. + +### 최종 모형이 실제로 담은 것 + +`RPD ~ Δn + d`, R²=0.800, adj R²=0.750, F=16.03, q=0.005, n=11 클래스. + +| 후보 요인 | 근거 표 | 최종 모형 포함 여부 | +|---|---|---| +| Δn (염색 변이) | Table S5 | 포함, ΔR²=0.224 | +| d (특징공간 발산) | Table S7 | 포함, ΔR²=0.322 | +| B̃ (형태 분리도) | Table S8에서 유도 | 단변량 유의하나 탈락(ΔR²<0.001, q=0.881) | +| Δp (유병률 시프트) | Table S6 | 단변량부터 비유의로 제외 | + +### 핵심: 후보 목록 자체에 기관 변수가 없다 + +Supplementary 아홉 개 표를 전부 확인한 결과, **기관(tissue source site)·스캐너·배치를 담은 변수는 후보로도 올라오지 않는다.** 표별로 적으면 이렇다. + +- Table S1은 FM 메타데이터, S2·S3은 하이퍼파라미터, S4·S5는 성능, S6은 유병률, S7은 임베딩 거리, S8은 형태 특징, S9는 일치도다. 어느 표에도 기관·스캐너 열이 없다. +- 전문 문자열 검색과 일치한다. `tissue source site` 0회, `submitter` 0회, `batch` 0회, `scanner` 0회. +- 본문이 `site`를 쓰는 유일한 자리는 "the literature identifies covariate shift as the primary barrier to cross-**site** generalisation"이라는 논의 문장이다. 기관을 시프트의 원천으로 **언급은 하면서 변수로는 넣지 않았다**. + +여기서 나오는 논점이 우리 원고에 바로 쓰인다. + +- **사실**: 그들의 R²=0.800은 기관을 통제하지도, 요인으로 넣지도 않은 상태에서 얻은 값이다. 네 후보 요인은 모두 클래스 수준에서 정의되고, 데이터 출처 기관을 가르는 변수는 하나도 없다. +- **사실**: 그들의 내부 분할도 환자 층화만 한다. 곧 기관 효과는 분석의 입구(분할)와 출구(회귀 요인) 양쪽에서 다뤄지지 않았다. +- **가설(우리 추론, 검증되지 않음)**: 기관 서명은 염색 프로토콜과 스캐너를 통해 발현되므로 Δn과 d에 부분적으로 흡수되었을 수 있다. 그렇다면 "염색과 특징공간이 80%를 설명한다"는 결론은 "기관이 염색과 특징공간을 매개로 작동한다"와 관측적으로 구분되지 않는다. 두 설명이 같은 데이터에 똑같이 들어맞는다. +- **가설을 단정으로 바꾸지 않기 위한 조건**: 기관을 요인으로 넣은 회귀를 그들이 돌리지 않았으므로 위 설명은 검정되지 않은 후보다. 우리도 같은 회귀를 우리 데이터에서 돌린 적이 없다. 원고에는 "요인 목록에 기관이 없다"는 사실까지만 적고, 매개 여부는 후속 과제로 남긴다. +- **원고에서 이렇게 쓴다**: 그들의 요인 분해를 부정하는 방식이 아니라, 우리 설계가 그 공백을 다른 방향에서 메운다는 방식으로 배치한다. 그들은 기관을 통제하지 않은 채 시프트를 사후에 분해했고, 우리는 기관을 분할 단계에서 제거한 뒤 남는 것을 본다. 두 접근이 상보적이라는 서술이 방어에 가장 안전하다. + +또 하나 기록해 둘 제약이 있다. n=11이고 요인이 4개라 그들 스스로 탐색적이라고 못 박는다. Figure S2를 보면 HER2-enriched와 Normal-like 두 점이 RPD 1.0 부근에 따로 떨어져 적합을 상당 부분 끌고 가는데, 영향점 진단은 원문에 없다. R²=0.800을 인용할 때 이 단서를 함께 달아야 한다. + +## 3-6. 염색 정규화를 나란히 놓기 (우열 비교 아님) + +### 두 결과 + +**그들 (Table S5, CPTAC 외부 평가, PAM50은 macro-F1 / IHC는 PR-AUC, 클래스 단위)** + +| 축 | 정규화 없음 → Macenko | Δn | +|---|---|---| +| ER-음성 (CLAM) | 0.698 → 0.733 | +0.035 | +| ER-양성 (CLAM) | 0.881 → 0.911 | +0.030 | +| ER-음성 (TransMIL) | 0.763 → 0.598 | **−0.165** | +| ER-양성 (TransMIL) | 0.913 → 0.751 | **−0.162** | +| HER2-양성 (CLAM) | 0.176 → 0.234 | +0.058 | +| HER2-enriched (세 모델 모두) | 0.000 → 0.000 | +0.000 | +| Luminal B (CLAM) | 0.200 → 0.386 | **+0.186** | +| PAM50 Luminal A (TransMIL) | 0.765 → 0.710 | −0.055 | + +33개 칸 가운데 개선 17건, 악화 13건, 무변화 3건이다. + +**우리 (Macenko 재추출, AUROC, 과제 단위)** + +| 엔드포인트 | 재추출 전 → 후 | 차이 | +|---|---|---| +| ER | 0.901 → 0.917 | +0.016 | +| HER2 | 0.599 → 0.641 | +0.042 | +| PAM50 | 0.759 → 0.740 | −0.019 | + +### 무엇을 쟀는지가 다르다 + +우열을 가리지 않는다. 두 결과는 애초에 같은 양이 아니기 때문이고, 다른 지점이 셋이다. + +1. **지표가 다르다.** 그들은 macro-F1(PAM50)과 PR-AUC(IHC), 우리는 AUROC다. AUROC는 순위만 보고 임계값과 무관하지만 PR-AUC와 F1은 양성 클래스 비율과 임계값에 함께 반응한다. CPTAC처럼 유병률이 크게 바뀌는 코호트에서는 같은 모델이라도 두 지표가 반대로 움직일 수 있다. +2. **평가 대상 집합이 다르다.** 그들의 Δn은 **외부 코호트(CPTAC)에서** 잰 값이고, 정규화한 TCGA로 학습해 정규화한 CPTAC에서 평가한 결과다. 우리 Macenko 수치는 **내부 홀드아웃**이다. 산출 파일 `experiments/kkkim/20260819_stain_norm_robustness/clam_rerun/sjpark/{er_status,her2_status,pam50_clam_mb}_clam*_uni_stainnorm/metrics.json` 에서 확인했고 세 파일 모두 `ext_auc`가 null이라 외부 전이 평가를 돌리지 않았다(ER 0.9166, HER2 0.6408, PAM50 0.7396). 즉 **그들은 외부에서, 우리는 내부에서** 정규화 효과를 쟀다. 내부 개선과 외부 개선은 다른 질문에 답하므로 두 값을 같은 줄에 놓고 크기를 견주면 안 된다. +3. **집계 단위가 다르다.** 그들은 클래스 단위로 11개 값을 내고 우리는 과제 단위로 하나씩 낸다. 그들 표에서 부호가 클래스마다 뒤집히는 것을 보면(같은 ER 안에서도 CLAM +0.035, TransMIL −0.165), 과제 단위 하나의 숫자는 내부 상쇄를 가린다. 우리 PAM50의 −0.019도 아형별로는 다른 방향이 섞여 있을 수 있다. + +### 그럼에도 겹치는 결론 + +지표와 집합이 달라도 양쪽이 같은 방향을 가리키는 것이 하나 있다. **Macenko 정규화는 일괄 적용해도 좋은 안전한 기본값이 아니다.** 그들 쪽에서는 33건 중 13건이 악화되고 TransMIL의 ER에서는 −0.16 이상 떨어진다. 우리 쪽에서도 ER과 HER2는 올랐지만 PAM50은 내려간다. 양쪽 모두에서 **다중 클래스 과제가 정규화로 손해를 보는 쪽**에 있다는 점이 눈에 띈다. + +원고에 쓴다면 이렇게 쓴다. 정규화 효과는 과제와 클래스에 따라 부호가 갈리므로 전처리 결정을 엔드포인트별로 따로 검증해야 하고, 두 연구가 서로 다른 지표와 평가 집합에서 같은 취지를 보였다고 적는다. 수치를 같은 표에 올려 크기를 견주지는 않는다. + +## 4. 원고 문장으로 옮길 때의 규율 + +- 우리 내부 수치가 그들보다 "낮다/높다"로 말하지 않는다. 지표와 분할이 달라 비교 대상이 아니다. +- 우리 낙폭이 작다는 사실을 우리 방법의 우월성 주장으로 쓰지 않는다. 분할 설계가 후보 설명이라는 가설까지만 적는다. +- 그들의 열화 결과는 우리 논지를 지지하는 외부 근거로 인용한다. 예측만으로는 배치가 취약하므로 치환에는 계량 가능한 비용이 따르고 보정과 기권이 필요하다는 SUBSTITUTABILITY_LAW의 근거다. +- 우리 쪽 라우팅 붕괴를 숨기지 않는다. 판별력 보존과 결정 안전성 붕괴가 함께 있다는 것이 우리 프레임의 존재 이유이므로, 붕괴 사실이 결과인 동시에 caveat다. +- 모든 우리 산출물은 `hypothesis_only`를 유지하고 Critic 통과 전에는 공유하지 않는다. + +## 5. 열린 항목 + +- ~~아키텍처별 클래스별 절대 성능(Table S4) 미확보~~ → **해소됨**(2026-09-02). 33행 전부 `_core.md`에 있다. 다만 Table S4는 Virchow v2 하나 위에서만 계산되었으므로, FM 13종을 클래스 단위로 가로지르는 비교는 논문에 존재하지 않는다. +- 우리 Macenko 재추출 수치(ER 0.901→0.917, HER2 0.599→0.641, PAM50 0.759→0.740)의 산출 파일을 이번 세션에서 찾지 못했다. `experiments/sjpark/` 아래에 Macenko 전용 디렉터리가 없다. 평가 집합(내부 홀드아웃 대 CPTAC 외부)을 확정해야 3-6절의 대조가 완결된다. 이것이 지금 가장 먼저 메워야 할 공백이다. +- 그들 요인 목록에 기관 변수가 없다는 사실은 확정했다(3-5절). 그 공백이 Δn·d에 흡수되었는지는 우리 데이터에서 기관 변수를 넣은 회귀를 돌려야 가릴 수 있고, 아직 계획 단계다. +- 우리 쪽 클래스별(PAM50 아형별) 내부·외부 성능과 macro-F1·PR-AUC 재계산은 아직 하지 않았다. 하면 그들 Table 2와 같은 자에 올릴 수 있으나, 헤드라인이 예측 정확도로 되돌아갈 위험이 있어 보조 표로만 검토한다. +- 그들이 통제하지 않은 기관 효과의 크기를 우리 데이터에서 역으로 추정하는 실험(기관 통제 분할과 무작위 분할의 내부 성능 차이 측정)은 아직 계획 단계다. 이것이 3-2의 가설을 사실로 바꿀 수 있는 가장 값싼 경로다. diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_core.md b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_core.md index 47b3c8d..36082b8 100644 --- a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_core.md +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_core.md @@ -1,38 +1,459 @@ -# fernandez-romero-2026-domaingen — Core 요약 - -**Domain generalisation challenges in breast cancer molecular classification using foundation models: a cross-cohort exploratory study** -Fernandez-Romero J, Ramos-Berciano P, Perez-Perez M, Benavides D, Robles-Frias A, Garcia-Gutierrez J, Macias-Garcia L. -*Med Biol Eng Comput* 64 (2026). DOI 10.1007/s11517-026-03590-4. **OA**(PMC13269319, PMID 42113320). 소속: Hospital Universitario Virgen de Valme · Universidad de Sevilla. - -## 핵심 기여 (Core contribution) -H&E → 유방암 분자분류(PAM50 아형 + ER/PR/HER2 IHC)를 pathology **foundation model(FM) × multiple instance learning(MIL)** 조합으로 예측하되, 선행연구 대부분이 internal validation만 보고한 공백을 지적하고 **외부검증에서의 도메인 일반화 실패(degradation)를 정면으로 계량화**한 exploratory 벤치마크. 신규 예측기가 아니라 **"in-domain 강세 → cross-domain 붕괴"의 진단**이 기여. - -## 방법 (Method) -- **설계:** **13개 FM × 3개 MIL 아키텍처** 전조합 벤치마크. - - MIL 3종(verbatim): **CLAM**(attention-based, multi-branch), **TransMIL**(transformer-based), **DSMIL**(dual-stream). - - FM 13종: ResNet-50(baseline), CTransPath, RetCCL, CONCH, UNI, Prov-GigaPath, Hibou-B, Hibou-L, H-optimus-0, **Virchow v2**, Phikon v2, Musk, UNI-2. *(PMC 단일 fetch — 목록 자체는 재확인 미실시)* -- **전처리:** tile 크기 **128 µm / ~20×**로 고정("optimal for most FMs"; ≈256×256 px, 픽셀값은 원문 inline graphic). 40× 512×512 추출 후 적응했다는 서술도 있음(FoV 등가). -- **지표(중요):** **ER/PR/HER2 = PR-AUC, PAM50 = macro-F1** — **AUROC 아님**(우리 registry AUROC와 직접 비교 불가). -- **열화 계량:** **RPD(Relative Performance Drop) = (Q_CV − Q_HO) / Q_CV** (CV=내부 교차검증, HO=외부 hold-out). -- **도메인 시프트 요인분석:** 4개 가설 요인(staining variability, class prevalence shift, feature space divergence, morphological separability)을 RPD 회귀 → **staining variability + feature space divergence가 RPD 분산의 80.0% 설명(R²=0.800, R²adj=0.750)**; prevalence shift는 유의하지 않음. - -## 데이터셋 (Dataset) -- **내부(CV):** TCGA-BRCA — **1,522 슬라이드 / 1,079 환자**(FFPE). -- **외부(HO):** CPTAC-BRCA — **387 flash-frozen 슬라이드 / 120 환자**(PAM50+IHC 완비). **flash-frozen vs FFPE**가 핵심 도메인 시프트 축의 하나. - -## 주요 결과 (검증된 수치) -- **Virchow v2가 전체 최고**(모델 mean ranking **2.00** > Prov-GigaPath 4.13 > H-optimus-0 4.25 ≈ UNI-2 4.25). -- **Virchow v2 내부→외부**(Table 1): ER **0.972→0.916**, PR **0.874→0.862**(견고), **HER2 0.399→0.219**, PAM50 macro-F1 **0.542→0.358**(붕괴). -- **HER2-enriched 아형: 외부 완전 붕괴(RPD=1.000, 전 모델)**. Normal-like·HER2-positive IHC도 심각 열화, 3개 MIL 전반에서 일관. -- 요지: **in-domain 예측은 강하나 코호트·염색·특징공간 시프트에서 무너진다** — 특히 HER2 축. - -## 한계 (Limitations) -- **저자 스스로 "exploratory"**로 규정. 외부검증 단일 코호트(CPTAC), flash-frozen이라 조직 준비 축과 코호트 축이 교락. -- 예측 정확도만 보고 — **치료 결정에서의 대체 가치(substitutability)는 다루지 않음**(우리 whitespace). -- ER/PR/HER2 PR-AUC·PAM50 F1 지표라 타 논문 AUROC와 직접 비교 곤란. - -## 검증 플래그 (provenance) -- **이중 확인(OpenAlex abstract verbatim + PMC fetch):** 13 FM × 3 MIL, n=1,079/120, Virchow v2 best, HER2-enriched/Normal-like/HER2+ 열화, PR-AUC/macro-F1, R²=0.800, prevalence n.s., mean ranking(2.00 등). -- **PMC 좁은 재확인(quote-demand):** MIL 3종 명칭(CLAM/TransMIL/DSMIL), Virchow HER2 0.399→0.219 · PAM50 0.542→0.358, CPTAC 387 flash-frozen/120, tile 128µm/20×. -- **PMC 단일 fetch(미재확인):** 13-FM 전체 목록, RPD 공식 문자열, ER/PR 내부→외부 소수점(0.972→0.916, 0.874→0.862 — RPD 정합성으로 신뢰). -- **[미확인]** per-model 전체 표(Virchow 외 12모델 내부/외부 값). Data availability 문장 없음(NOT FOUND). +# Fernandez-Romero et al., 2026 — Domain generalisation in BC molecular classification — core 분석 + +> 근거 자료: `sources/fernandez-romero-2026-domaingen_pmc.xml`(Europe PMC JATS 전문, Table 1·2·3 원문 파싱) + `sources/fernandez-romero-2026-domaingen.pdf`(본문 11p). 2026-09-02 전문 기반 재작성. +> +> **2026-09-02 보강**: Supplementary PDF(`sources/..._supplementary.pdf`, 10p)를 확보해 Table S1~S9와 Figure S1~S3을 전부 옮겼다. 이전 판본에서 `원문 미확인:`으로 남겼던 아키텍처별 클래스별 원값(S4), 염색 정규화 세부(S5), 유병률(S6), 코사인 거리(S7), 형태 특징(S8), 일치도(S9)는 실측값으로 교체했다. 추출은 `pdftotext -layout`(poppler)으로 했고, S4·S5·S6·S7은 표에 적힌 값끼리 산술 검산해 33/33, 33/33, 11/11, 11/11 모두 일치함을 확인했다. +> +> 본문과 Table 1~3, Supplementary Table S1~S9에 숫자로 적힌 값만 단정한다. 우리가 원문 값에서 나눗셈으로 만든 값은 `계산값:`으로 구분한다. +> +> 표기: `해석:` / `계산값:` / `원문 미확인:` / `외부 맥락:` + +## Executive Summary + +- **무엇**: 새 예측기를 내놓는 논문이 아니라, H&E 기반 유방암 분자분류가 코호트를 넘으면 왜 무너지는지를 계량하는 진단 논문이다. 저자들 스스로 "to our knowledge, this is the first study to systematically characterise the sources of domain-induced performance degradation"이라고 위치를 잡는다. +- **설계 2단**: (1단) 13개 FM을 baseline CLAM 하나로 붙여 8개 평가(PAM50/ER/PR/HER2 × 내부/외부)로 순위를 매기고 최고 FM을 고른다. (2단) 고른 FM(Virchow v2)에 Optuna로 최적화한 CLAM, TransMIL, DSMIL을 붙여 열화가 aggregator 설계 탓인지 확인하고, 클래스별 RPD를 네 요인으로 회귀한다. +- **핵심 수치**: Virchow v2 mean rank 2.00으로 1위. 그 Virchow v2조차 baseline CLAM 기준 PAM50 macro-F1 0.542 → 0.358, HER2 PR-AUC 0.399 → 0.219로 떨어진다. 클래스 단위로는 HER2-enriched가 RPD=1.000, 곧 외부에서 완전 붕괴한다. +- **원인 분해**: `RPD ~ Δn + d`가 R²=0.800(adj 0.750, F=16.03, q=0.005). 특징공간 발산 d가 더 큰 고유 기여(ΔR²=0.322), 염색 변이 Δn이 0.224. 유병률 시프트 Δp는 유의하지 않다(q=0.615). 즉 공변량 시프트가 주범이고 사전 시프트는 아니라는 결론. +- **우리 관점 요지**: 예측 정확도 축에서는 정면 스쿱이지만, 분할 설계(기관 미통제)와 결정 층위(치료 라우팅 없음)에서 우리 여지가 남는다. 자세한 대조는 `_comparison-with-biop02.md`. + +## Identity + +| 항목 | 값 | +|---|---| +| Venue | Med Biol Eng Comput 64(6):2321–2331 (2026) | +| DOI | 10.1007/s11517-026-03590-4 | +| 라이선스 | CC-BY 4.0, PMC13269319 | +| 코드 | CLAM fork(`BIGS-investigacion/CLAiMem-ALL`) + PathBench-MIL fork(`BIGS-Investigacion/PathBench-MIL`) | +| 논문 성격 | exploratory benchmark / diagnostic (저자 자기규정) | + +## 데이터 + +| 코호트 | 역할 | 슬라이드 | 환자 | 조직 처리 | 라벨 출처 | +|---|---|---|---|---|---| +| TCGA-BRCA | 내부(MCCV·CV) | 1,522 | 1,079 | **flash-frozen만**(FFPE 제외) | Thennavan et al. supplementary | +| CPTAC-BRCA | 외부(HO) | 387 | 120 | flash-frozen | Krug et al. | + +- TCGA 라벨 가용 슬라이드: ER 1,455, PR 1,452, HER2 1,482. PAM50은 1,522 전체. +- CPTAC 라벨 가용 슬라이드: ER 379, PR 367, HER2 387. +- **중요 정정**: 이전 판본 분석은 TCGA를 FFPE로 적었으나 원문은 반대다. "To ensure consistency with CPTAC (which comprises flash-frozen samples), we excluded formalin-fixed paraffin-embedded specimens." 곧 양쪽 코호트 모두 냉동 조직이며, FFPE와 냉동의 차이는 이 논문의 시프트 축이 **아니다**. 저자들도 Limitations에서 FFPE 일반화가 안 된다는 점을 한계로 든다. + +## 검증 설계 (Paper C 대조에 가장 중요한 절) + +### 내부 검증 + +원문 그대로: + +> "We performed patient-stratified MCCV with 10 random splits on TCGA as internal validation. In each iteration, patients were randomly partitioned into 80% training, 10% validation (for early stopping) and 10% test. Patient-level stratification ensured that all slides from the same patient remained in the same fold, preventing data leakage." + +- 통제 단위는 **환자 하나뿐**이다. 슬라이드가 환자를 넘지 않게 막을 뿐, 제출 기관을 fold 사이에서 분리하지 않는다. +- 전문 문자열 확인: `tissue source site` 0회, `submitter` 0회, `batch` 0회, `scanner` 0회. `site`는 딱 1회 나오는데 그마저 "cross-site generalisation"이라는 논의 문장이지 분할 설명이 아니다. `institution`은 서론과 논의에서 남의 연구를 비판하는 맥락으로만 쓰인다. +- **해석**: 기관 서명(Howard 2021)이 내부 fold를 가로질러 남아 있을 수 있고, 그렇다면 내부 성능은 위로 편향된다. 저자들은 이 가능성을 다루지 않는다. 그들이 보고하는 "심각한 열화"의 분모가 부풀려졌을 여지가 여기서 생긴다. 다만 이는 우리 추론이지 저자들이 인정한 결함이 아니다. +- 2단계 MIL 비교에서는 MCCV 대신 10-fold CV를 쓰고 CPTAC을 hold-out으로 둔다. + +### 외부 검증 + +- 각 FM-CLAM 모형을 TCGA 전체(train 85% / val 15%)로 다시 학습해 CPTAC에서 시험한다. 조기 종료는 validation loss 기준이고 최고 체크포인트를 쓴다. +- 외부 코호트는 CPTAC 하나뿐이다. + +### 지표 + +- PAM50 = macro F1-score, ER/PR/HER2 = PR-AUC. **AUROC는 논문 전체에서 한 번도 쓰지 않는다**(`AUROC` 0회). 우리 registry의 AUROC와 직접 비교되지 않는 이유가 여기 있다. +- 학습 시 클래스 불균형은 빈도 역수 가중 cross-entropy로 처리한다. + +### RPD 정의 + +``` +RPD(Q,c) = (Q_c^CV − Q_c^HO) / Q_c^CV (Q_c^CV > 0일 때) + = n.d. (그 외) +``` + +RPD=0은 무열화, 1.0은 완전 붕괴, 음수는 외부에서 오히려 개선. 회귀에 쓰인 클래스별 RPD는 최적화 MIL 3종의 평균값이다. + +## FM 13종의 정확한 구성 (Table S1) + +Supplementary Table S1은 FM을 **12종만** 싣는다. 본문이 말하는 13종은 여기에 ImageNet 사전학습 ResNet-50 baseline을 더한 수다. 표의 출처는 Wölflein & Myles의 공개 목록([11], `github.com/georg-wolflein/pathology-foundation-models`)이다. + +| # | Name | Release | WSIs | Tiles | Architecture | Training Data | +|---|---|---|---|---|---|---| +| 1 | CTransPath | Dec 2021 | 32K | 16M | Swin-T | TCGA, PAIP | +| 2 | RetCCL | Dec 2021 | 32K | 16M | ResNet-50 | TCGA, PAIP | +| 3 | CONCH | Jul 2023 | 21K | 16M | ViT-B | in-house | +| 4 | UNI | Aug 2023 | 100K | 100M | ViT-L | in-house | +| 5 | Prov-GigaPath | May 2024 | 170K | 1.4B | ViT | in-house | +| 6 | Hibou-B | Jun 2024 | 1.1M | 510M | ViT-B | in-house | +| 7 | Hibou-L | Jun 2024 | 1.1M | 1.2B | ViT-L | in-house | +| 8 | H-optimus-0 | Jul 2024 | 500K | >100M | ViT-G | in-house | +| 9 | Virchow v2 | Aug 2024 | 3.1M | 2B | ViT-H | in-house | +| 10 | Phikon v2 | Sep 2024 | 58.4K | 456M | ViT-L | PANCAN-XL | +| 11 | Musk | Jan 2025 | 33K | 50M | BEiT3 | TCGA | +| 12 | UNI-2 | Jan 2025 | 350K | 200M | ViT-H | in-house | +| 13 | ResNet-50 (baseline) | ImageNet 사전학습 | 해당 없음 | 해당 없음 | ResNet-50 | ImageNet | + +- **임베딩 차원은 표에 없다.** Table S1은 아키텍처 계열(ViT-B/L/H/G, Swin-T, BEiT3)까지만 적고 출력 차원(`embed_dim`)을 싣지 않으며, 본문에도 없다. 우리가 인용하려면 각 모델 카드에서 따로 확인해야 한다. 여기서 추정해 채우지 않는다. +- **버전 표기**는 릴리스 월까지가 전부다. 가중치 커밋 해시나 체크포인트 태그는 원문에 없다. +- **본문과 표가 어긋나는 지점**: 본문은 "12 state-of-the-art FMs (July 2023–January 2025)"라고 적지만, Table S1의 CTransPath와 RetCCL은 둘 다 Dec 2021이다. 12종 중 10종만 본문이 말한 기간에 들어간다. 인용할 때는 본문의 기간 표현 대신 Table S1의 개별 릴리스 월을 쓰는 편이 안전하다. +- Optuna 탐색이 건드린 `z_dim`은 FM의 출력 차원이 아니라 MIL 쪽 투영 차원이다(Table S3). 둘을 섞지 않는다. + +## 결과 1: FM 13종 벤치 (Table 1, baseline CLAM) + +PAM50은 macro-F1, ER/PR/HER2는 PR-AUC. MCCV=내부, HO=외부. 괄호 안은 우리가 계산한 상대 낙폭이다. + +| Model | PAM50 MCCV | PAM50 HO | ER MCCV | ER HO | PR MCCV | PR HO | HER2 MCCV | HER2 HO | Mean Rank | +|---|---|---|---|---|---|---|---|---|---| +| ResNet-50 | 0.342 | 0.218 | 0.933 | 0.722 | 0.822 | 0.595 | 0.326 | 0.104 | 12.75 | +| CTransPath | 0.446 | 0.342 | 0.962 | 0.870 | 0.845 | 0.757 | 0.395 | 0.156 | 7.00 | +| RetCCL | 0.414 | 0.272 | 0.956 | 0.804 | 0.837 | 0.736 | 0.368 | 0.130 | 9.63 | +| CONCH | 0.493 | 0.335 | 0.957 | 0.885 | 0.853 | 0.777 | 0.306 | 0.190 | 7.13 | +| UNI | 0.527 | 0.365 | 0.967 | 0.885 | 0.870 | 0.833 | 0.396 | 0.148 | 4.38 | +| Prov-GigaPath | 0.504 | 0.379 | 0.967 | 0.900 | 0.875 | 0.822 | 0.368 | 0.160 | 4.13 | +| Hibou-B | 0.457 | 0.289 | 0.964 | 0.803 | 0.835 | 0.696 | 0.354 | 0.133 | 9.63 | +| Hibou-L | 0.399 | 0.297 | 0.952 | 0.858 | 0.826 | 0.697 | 0.246 | 0.107 | 11.38 | +| H-optimus-0 | 0.565 | 0.304 | 0.973 | 0.897 | 0.883 | 0.803 | 0.377 | 0.153 | 4.25 | +| **Virchow v2** | 0.542 | 0.358 | 0.972 | 0.916 | 0.874 | 0.862 | 0.399 | 0.219 | **2.00** | +| Phikon v2 | 0.508 | 0.345 | 0.971 | 0.906 | 0.861 | 0.802 | 0.359 | 0.191 | 4.63 | +| Musk | 0.450 | 0.305 | 0.955 | 0.774 | 0.832 | 0.700 | 0.364 | 0.126 | 9.88 | +| UNI-2 | 0.575 | 0.325 | 0.969 | 0.917 | 0.868 | 0.858 | 0.353 | 0.164 | 4.25 | + +- 순위: Virchow v2 2.00 < Prov-GigaPath 4.13 < H-optimus-0 4.25 = UNI-2 4.25 < UNI 4.38 < Phikon v2 4.63. 구세대 CTransPath 7.00, RetCCL 9.63, ResNet-50 12.75. +- `계산값:` Virchow v2 상대 낙폭 PAM50 0.339, ER 0.058, PR 0.014, HER2 0.451. UNI는 PAM50 0.307, ER 0.085, PR 0.043, HER2 0.626. UNI-2는 PAM50 0.435, ER 0.054, PR 0.012, HER2 0.535. **우리가 쓰는 UNI 계열이 HER2에서 Virchow v2보다 더 크게 떨어진다**는 점은 기록해 둘 만하다. +- 표준편차는 MCCV에만 붙는다(예: Virchow v2 PAM50 ±0.041, HER2 ±0.115). 외부 HO는 단일 학습 단일 평가라 산포가 없다. +- `해석:` 어느 FM을 쓰든 HER2 PR-AUC는 내부에서도 0.25~0.40 수준에 그친다. 외부에서 무너지기 전에 이미 내부에서 약한 축이다. + +## 결과 2: MIL 3종과 클래스별 열화 + +### Table S4 원값 (아키텍처 3종 x 클래스 11개, 염색 정규화 없음) + +Supplementary Table S4가 실은 값을 그대로 옮긴다. 모두 Virchow v2 임베딩 위에서 얻은 값이고, PAM50은 F1, IHC는 PR-AUC다. RPD는 표에 적힌 대로이며, `(TCGA − CPTAC) / TCGA`로 33행 전부 검산해 어긋나는 행이 없었다. + +| MIL | Task | Class | 지표 | TCGA | CPTAC | RPD | +|---|---|---|---|---|---|---| +| CLAM | PAM50 | Basal-like | F1 | 0.852 | 0.693 | +0.187 | +| CLAM | PAM50 | HER2-enriched | F1 | 0.598 | 0.000 | **+1.000** | +| CLAM | PAM50 | Luminal A | F1 | 0.865 | 0.732 | +0.154 | +| CLAM | PAM50 | Luminal B | F1 | 0.629 | 0.200 | +0.682 | +| CLAM | PAM50 | Normal-like | F1 | 0.179 | 0.000 | **+1.000** | +| CLAM | ER | ER-negative | PR-AUC | 0.670 | 0.698 | **−0.042** | +| CLAM | ER | ER-positive | PR-AUC | 0.955 | 0.881 | +0.077 | +| CLAM | PR | PR-negative | PR-AUC | 0.901 | 0.764 | +0.152 | +| CLAM | PR | PR-positive | PR-AUC | 0.962 | 0.822 | +0.145 | +| CLAM | HER2 | HER2-negative | PR-AUC | 0.983 | 0.925 | +0.059 | +| CLAM | HER2 | HER2-positive | PR-AUC | 0.728 | 0.176 | +0.758 | +| DSMIL | PAM50 | Basal-like | F1 | 0.824 | 0.633 | +0.232 | +| DSMIL | PAM50 | HER2-enriched | F1 | 0.538 | 0.000 | **+1.000** | +| DSMIL | PAM50 | Luminal A | F1 | 0.862 | 0.745 | +0.136 | +| DSMIL | PAM50 | Luminal B | F1 | 0.607 | 0.242 | +0.601 | +| DSMIL | PAM50 | Normal-like | F1 | 0.353 | 0.062 | +0.824 | +| DSMIL | ER | ER-negative | PR-AUC | 0.810 | 0.713 | +0.120 | +| DSMIL | ER | ER-positive | PR-AUC | 0.978 | 0.854 | +0.127 | +| DSMIL | PR | PR-negative | PR-AUC | 0.876 | 0.788 | +0.101 | +| DSMIL | PR | PR-positive | PR-AUC | 0.959 | 0.811 | +0.154 | +| DSMIL | HER2 | HER2-negative | PR-AUC | 0.930 | 0.925 | +0.005 | +| DSMIL | HER2 | HER2-positive | PR-AUC | 0.329 | 0.123 | +0.626 | +| TransMIL | PAM50 | Basal-like | F1 | 0.969 | 0.739 | +0.237 | +| TransMIL | PAM50 | HER2-enriched | F1 | 0.912 | 0.000 | **+1.000** | +| TransMIL | PAM50 | Luminal A | F1 | 0.966 | 0.765 | +0.208 | +| TransMIL | PAM50 | Luminal B | F1 | 0.902 | 0.317 | +0.649 | +| TransMIL | PAM50 | Normal-like | F1 | 0.915 | 0.098 | +0.893 | +| TransMIL | ER | ER-negative | PR-AUC | 0.859 | 0.763 | +0.112 | +| TransMIL | ER | ER-positive | PR-AUC | 0.986 | 0.913 | +0.074 | +| TransMIL | PR | PR-negative | PR-AUC | 0.969 | 0.741 | +0.235 | +| TransMIL | PR | PR-positive | PR-AUC | 0.985 | 0.805 | +0.183 | +| TransMIL | HER2 | HER2-negative | PR-AUC | 0.904 | 0.904 | 0.000 | +| TransMIL | HER2 | HER2-positive | PR-AUC | 0.244 | 0.111 | +0.545 | + +원값이 들어오면서 본문 서술만으로는 보이지 않던 것들이 드러난다. + +- **HER2-enriched의 RPD=1.000은 세 아키텍처에서 모두 CPTAC F1이 정확히 0.000이기 때문이다.** 성능이 낮아진 것이 아니라 해당 클래스를 단 한 건도 맞히지 못했다는 뜻이다. 내부 F1은 CLAM 0.598, DSMIL 0.538, TransMIL 0.912로 서로 크게 다른데도 외부는 모두 0이다. +- **TransMIL의 내부 성능이 유독 높다.** 11개 클래스 중 Normal-like 0.915, HER2-enriched 0.912처럼 CLAM·DSMIL보다 0.3~0.7 높은 값이 여럿이다. 그런데 CPTAC 값은 세 모델이 비슷하게 낮아서, 결과적으로 TransMIL의 RPD가 가장 커진다. 내부 적합을 잘할수록 낙폭이 커 보이는 구조이므로, RPD를 아키텍처 간 우열 지표로 읽으면 안 된다. +- **유일한 음수 RPD는 CLAM의 ER-negative 하나뿐이다**(0.670 → 0.698, −0.042). 곧 외부에서 개선된 사례가 33개 중 1개다. +- HER2-양성은 내부부터 이미 약하다. TransMIL 0.244, DSMIL 0.329로 내부 PR-AUC가 0.35를 넘지 못한다. 외부 붕괴 이전에 과제 자체가 어렵다는 신호다. +- `해석:` 세 아키텍처가 서로 다른 내부 성능에서 출발해 같은 외부 바닥으로 수렴한다는 점이 저자 결론을 뒷받침한다. 열화는 aggregator 설계가 아니라 FM이 만든 특징 표현과 과제 자체에 뿌리를 둔다. +- **표기 불일치 하나**: Table S4 캡션은 TCGA 열을 "hold-out test score"라고 적지만, 본문은 이 단계의 내부 성능을 10-fold CV 평균으로 정의한다. 어느 쪽이 맞는지는 원문만으로 가릴 수 없어 `판독 불확실`로 남긴다. 다만 이 열의 값으로 계산한 RPD가 본문 Table 2의 RPD와 11/11 일치하므로, RPD 계산에 쓰인 내부값이 이 열이라는 사실은 확실하다. + +## 결과 3: 도메인 시프트 네 요인 (Table 2) + +네 요인의 정의는 다음과 같다. + +| 기호 | 이름 | 정의 | +|---|---|---| +| Δn | 염색 정규화 이득 | Macenko 정규화 학습·평가 후 외부 클래스 성능에서 원본 성능을 뺀 값. 3개 MIL 평균 | +| Δp | 유병률 시프트 | p_c(CPTAC) − p_c(TCGA) | +| d | 특징공간 발산 | 클래스별 상위 K=8 attention 패치 임베딩 중심점 사이 코사인 거리. 3개 MIL 평균 | +| B̃ | 형태 분리도 | min_{d≠c} B(c,d) − B(c,c). 병리의 두 명이 매긴 형태 특징의 유의한 효과크기 합에서 유도 | + +| Task | Class | Δn | Δp | d | B̃ | RPD | +|---|---|---|---|---|---|---| +| PAM50 | Basal-like | +0.015 | +0.132 | 0.139 | −0.125 | +0.219 | +| PAM50 | **HER2-enriched** | +0.000 | +0.025 | **0.197** | −0.904 | **+1.000** | +| PAM50 | Luminal A | −0.020 | −0.075 | 0.123 | +0.574 | +0.166 | +| PAM50 | Luminal B | +0.067 | −0.066 | 0.149 | +0.693 | +0.644 | +| PAM50 | Normal-like | +0.061 | −0.016 | 0.147 | **−1.232** | +0.906 | +| ER | ER-negative | −0.053 | +0.220 | 0.136 | +1.445 | +0.063 | +| ER | ER-positive | −0.038 | −0.220 | **0.105** | **+2.642** | +0.093 | +| PR | PR-negative | −0.028 | +0.143 | 0.112 | +1.080 | +0.163 | +| PR | PR-positive | −0.032 | −0.143 | 0.118 | +1.558 | +0.161 | +| HER2 | HER2-negative | +0.006 | +0.099 | 0.106 | −0.296 | **+0.021** | +| HER2 | HER2-positive | +0.035 | −0.099 | 0.115 | +0.419 | +0.643 | + +- 특징공간 발산은 HER2-enriched에서 최대(0.197), ER-양성에서 최소(0.105)다. DSMIL이 CLAM·TransMIL보다 일관되게 큰 거리를 낸다. +- 형태 분리도는 Normal-like −1.232에서 ER-양성 +2.642까지 퍼져 있다. 음수는 외부 코호트의 그 클래스가 자기 자신보다 다른 클래스와 더 닮았다는 뜻이다. +- 병리학자 두 명 사이의 일치도는 낮은 편이다: 순서형 특징 가중 κw 0.152~0.289, 이분형 κ 0.177~0.321. 저자들도 이를 B̃ 추정의 불확실성으로 인정한다. + +## 결과 4: 요인 회귀 (Table 3, n=11 클래스) + +BH 보정은 단변량 Spearman, 단변량 OLS 기울기, 다변량, 공선성의 네 묶음 안에서 각각 따로 적용했다. + +**단변량** + +| 요인 | Pearson r | Spearman ρ | q(ρ) | R² | β | q(β) | +|---|---|---|---|---|---|---| +| d | +0.759 | +0.755 | 0.029 * | 0.577 | +10.110 | 0.027 * | +| Δn | +0.692 | +0.673 | 0.047 * | 0.479 | +6.160 | 0.037 * | +| B̃ | −0.651 | −0.573 | 0.087 † | 0.424 | −0.204 | 0.040 * | +| Δp | −0.171 | −0.109 | 0.750 | 0.029 | −0.449 | 0.615 | + +**다변량 `RPD ~ Δn + d`**: R²=0.800, adj R²=0.750, F=16.03, q=0.005 * + +| 항 | β | Std Error | t | q | ΔR² | +|---|---|---|---|---|---| +| d | +7.9728 | 2.2215 | +3.589 | 0.011 * | 0.322 | +| Δn | +4.4456 | 1.4857 | +2.992 | 0.017 * | 0.224 | +| B̃ | +0.0125 | 0.0805 | +0.156 | 0.881 | 0.001 | + +**공선성** + +| 쌍 | Pearson r | Spearman ρ | q(ρ) | VIF | +|---|---|---|---|---| +| d ~ B̃ | −0.583 | −0.482 | 0.160 | 1.515 | +| Δn ~ d | +0.321 | +0.455 | 0.160 | 1.115 | +| Δn ~ B̃ | −0.639 | −0.691 | 0.056 † | 1.691 | + +- 80.0%라는 숫자의 정체는 `Δn`과 `d` 두 항만 넣은 최소 모형의 R²다. B̃는 단변량에서는 유의했지만 두 항이 들어오면 고유 기여가 사실상 0(ΔR²<0.001, q=0.881)이라 최종 모형에서 빠진다. 저자 설명은 B̃가 Δn·d와 겹치는 정보를 담고 있다는 것이다(Δn~B̃ ρ=−0.691). +- 결론 문장: 공변량 시프트(염색·특징공간)가 주범이고 사전 시프트(유병률)는 아니다. + +### Supplementary Figure S2·S3이 더해 주는 것 + +Figure S2는 네 요인 각각을 RPD에 회귀한 산점도 네 장이고, Figure S3은 B̃와 나머지 두 유의 요인의 공선성 산점도 두 장이다. 패널에 적힌 통계량은 본문 Table 3과 어긋나지 않는다. + +| 그림 | 관계 | R² | ρ | q | +|---|---|---|---|---| +| S2 | RPD ~ Δn | 0.479 | +0.673 | q(OLS) 0.037, q(ρ) 0.047 | +| S2 | RPD ~ Δp | 0.029 | −0.109 | q(OLS) 0.615, q(ρ) 0.750 | +| S2 | RPD ~ d | 0.577 | +0.755 | q(OLS) 0.027, q(ρ) 0.029 | +| S2 | RPD ~ B̃ | 0.424 | −0.573 | q(OLS) 0.040, q(ρ) 0.087 | +| S3 | Δn ~ B̃ | 0.409 | −0.691 | q 0.056 (비유의) | +| S3 | d ~ B̃ | 0.340 | −0.482 | q 0.160 (비유의) | + +- Figure S3의 R²(0.409, 0.340)는 본문 Table 3 공선성 절에 없는 값이다. 본문은 같은 쌍을 Pearson r(−0.639, −0.583)과 VIF(1.691, 1.515)로만 적는다. 부호와 크기는 서로 모순되지 않는다. +- 점 배치를 보면 네 패널 모두 HER2-enriched와 Normal-like가 RPD 1.0 부근 오른쪽 위에 따로 떨어져 있다. n=11에서 이 두 점이 적합을 상당 부분 끌고 간다. 영향점 진단(Cook's distance 등)은 원문에 없다. +- 축 라벨 일부가 PDF 폰트 인코딩 문제로 깨져 나온다(예: `Δp (p0e4a+e−ce 1()f2)`). 라벨 문자열은 `판독 불확실`로 두되, 패널의 통계량 수치는 깨지지 않았고 본문 Table 3과 일치해 신뢰할 수 있다. + +## Supplementary 확보로 바뀐 것과 남은 공백 + +**본문 서술과 충돌하거나 어긋나는 지점 (3건)** + +1. **FM 릴리스 기간**. 본문은 12종을 "July 2023–January 2025"로 묶지만 Table S1의 CTransPath와 RetCCL은 Dec 2021이다. 12종 중 10종만 그 기간에 든다. +2. **Table S4 캡션의 TCGA 열 정의**. 캡션은 "hold-out test score"라 적고 본문은 10-fold CV 평균이라 적는다. 어느 쪽이 맞는지 원문만으로 가릴 수 없다. +3. **Table S9의 n=275 귀속**. 코호트 하나당 패치 수(125+150)와 맞아떨어지지만 어느 코호트인지는 밝히지 않는다. + +셋 다 값 자체의 모순이 아니라 표기와 서술의 어긋남이다. Table S4·S5·S6·S7의 수치는 본문 Table 2와 11/11 일치하므로, 본문과 supplementary의 **숫자가 서로 다른 사례는 발견되지 않았다**. + +**여전히 `원문 미확인:`으로 남는 것 (4건)** + +1. FM 13종의 임베딩 차원. Table S1은 아키텍처 계열까지만 싣는다. +2. FM 가중치 버전 식별자(커밋 해시, 체크포인트 태그). +3. 형태 유사도 행렬 B(c,c')의 원소값과 rank-biserial 효과크기. +4. SlideFlow v3 preset의 3×2 stain matrix 성분값. 기준 최대 농도 [1.766, 1.280]만 공개되어 있다. + +**FM별 클래스별 원값은 애초에 존재하지 않는다.** 이것이 이번 확보로 확정된 가장 중요한 사실이다. 논문의 설계상 클래스 단위 성능은 최고 FM 하나(Virchow v2) 위에서 MIL 3종에 대해서만 계산했다(Table S4). FM 13종을 가로지르는 값은 본문 Table 1의 과제 단위 요약(macro-F1, PR-AUC) 하나뿐이며, 13 x 3 x 클래스 격자는 논문에 없다. 그 격자를 인용하려는 계획은 접어야 한다. + +## 염색 정규화 견고성 + +- 방법: 모든 패치에 Macenko 정규화를 적용한 뒤 특징을 뽑는다. PathBench-MIL이 SlideFlow 정규화 파이프라인의 population-level preset(v3)을 쓴다. 이 preset은 H와 E 염색 벡터를 RGB 공간에 담은 3×2 stain matrix와 기준 최대 농도 **[1.766, 1.280]**을 정의하며, 이 값은 TCGA 슬라이드 450장에서 뽑은 약 50,000개 패치의 Macenko 분해 파라미터 평균으로 추정한 것이다. +- 정규화는 feature bag 생성 시 패치 단위로, Virchow v2 특징 추출 직전에 적용한다. TCGA 모집단 기준으로 CPTAC까지 맞춘다. +- 정규화 TCGA로 학습해 정규화 CPTAC에서 평가하고, 클래스별 차이를 `n_c = Perf(normalised) − Perf(original)`로 정의한다(3개 MIL 평균). +### 기준 슬라이드에 관한 정정 + +찾던 "기준 슬라이드"는 **존재하지 않는다**. SlideFlow v3 preset은 단일 참조 슬라이드를 지정하는 방식이 아니라, TCGA 450장에서 뽑은 약 50,000 패치의 Macenko 분해 파라미터를 평균 낸 **모집단 수준 목표값**을 쓴다. 목표는 두 덩어리로 이뤄진다. 하나는 H와 E 염색 벡터를 RGB에 담은 3×2 stain matrix이고, 다른 하나는 기준 최대 농도 [1.766, 1.280]이다. 행렬 자체의 여섯 개 성분값은 원문에 적혀 있지 않으므로 `원문 미확인:`으로 남긴다. 우리가 같은 설정을 재현하려면 SlideFlow v3 preset을 직접 읽어야 한다. + +### Table S5 원값 (정규화 전후, 모두 CPTAC 외부 평가) + +`None`은 정규화 없이, `Macenko`는 정규화 후의 외부 성능이고 `Δn = Macenko − None`이다. 33행 전부 검산해 어긋나는 행이 없었다. + +| MIL | Task | Class | None | Macenko | Δn | +|---|---|---|---|---|---| +| CLAM | PAM50 | Basal-like | 0.693 | 0.682 | −0.011 | +| CLAM | PAM50 | HER2-enriched | 0.000 | 0.000 | +0.000 | +| CLAM | PAM50 | Luminal A | 0.732 | 0.740 | +0.008 | +| CLAM | PAM50 | Luminal B | 0.200 | 0.386 | **+0.186** | +| CLAM | PAM50 | Normal-like | 0.000 | 0.103 | +0.103 | +| CLAM | ER | ER-negative | 0.698 | 0.733 | +0.035 | +| CLAM | ER | ER-positive | 0.881 | 0.911 | +0.030 | +| CLAM | PR | PR-negative | 0.764 | 0.733 | −0.031 | +| CLAM | PR | PR-positive | 0.822 | 0.758 | −0.064 | +| CLAM | HER2 | HER2-negative | 0.925 | 0.933 | +0.008 | +| CLAM | HER2 | HER2-positive | 0.176 | 0.234 | +0.058 | +| DSMIL | PAM50 | Basal-like | 0.633 | 0.694 | +0.061 | +| DSMIL | PAM50 | HER2-enriched | 0.000 | 0.000 | +0.000 | +| DSMIL | PAM50 | Luminal A | 0.745 | 0.732 | −0.013 | +| DSMIL | PAM50 | Luminal B | 0.242 | 0.246 | +0.004 | +| DSMIL | PAM50 | Normal-like | 0.062 | 0.160 | +0.098 | +| DSMIL | ER | ER-negative | 0.713 | 0.685 | −0.028 | +| DSMIL | ER | ER-positive | 0.854 | 0.873 | +0.019 | +| DSMIL | PR | PR-negative | 0.788 | 0.771 | −0.017 | +| DSMIL | PR | PR-positive | 0.811 | 0.828 | +0.017 | +| DSMIL | HER2 | HER2-negative | 0.925 | 0.917 | −0.008 | +| DSMIL | HER2 | HER2-positive | 0.123 | 0.140 | +0.017 | +| TransMIL | PAM50 | Basal-like | 0.739 | 0.735 | −0.004 | +| TransMIL | PAM50 | HER2-enriched | 0.000 | 0.000 | +0.000 | +| TransMIL | PAM50 | Luminal A | 0.765 | 0.710 | −0.055 | +| TransMIL | PAM50 | Luminal B | 0.317 | 0.329 | +0.012 | +| TransMIL | PAM50 | Normal-like | 0.098 | 0.080 | −0.018 | +| TransMIL | ER | ER-negative | 0.763 | 0.598 | **−0.165** | +| TransMIL | ER | ER-positive | 0.913 | 0.751 | **−0.162** | +| TransMIL | PR | PR-negative | 0.741 | 0.705 | −0.036 | +| TransMIL | PR | PR-positive | 0.805 | 0.757 | −0.048 | +| TransMIL | HER2 | HER2-negative | 0.904 | 0.923 | +0.019 | +| TransMIL | HER2 | HER2-positive | 0.111 | 0.141 | +0.030 | + +- **HER2-enriched는 세 아키텍처 모두 정규화 전후가 0.000이다.** 정규화가 효과 없다기보다, 이미 바닥이라 움직일 자리가 없다고 읽는 편이 정확하다. Δn=0.000이라는 값을 "염색이 원인이 아니다"의 근거로 인용하면 오독이 된다. +- **정규화가 손해인 경우가 33건 중 13건이다.** 특히 TransMIL의 ER에서 −0.165, −0.162로 크게 떨어진다. Macenko를 일괄 적용하는 것이 안전한 기본값이 아니라는 실측 근거다. +- 가장 크게 회복된 것은 CLAM의 Luminal B(+0.186)와 Normal-like(+0.103)다. +- 부호가 아키텍처마다 뒤집히는 클래스가 있다. Basal-like는 CLAM −0.011, DSMIL +0.061, TransMIL −0.004이고, Luminal A는 CLAM +0.008, DSMIL −0.013, TransMIL −0.055다. 본문 Table 2가 쓰는 Δn은 이 셋의 평균이라 이런 상쇄가 가려진다. +- `해석:` Δn이 RPD와 양의 상관을 갖는다는 것은, 정규화로 회복되는 클래스일수록 원래 낙폭이 컸다는 뜻이다. 저자들은 이를 Virchow v2가 형태 정보와 색 의존 정보를 모든 클래스에서 분리해 내지는 못했다는 근거로 읽는다. + +## 클래스 유병률 (Table S6) + +p는 각 코호트 안에서 그 클래스가 차지하는 비율이고, Δp = p(CPTAC) − p(TCGA)다. 11행 전부 검산해 일치했고, PAM50 다섯 아형의 합은 TCGA 0.999, CPTAC 1.001로 반올림 오차 범위 안이다. + +| Task | Class | p(TCGA) | p(CPTAC) | Δp | +|---|---|---|---|---| +| PAM50 | Basal-like | 0.170 | 0.302 | **+0.132** | +| PAM50 | HER2-enriched | 0.076 | 0.101 | +0.025 | +| PAM50 | Luminal A | 0.525 | 0.450 | −0.075 | +| PAM50 | Luminal B | 0.179 | 0.114 | −0.066 | +| PAM50 | Normal-like | 0.049 | 0.034 | −0.016 | +| ER | ER-negative | 0.160 | 0.380 | **+0.220** | +| ER | ER-positive | 0.840 | 0.620 | **−0.220** | +| PR | PR-negative | 0.312 | 0.455 | +0.143 | +| PR | PR-positive | 0.688 | 0.545 | −0.143 | +| HER2 | HER2-negative | 0.793 | 0.891 | +0.099 | +| HER2 | HER2-positive | 0.207 | 0.108 | −0.099 | + +- **가장 중요한 용어 정리**: 이 논문에서 `Δn`은 유병률과 아무 관계가 없다. Δn은 Macenko 정규화 이득이고, 유병률 차이는 `Δp`다. 두 기호를 바꿔 인용하면 결론이 뒤집힌다. Δn은 유의하고(q=0.037) Δp는 유의하지 않기(q=0.615) 때문이다. +- CPTAC이 TCGA보다 훨씬 공격적인 구성이다. Basal-like가 0.170에서 0.302로 늘고 ER-음성이 0.160에서 0.380으로 두 배 넘게 는다. HER2-양성은 반대로 0.207에서 0.108로 줄어든다. +- `해석:` 방향이 흥미롭다. 외부에서 **더 흔해진** ER-음성(Δp=+0.220)은 RPD가 0.063으로 가장 안정적인 축에 들고, 외부에서 **더 드물어진** HER2-양성(Δp=−0.099)은 RPD 0.643이다. 유병률이 낮아지는 쪽이 무너진다는 그림이 눈에는 보이지만, 회귀에서는 Δp의 설명력이 R²=0.029에 그쳐 통계적으로 지지되지 않는다. 저자들이 사전 시프트를 기각한 근거가 이 대비다. +- Δn 계산 근거로 오해할 여지가 있어 못 박아 둔다. Δn은 Table S5의 정규화 전후 차이에서 나오고, Table S6은 Δp의 근거일 뿐이다. + +## 코사인 중심점 거리 (Table S7) + +Virchow v2 임베딩 공간에서 클래스별 TCGA 중심점과 CPTAC 중심점 사이의 코사인 거리다. 각 WSI에서 attention 상위 K=8 패치를 골라 계산했고, `d`는 세 아키텍처의 산술 평균이다. 11행 모두 평균이 맞는지 검산해 일치했다. + +| Task | Class | CLAM | DSMIL | TransMIL | d (평균) | +|---|---|---|---|---|---| +| PAM50 | Basal-like | 0.099 | 0.222 | 0.096 | 0.139 | +| PAM50 | HER2-enriched | 0.118 | 0.365 | 0.109 | **0.197** | +| PAM50 | Luminal A | 0.096 | 0.184 | 0.087 | 0.123 | +| PAM50 | Luminal B | 0.123 | 0.204 | 0.121 | 0.149 | +| PAM50 | Normal-like | 0.103 | 0.232 | 0.106 | 0.147 | +| ER | ER-negative | 0.096 | 0.208 | 0.102 | 0.136 | +| ER | ER-positive | 0.098 | 0.125 | 0.093 | **0.105** | +| PR | PR-negative | 0.093 | 0.133 | 0.111 | 0.112 | +| PR | PR-positive | 0.100 | 0.139 | 0.114 | 0.118 | +| HER2 | HER2-negative | 0.091 | 0.145 | 0.082 | 0.106 | +| HER2 | HER2-positive | 0.098 | 0.153 | 0.096 | 0.115 | + +- 평균 d 열은 본문 Table 2의 d와 11개 값이 모두 같다. 본문과 supplementary가 어긋나지 않는다. +- **DSMIL이 다른 둘보다 일관되게 큰 거리를 낸다.** CLAM은 0.091~0.123, TransMIL은 0.082~0.121로 좁은 범위에 모여 있는데 DSMIL만 0.125~0.365로 넓다. 곧 평균 d의 클래스 간 변이는 상당 부분 DSMIL이 만든다. HER2-enriched가 최대값 0.197을 받은 것도 DSMIL의 0.365 덕이 크고, CLAM(0.118)과 TransMIL(0.109)만 보면 다른 클래스와 크게 다르지 않다. +- `해석:` d가 RPD를 가장 잘 설명하는 요인(R²=0.577)인데 그 d의 분산이 한 아키텍처의 attention 분포에 크게 기대고 있다. 저자들이 세 모델 평균을 쓴 것은 합리적이나, "특징공간 발산이 주범"이라는 결론의 견고성은 DSMIL 의존도만큼 약해진다. 원문이 이 점을 짚지 않으므로 우리 추론으로 표시해 둔다. + +## 형태 특징 실측값 (Table S8) + +병리학자 두 명의 점수를 평균한 값이고, 클래스마다 코호트별 25개 패치의 평균이다. 튜불 형성과 핵 다형성은 1~3 순서형, 유사분열은 개수, 나머지 셋은 유무(0/1)를 평균한 값이라 0~1 사이에 놓인다. + +| Task | Class | Cohort | 튜불형성 | 핵다형성 | 유사분열 | 종양괴사 | 림프구침윤 | 다형핵구침윤 | +|---|---|---|---|---|---|---|---|---| +| PAM50 | Basal-like | CPTAC | 2.76 | 2.14 | 0.48 | 0.46 | 0.98 | 0.60 | +| PAM50 | Basal-like | TCGA | 2.72 | 2.88 | 0.58 | 0.56 | 0.54 | 0.78 | +| PAM50 | HER2-enriched | CPTAC | 2.76 | 1.96 | 0.60 | 0.48 | 0.76 | 0.52 | +| PAM50 | HER2-enriched | TCGA | 2.82 | 2.78 | 0.38 | 0.48 | 0.96 | 0.72 | +| PAM50 | Luminal A | CPTAC | 2.14 | 1.42 | 0.02 | 0.36 | 0.50 | 0.06 | +| PAM50 | Luminal A | TCGA | 1.64 | 1.52 | 0.12 | 0.00 | 0.56 | 0.12 | +| PAM50 | Luminal B | CPTAC | 2.38 | 1.76 | 0.26 | 0.12 | 0.88 | 0.32 | +| PAM50 | Luminal B | TCGA | 2.20 | 2.26 | 0.28 | 0.10 | 0.80 | 0.22 | +| PAM50 | Normal-like | CPTAC | 2.62 | 1.96 | 0.28 | 0.26 | 0.80 | 0.32 | +| PAM50 | Normal-like | TCGA | 1.36 | 1.34 | 0.00 | 0.00 | 0.80 | 0.04 | +| ER | ER-negative | CPTAC | 2.80 | 2.66 | 0.68 | 0.44 | 0.86 | 0.54 | +| ER | ER-negative | TCGA | 2.72 | 2.60 | 0.30 | 0.54 | 0.62 | 0.76 | +| ER | ER-positive | CPTAC | 2.44 | 1.94 | 0.26 | 0.24 | 0.90 | 0.24 | +| ER | ER-positive | TCGA | 2.40 | 2.20 | 0.12 | 0.06 | 0.94 | 0.26 | +| PR | PR-negative | CPTAC | 2.68 | 2.10 | 0.44 | 0.44 | 0.84 | 0.56 | +| PR | PR-negative | TCGA | 2.72 | 2.50 | 0.36 | 0.72 | 0.66 | 0.78 | +| PR | PR-positive | CPTAC | 2.42 | 1.72 | 0.16 | 0.22 | 0.84 | 0.38 | +| PR | PR-positive | TCGA | 2.34 | 1.90 | 0.08 | 0.12 | 0.64 | 0.32 | +| HER2 | HER2-negative | CPTAC | 2.58 | 1.86 | 0.30 | 0.26 | 0.94 | 0.48 | +| HER2 | HER2-negative | TCGA | 2.50 | 2.36 | 0.24 | 0.16 | 0.48 | 0.34 | +| HER2 | HER2-positive | CPTAC | 2.62 | 2.22 | 0.38 | 0.34 | 0.82 | 0.46 | +| HER2 | HER2-positive | TCGA | 2.62 | 2.78 | 0.28 | 0.36 | 0.56 | 0.44 | + +- **핵 다형성이 11개 클래스 가운데 10개에서 CPTAC 쪽이 낮다.** 유일한 예외는 ER-음성(CPTAC 2.66 대 TCGA 2.60)이다. 계통적인 방향성이므로 클래스 고유의 생물학이 아니라 코호트 사이 주석 기준이나 슬라이드 품질 차이일 가능성이 있다. 원문은 이 패턴을 따로 언급하지 않는다. +- **Normal-like의 코호트 간 격차가 가장 크다.** 튜불 형성이 TCGA 1.36에서 CPTAC 2.62로, 핵 다형성이 1.34에서 1.96으로 벌어진다. B̃가 −1.232로 최저인 것과 방향이 맞는다. +- 림프구 침윤은 반대로 CPTAC이 대체로 높다. HER2-음성은 TCGA 0.48에서 CPTAC 0.94로 거의 두 배다. +- **`원문 미확인:` 형태 유사도 행렬 B(c,c') 자체는 어디에도 실려 있지 않다.** Table S8이 싣는 것은 B를 만들기 전 단계의 원자료(특징별 평균값)이고, Mann-Whitney 검정의 rank-biserial 효과크기와 그것을 합산한 11×11 행렬은 본문에도 supplementary에도 없다. 클래스별 요약값인 B̃만 본문 Table 2에 있다(Normal-like −1.232에서 ER-양성 +2.642). 우리가 이 행렬을 인용하려면 저자에게 요청해야 한다. + +## 병리학자 일치도 (Table S9) + +패치 275개를 이미지 식별자로 맞춘 뒤 계산했다. 순서형 세 가지는 선형 가중 κw, 이분형 세 가지는 Cohen's κ이며, 해석 구간은 Landis & Koch(1977)를 따른다. + +| 구분 | Feature | 통계량 | n | 값 | 해석 | +|---|---|---|---|---|---| +| 순서형 | Tubule Formation | κw | 275 | 0.289 | fair | +| 순서형 | Nuclear Pleomorphism | κw | 275 | 0.285 | fair | +| 순서형 | Mitotic Activity | κw | 275 | **0.152** | slight | +| 이분형 | Necrosis | κ | 275 | 0.177 | slight | +| 이분형 | Lymphocytic Infiltrate | κ | 275 | 0.185 | slight | +| 이분형 | PMN Infiltrate | κ | 275 | **0.321** | fair | + +- 여섯 가지 모두 slight 또는 fair에 머물고 moderate(0.41 이상)에 닿는 항목이 하나도 없다. 최고가 PMN 침윤 0.321, 최저가 유사분열 0.152다. +- n=275는 코호트 하나당 패치 수다. PAM50 125장과 IHC 150장을 더한 값이며, 두 코호트를 합친 550장이 아니다. 원문은 "the same set of 275 representative patches"라고만 적어 어느 코호트인지 밝히지 않으므로, 코호트 귀속은 `판독 불확실`로 남긴다. +- `해석:` B̃는 이 여섯 특징에서 유도되는데 그 여섯이 전부 낮은 일치도 위에 서 있다. B̃가 다변량에서 탈락한 것(ΔR²<0.001)을 두고 "형태 분리도는 중요하지 않다"고 읽으면 위험하다. 측정 잡음이 커서 신호가 희석된 경우와 구분되지 않기 때문이다. 저자들도 한계 절에서 같은 취지를 인정한다. + +## 한계 (원문 Limitations 절 전체) + +저자들이 든 항목은 넷이다. + +1. **냉동 조직 한정**. TCGA·CPTAC 모두 flash-frozen으로 제한해 임상에서 흔한 FFPE로 일반화되지 않는다. 확인한 공변량 요인이 FFPE 코호트의 시프트 원인을 다 담지 못할 수 있다. +2. **FM 목록의 시점 한계와 선택 절차**. 2025년 초 공개된 FM(H-optimus-1 등)은 가중치를 구할 수 없어 빠졌다. 또한 FM 선택을 baseline CLAM 하나로 했으므로, 최적화된 MIL 구성에서는 순위가 달라질 수 있다. Ma et al.이 독립적으로 Virchow v2 우위를 보고한 점이 이 우려를 부분적으로 덜어 준다고 적는다. +3. **회귀의 표본 크기**. 클래스 11개뿐이라 탐색적이다. PAM50과 IHC를 과제 유형 공변량 없이 합쳤고, 요인이 과제와 무관한 클래스 수준 기전으로 작동한다는 가정은 검증되지 않았다. 결과는 가설 생성으로 읽어야 한다. +4. **병리 주석의 불확실성**. 병리학자 두 명 사이의 일치도가 낮고(κw 0.152~0.289, κ 0.177~0.321) 클래스당 패치가 25개뿐이라 B̃의 견고성이 떨어진다. 저자들은 통상 조직학적 등급 매기기보다 이 주석 과제가 훨씬 주관적이라고 변호하면서도, B̃와 RPD의 단변량 연관을 해석할 때 고려할 불확실성이라고 인정한다. + +## 이 논문이 하지 않은 것 (전문 확인) + +Paper C 방어에 바로 쓰는 목록이다. 각 항목은 전문 문자열 검색과 정독으로 확인했다. + +| 항목 | 판정 | 근거 | +|---|---|---| +| 기관(tissue source site) 통제 분할 | **없음** | `tissue source site`·`submitter`·`batch`·`scanner` 각 0회. 분할은 환자 층화만 | +| 사전등록 | **없음** | `preregist`·`pre-regist`·`registered` 0회 | +| 치료 라우팅 / 치료 배정 | **없음** | `decision` 0회, `trastuzumab` 본문 0회, `therap`은 서론의 "therapeutic responses" 1회뿐 | +| 의사결정 비용·효용 분석 | **없음** | `cost`는 전부 "분자검사가 비싸다"는 동기 문장(초록·서론 3회). `utility`·`net benefit` 0회 | +| 확률 보정(calibration)·기권 | **없음** | `calibrat` 0회 | +| 임상 효용·전향 검증 | **없음** | `clinical deployment` 0회. 저자 스스로 exploratory·hypothesis-generating으로 한정 | +| 다암종 | **없음** | 유방 단일. `pan-cancer` 0회 | +| AUROC 보고 | **없음** | `AUROC`·`AUC-ROC` 0회. macro-F1과 PR-AUC만 | +| 다중 외부 코호트 | **없음** | CPTAC 하나 | +| FFPE | **없음** | 명시적으로 제외하고 한계로 인정 | + +- `해석:` 그들이 남긴 공백은 두 갈래다. 하나는 **분할 엄밀성**(기관 통제·사전등록)이고, 다른 하나는 **결정 층위**(예측 정확도 위에 올라가는 라우팅 비용·보정·기권)다. 우리 Paper C는 뒤쪽을 헤드라인으로 삼고, 앞쪽은 내부 수치의 성격 차이를 설명하는 데 쓴다. + +## 우리 적용 (BIOP02) + +1. **인용 필수**. 같은 코호트, 같은 과제, 같은 동기로 이미 출판되었으므로 미인용은 리뷰어의 첫 지적이 된다. +2. **한 줄 양보 후 전환**. 예측 정확도 표로 맞서지 않는다. 이 논문의 외부 붕괴를 SUBSTITUTABILITY_LAW의 외부 근거로 재배치한다. +3. **HER2 수렴을 명시**. 그들 HER2-enriched RPD=1.000, HER2-양성 RPD=0.643. 우리 HER2 내부 AUROC 0.599, 외부 0.530. 지표가 달라 수치는 못 겹치지만 결론 방향은 같다. 독립 재현으로 서술한다. +4. **분할 대조는 가설로만**. 그들이 기관을 통제하지 않았다는 것은 사실이고, 그것이 내부 수치를 부풀렸다는 것은 우리 추론이다. 원인 단정 금지. +5. **UNI 계열 주의**. Table 1에서 UNI의 HER2 낙폭(계산값 0.626)이 Virchow v2(0.451)보다 크다. 우리 파이프라인이 UNI v1 기반이므로 "FM을 바꾸면 해결된다"는 반론에 대비해 이 숫자를 들고 있어야 한다. + +## 심층 + +한계 평가, 산업·재현 관점, 방법론 상세, Paper C 정면 대조는 각각 `_lens-academic.md`, `_lens-industry.md`, `_methodology-brief.md`, `_comparison-with-biop02.md` 참고. diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_lens-academic.md b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_lens-academic.md index 7897d8d..350bc73 100644 --- a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_lens-academic.md +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_lens-academic.md @@ -1,30 +1,34 @@ -# fernandez-romero-2026-domaingen — Lens: Academic - -## Novelty 평가 -개별 부품(H&E→PAM50/IHC 예측, FM×MIL 벤치, TCGA→CPTAC 외부검증)은 모두 선행이 있으나, **진짜 기여는 "외부검증 붕괴를 계량하고 그 원인을 요인분해한 것"** — 대부분 논문이 internal validation만 보고하던 관행을 정면으로 반박. RPD로 열화를 정규화하고 4개 도메인 시프트 요인을 회귀해 **staining variability + feature space divergence가 80%(R²=0.800)** 설명한다는 결과가 방법론적 알맹이. 예측 SOTA 경쟁이 아니라 **negative/diagnostic** 논문이라는 점이 신규성의 성격(따라서 값이 낮은 게 결함이 아니라 메시지). - -## Rigor 평가 -- 강점: **13 FM × 3 MIL 전조합**(단일 모델 우연 배제), RPD 정규화, 아형별(HER2-enriched RPD=1.00) 층화, 요인 회귀로 원인까지 추적. 외부 코호트(CPTAC)를 실제로 돌림. -- 약점: **외부검증이 CPTAC 단일**이고 **flash-frozen**이라 조직준비 축과 코호트 축이 교락(FFPE↔frozen 자체가 거대 시프트). 저자도 **"exploratory"**로 한정. 지표가 PR-AUC/macro-F1이라 문헌 AUROC와 비교 곤란. - -## BIOP02와의 중복 (굵게 = 직접 충돌 = NEAREST SCOOP) -- **같은 task family: H&E FM+MIL → PAM50 + ER/PR/HER2** -- **같은 코호트·설계: TCGA-BRCA CV → CPTAC-BRCA 외부검증** -- **같은 동기: "PAM50·IHC는 비싸고 많은 세팅에서 이용 불가"** -- **같은 실패 재현: HER2 외부 붕괴**(그들 RPD=1.00 ↔ 우리 registry HER2 외부 AUC 0.530 reject) - -## 차별점 (우리의 방어선) -- 그들은 **예측 정확도**(PR-AUC/F1)를 잰다 → 우리는 **결정-가치·치환가능성**(형태 예측이 *언제* 분자검사를 값싸게 대체하나)을 mis-routing cost × therapeutic distance로 잰다. -- 그들의 **외부 붕괴 발견이 오히려 우리 논지를 지지**: "예측만으로는 취약 → 치환에는 비용이 있고 보정·기권이 필요"(SUBSTITUTABILITY_LAW의 외부 근거). -- 우리는 **다암종 결정지도**(유방 anchor + 폐·대장·위·두경부) — 그들은 유방 단일. -- (계획) 우리는 **치료-결과 anchor**(trastuzumab)로 라우팅 비용을 임상에 정박 — 그들엔 없음. - -## 인용 포인트 -- "H&E→분자 예측 + 외부검증 열화는 이미 출판됨[Fernandez-Romero 2026], 특히 HER2-enriched RPD=1.00 붕괴는 우리 HER2 reject와 일관" — **정성 한 줄 양보 후 즉시 결정-가치 프레임으로 전환.** -- CPTAC 도메인 붕괴 + "staining/feature-space가 80% 설명"을 **우리 AI 결정레이어(보정/기권)의 동기**로 인용. -- **주의:** 예측 정확도를 헤드라인으로 삼으면 정면 스쿱. figure로 방어하지 말 것(한 줄 인용까지). - -## 검증 플래그 -- 이중확인(OpenAlex abstract + PMC): 설계·코호트·HER2/Normal-like 붕괴·R²=0.800·지표종류. -- PMC quote-demand 재확인: MIL 3종·Virchow HER2 0.399→0.219·CPTAC flash-frozen. -- 우리 대비 수치(HER2 외부 AUC 0.530, ER 0.894 vs subtype_only 0.918 p=0.613)는 `experiments/registry/cross_validation_registry.jsonl`(AUROC) — 그들 PR-AUC와 **지표 상이, 직접 대조 불가**. +# Fernandez-Romero et al., 2026 (MBEC domain generalisation) — lens: academic + +> 근거: `_core.md` + `sources/` 전문. 2026-09-02 전문 기반 재작성. 학술 기여, 한계, 우리 원고 방어선 관점. + +## 학술적 기여 + +- **관행 반박**. 대부분의 H&E 분자분류 연구가 같은 기관 내부 검증만 보고한다는 점을 정면으로 겨냥해, 외부 코호트에서 무엇이 무너지는지를 클래스 단위로 보여 준다. 저자들이 비판 대상으로 지목한 유형은 셋이다: 어려운 아형을 아예 빼는 연구, 기관이 겹치는 데이터셋에서 평가한 연구, 불균형을 무시한 지표만 보고하고 클래스별 외부 검증을 하지 않은 연구. +- **RPD라는 공통 자**. macro-F1(PAM50)과 PR-AUC(IHC)처럼 척도가 다른 지표를 비율 낙폭으로 정규화해 한 회귀에 올린다. 관측치를 5개(PAM50만)에서 11개(PAM50+IHC)로 늘리려는 실용적 선택이기도 하다. +- **원인까지 간다**. 열화를 보고하는 데서 멈추지 않고 네 요인(염색 변이, 유병률 시프트, 특징공간 발산, 형태 분리도)을 각각 측정 가능한 양으로 정의한 뒤 회귀한다. 결론은 공변량 시프트 우위이고, 사전 시프트(유병률)는 유의하지 않다(q=0.615). 도메인 일반화 문헌의 통설과 같은 방향이지만 병리 FM 맥락에서 수치로 붙인 사례는 드물다. +- **아키텍처 비의존성 확인**. Optuna로 각각 최적화한 CLAM, TransMIL, DSMIL 세 계열에서 열화 패턴이 같다는 것을 보여, 문제를 aggregator 설계가 아니라 FM의 특징 표현 쪽으로 돌린다. HER2-enriched RPD=1.000이 세 모델 모두에서 나온다는 점이 그 근거의 핵심이다. +- **형태학 주석의 결합**. 병리 두 명이 대표 패치 275장에 튜불 형성, 핵 다형성, 유사분열 수, 괴사, 림프구 침윤, 다형핵구 침윤을 매기고, 그 효과크기 합으로 클래스 사이 형태 유사도 행렬을 만들었다. 계산 지표만으로 끝내지 않고 사람 관찰을 넣은 설계다. + +## 한계 (우리 원고의 대비축) + +- **내부 분할이 환자 층화에 그친다**. 원문은 "patient-stratified MCCV with 10 random splits"이고 fold 배정 단위는 환자다. 제출 기관(TCGA tissue source site)은 어디에서도 통제하지 않는다. 전문에 `tissue source site`, `submitter`, `batch`, `scanner`가 전부 0회다. Howard 2021이 보고한 기관 서명이 fold를 가로질러 남아 있으면 내부 성능이 위로 편향되고, RPD의 분모가 커진 만큼 열화가 커 보인다. 저자들은 이 가능성을 언급하지 않는다. +- **외부 코호트가 하나다**. CPTAC 단일이라 "CPTAC 특유의 무엇" 과 "일반적 도메인 시프트"를 가를 수 없다. +- **관측치 11개의 회귀**. 저자 스스로 탐색적이라 못 박는다. 다변량 모형에 항이 둘, 표본이 11이라 자유도가 빠듯하고, PAM50과 IHC를 과제 공변량 없이 합친 가정도 검증되지 않았다. +- **형태 주석의 신뢰도가 낮다**. 두 병리 사이 일치도가 κw 0.152~0.289(순서형), κ 0.177~0.321(이분형)로 Landis-Koch 기준 slight~fair에 머문다. 클래스당 패치도 25장뿐이다. B̃가 최종 모형에서 빠진 것이 통계적 이유(공선성) 때문인지 측정 잡음 때문인지 구분되지 않는다. +- **HER2 축은 내부에서 이미 약하다**. Table 1의 HER2 PR-AUC 내부 최고가 Virchow v2 0.399다. 외부 붕괴를 논하기 전에 내부에서도 쓸 만한 수준이 아니다. 논문은 이 층위 구분을 하지 않고 열화 서사 안에 묶는다. +- **냉동 조직 한정**. 두 코호트 모두 flash-frozen이라 임상 주류인 FFPE에 대해서는 아무것도 말하지 못한다. 저자들도 첫 번째 한계로 든다. +- **결정 층위가 없다**. 예측 정확도와 그 낙폭에서 끝난다. 이 예측을 실제 치료 배정에 쓸 때 무엇을 잃는지, 어디서 기권해야 하는지는 다루지 않는다(`decision` 0회, `calibrat` 0회, `utility` 0회). + +## 우리 원고(Paper C) 방어선 + +- **"이미 출판된 것 아닌가"**: 맞다. H&E FM+MIL로 유방 분자 아형을 예측하고 TCGA→CPTAC에서 열화를 보는 실험은 이 논문이 먼저 했다. 그래서 우리는 예측 정확도를 헤드라인으로 삼지 않는다. 우리 기여는 그 예측을 치료 라우팅에 썼을 때의 치환비용 지도이며, 그 층위는 이 논문에 없다. +- **"내부 수치가 왜 그렇게 다른가"**: 두 연구의 내부 숫자는 성격이 다르다. 그들은 환자 층화 랜덤 분할이고 우리는 기관 분리를 강제한 사전 고정 분할이다. 지표도 macro-F1·PR-AUC 대 AUROC로 다르다. 같은 자에 올려 비교할 수 없다는 점을 먼저 밝히고, 분할 설계가 낙폭 차이의 후보 설명이라는 것은 가설로만 적는다. +- **"HER2 결과가 겹치는데"**: 겹치는 것이 우리에게 유리하다. 서로 다른 분할 설계, 다른 FM(그들 Virchow v2, 우리 UNI), 다른 지표에서 같은 방향의 실패가 나왔다면 이는 HER2 형태 예측의 한계가 방법 선택에 의존하지 않는다는 수렴 증거다. 독립 재현으로 서술한다. +- **"FM을 바꾸면 되지 않나"**: 그들 Table 1이 그 반론을 스스로 막는다. 13개 FM 중 최고 모형도 외부에서 무너지고, 우리가 쓰는 UNI는 HER2 상대 낙폭이 오히려 더 크다(계산값 0.626 대 Virchow v2 0.451). 저자 결론도 aggregator나 encoder 교체로는 풀리지 않는다는 쪽이다. +- **판별력 보존과 결정 안전성 붕괴의 해리**: 우리 CPTAC 결과에서 AUROC는 대체로 유지되는데 라우팅·보정 층은 무너진다. 이 해리는 그들 지표 체계(macro-F1·PR-AUC)로는 드러나지 않는다. 정확도 한 축만 보면 놓치는 실패 양식이 있다는 것이 우리 방법론 기여의 근거다. + +## 후속 연구 제언 (저자 제시 + 우리 관점) + +- 저자 제시: 더 크고 다양한 코호트, Ki67 같은 추가 분자 클래스, FFPE 데이터셋. 특징 표현 수준의 도메인 적응 기법(LoRA, Specialised Model-Sample Matching, Mix-of-Adapters). +- 우리 관점 추가: 기관 분리 분할로 내부 성능을 다시 재면 RPD가 얼마나 줄어드는지 재는 실험이 비어 있다. 이 논문이 남긴 가장 값싼 후속이고, 우리 site-disjoint 결과가 그 방향의 간접 증거를 이미 갖고 있다. diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_lens-industry.md b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_lens-industry.md index 413cf58..30480f1 100644 --- a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_lens-industry.md +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_lens-industry.md @@ -1,33 +1,59 @@ -# fernandez-romero-2026-domaingen — Lens: Industry / Reproducibility +# Fernandez-Romero et al., 2026 (MBEC domain generalisation) — lens: industry / reproducibility -## 코드 가용성 -- **공개(Code Availability 명시).** 저자 스크립트는 **CLAM repo fork + PathBench-MIL** 기반. - - https://github.com/BIGS-investigacion/CLAiMem-ALL.git - - https://github.com/BIGS-Investigacion/PathBench-MIL.git -- MIL 백본(CLAM/TransMIL/DSMIL)이 모두 오픈소스 표준 구현이라 파이프라인 재현 장벽 낮음. (repo 내용·라이선스·실제 실행성은 미검증 → 재사용 전 확인) +> 근거: `_core.md` + 전문. 2026-09-02 전문 기반 재작성. 도구 선택, 재현 비용, 우리 파이프라인 적용 관점. + +## 코드·프레임워크 + +- 공개 저장소 둘을 쓴다. CLAM 저장소 fork(`BIGS-investigacion/CLAiMem-ALL`)와 PathBench-MIL fork(`BIGS-Investigacion/PathBench-MIL`). 원문은 "all scripts are publicly available"이라고 적는다. +- 스택은 표준 조합이다. CLAM 전처리(조직 분할 포함), PathBench-MIL로 MIL 학습·튜닝, Optuna로 하이퍼파라미터 탐색, SlideFlow로 염색 정규화, scikit-learn으로 지표 계산. +- Optuna 설정은 본문에 있다. 50 trial, pruning 적용, validation set(학습셋의 10%)에서 mean average precision 최대화. 탐색 대상은 embedding dimension(z_dim 32~512)과 bag size(8~256) 둘뿐이고, 나머지(cross-entropy, ReLU, Adam)는 CLAM baseline 설정으로 고정한다. +- 저장소 실제 실행성, 라이선스, 커밋 상태는 확인하지 않았다. 재사용 전에 직접 봐야 한다. ## 데이터 가용성 -- **명시적 Data Availability 문장 없음([미확인 — NOT FOUND]).** 단 두 코호트 모두 공개 리소스: - - **TCGA-BRCA**(1,522 slide / 1,079 pt, FFPE) — GDC portal, 우리 Paper A scope와 동일 출처. - - **CPTAC-BRCA**(387 flash-frozen slide / 120 pt) — IDC `gs://` bucket, 우리 외부검증과 동일 출처. -- **핵심:** 그들의 외부 코호트가 **flash-frozen**이라 FFPE↔frozen 준비 차이가 도메인 시프트에 섞임. 우리 CPTAC 사용 시 조직준비 축을 통제·명시해야 그들과 차별. + +- Data Availability 문장은 본문에 없다. 다만 두 코호트 모두 공개 리소스이고, 라벨 출처가 명시되어 있어 재구성은 가능하다. TCGA 라벨은 Thennavan et al. supplementary, CPTAC 라벨은 Krug et al. +- **주의할 필터**: TCGA에서 FFPE를 빼고 냉동만 남긴 결과가 1,522 슬라이드 / 1,079 환자다. 우리 TCGA-BRCA 코호트(진단 슬라이드 1,010 환자)와 포함 기준이 다르므로 환자 수를 나란히 놓고 비교하면 안 된다. + +## 전처리 사양 + +| 항목 | 그들 | 우리 | +|---|---|---| +| 패치 추출 | 512×512 px @ 40× (육안 검토용), 이후 FM 입력에 맞춰 리스케일 | 256×256 px @ 20× | +| MIL 입력 타일 | 256×256 px / 128 µm @ 20× 고정 | 동일 FoV | +| 정규화 | 기본은 미적용. 별도 실험에서만 Macenko | 우리 파이프라인 설정 확인 필요 | +| FM 입력 해상도 | 각 FM 내부 리스케일(예: Virchow v2 224×224) | 동일 | + +- FoV가 사실상 같으므로 임베딩 스케일은 호환된다. 우리 캐시를 재사용해 그들 설정을 흉내 내는 실험은 저렴하다. +- 형태 주석에는 40× 512×512 패치를 그대로 쓴다. 20× 표준 해상도의 두 배라 병리가 보기 좋다는 이유다. ## FM 스택 대비 -- 그들 13 FM ⊇ 우리 승인 FM 상당수: **UNI, CONCH, Virchow2, UNI-2, Prov-GigaPath** 모두 포함(+ Hibou/H-optimus-0/Phikon v2/Musk/CTransPath/RetCCL/ResNet-50). -- **Virchow v2가 그들 mean-rank 1위(2.00)** → 우리 "SOTA 다중 FM 견고성 검증"에서 Virchow2를 강 baseline으로 잡는 근거. 단 그들 결론은 "최고 FM도 외부에서 붕괴" → **FM 교체로 도메인 문제 못 푼다**는 게 우리 결정레이어(보정/기권) 정당화. -## 재현성 평가 -- 지표: **ER/PR/HER2 PR-AUC, PAM50 macro-F1**, 열화 = **RPD=(Q_CV−Q_HO)/Q_CV**. 표준 정의라 우리 파이프라인에서 재계산·대조 가능. -- tile **128 µm/~20×** — 우리 tile_config(256×256 @ 20×, ≈128µm FoV)와 **사실상 동일 FoV** → 임베딩 스케일 호환, 우리 캐시 재사용에 유리. -- 리스크: 픽셀 크기·정규화·per-model split 디테일이 원문 inline graphic/repo 의존 → repo를 source-of-truth로 확인해야 정확 재현. +- 그들 13종: ResNet-50(baseline), CTransPath, RetCCL, CONCH, UNI, Prov-GigaPath, Hibou-B, Hibou-L, H-optimus-0, Virchow v2, Phikon v2, Musk, UNI-2. +- 우리 승인 FM 상당수가 여기 포함된다. UNI, CONCH, Virchow v2, UNI-2, Prov-GigaPath. +- **실무 결론 1**: Virchow v2가 mean rank 2.00으로 1위이므로, 우리가 다중 FM 견고성을 볼 때 강한 baseline으로 쓸 근거가 된다. Ma et al.의 독립 보고와도 일치한다고 저자들이 적는다. +- **실무 결론 2**: 그렇다고 FM 교체가 도메인 문제를 풀지는 않는다. 13종 전부 외부에서 떨어지고, 우리가 쓰는 UNI는 HER2 상대 낙폭이 계산값 0.626으로 Virchow v2(0.451)보다 크다. "더 좋은 encoder"가 답이 아니라는 것이 우리 결정 레이어(보정·기권)의 정당화다. +- 2025년 초 이후 FM(H-optimus-1 등)은 빠져 있다. 최신 모델까지 포함한 비교는 아직 공백이다. + +## 지표와 재계산 가능성 + +- PAM50 macro-F1, ER/PR/HER2 PR-AUC. AUROC는 쓰지 않는다. +- RPD = (Q_CV − Q_HO) / Q_CV. 정의가 단순해 우리 파이프라인에서도 그대로 계산할 수 있다. 다만 우리 지표는 AUROC이므로 같은 이름을 붙여 나란히 놓으면 오해를 부른다. 재계산한다면 우리 쪽에서도 macro-F1과 PR-AUC를 따로 뽑아야 한다. +- ~~Supplementary 미확보~~ → **해소됨**(2026-09-02). `sources/..._supplementary.pdf`를 확보해 Table S1~S9와 Figure S1~S3을 전부 `_core.md`·`_methodology-brief.md`에 옮겼다. 남은 `원문 미확인:` 항목은 FM 임베딩 차원, FM 가중치 버전 식별자, bag size 최적값, stain matrix 성분값, 형태 유사도 행렬 B(c,c') 원소값 다섯 가지다. + +## 염색 정규화 재현 세부 + +- SlideFlow population-level preset v3. stain matrix는 H와 E 염색 벡터를 RGB 공간에 담은 3×2 행렬이고, 기준 최대 농도는 **[1.766, 1.280]**이다. TCGA 슬라이드 450장에서 뽑은 약 50,000 패치의 Macenko 분해 파라미터 평균으로 추정했다. +- 적용 시점이 중요하다. feature bag 생성 중 패치 단위로, 특징 추출 직전에 건다. 슬라이드 단위 사전 정규화가 아니다. +- 재현 시 유의: 정규화 효과가 클래스마다 부호가 갈린다. ER·PR 계열은 음수(손해), Luminal B·Normal-like는 양수. HER2-enriched는 어떤 아키텍처에서도 정확히 0이다. "정규화를 걸면 좋아진다"는 통념이 성립하지 않는 사례로 기록해 둘 만하다. + +## 우리가 바로 쓸 것 -## 우리가 바로 재사용/참조할 것 -1. **RPD 지표**를 우리 cost-of-substitution의 "prediction-fidelity 열화" 보조축으로 재계산(단, 우리 헤드라인은 routing-cost). -2. **도메인 시프트 요인분해**(staining/feature-space=80%)를 **AI 결정레이어의 OOD 트리거 설계**에 참조. -3. **Virchow v2 벤치**를 우리 다중-FM 강건성(Paper C 모델 비의존성) baseline으로 인용. +1. **RPD를 보조축으로**. 우리 헤드라인은 라우팅 비용이지만, 예측 충실도 열화를 같은 자로 보고할 때 RPD 정의를 그대로 빌린다. 지표 차이는 각주로 명시한다. +2. **요인분해를 OOD 트리거 설계에 참조**. 특징공간 발산(클래스 중심점 코사인 거리)은 라벨 없이도 계산할 수 있으므로, 배치 시점의 기권 트리거 후보로 쓸 만하다. 그들 값 범위는 0.105~0.197이다. +3. **Virchow v2 벤치를 인용**. 우리 모델 비의존성 주장에 외부 근거로 붙인다. +4. **Macenko 정규화의 클래스 의존 효과**를 우리 전처리 결정의 반례로 인용한다. -## 산업/거버넌스 메모 -- 그들은 예측 정확도만 출력 → 우리는 동일 임베딩 위에서 **routing-cost + calibration/abstention**를 내되 `hypothesis_only` + Critic pass 후 공유(DRP 프레이밍 금지). +## 거버넌스 메모 -## 검증 플래그 -- Code Availability(CLAM fork + PathBench-MIL, 2 GitHub URL) = PMC quote-demand 확인. **Data Availability 문장 = NOT FOUND**. repo 실제 실행성·라이선스 = 미검증. +- 우리 산출물은 `hypothesis_only`를 유지하고 Critic 통과 전 공유하지 않는다. DRP 프레이밍, 약물 구조 입력, 다암종 일반화, ICI 관련 서술은 금지 사항 그대로다. +- 이 논문을 인용할 때도 "예측이 된다"를 우리 주장으로 옮겨 오지 않는다. 인용은 열화 사실과 요인분해까지다. diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_methodology-brief.md b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_methodology-brief.md index c737412..e6f9b09 100644 --- a/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_methodology-brief.md +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/fernandez-romero-2026-domaingen_methodology-brief.md @@ -1,42 +1,171 @@ -# fernandez-romero-2026-domaingen — Methodology Brief (우리와의 차별화 정밀 정의) +# Fernandez-Romero et al., 2026 (MBEC domain generalisation) — methodology-brief -> ★가장 중요★ 이 논문은 우리 **NEAREST SCOOP**이다 — 유방 "Paper A"를 flagship Paper C(치환비용 결정지도)로 흡수하게 만든 직접 원인. 아래는 리뷰어의 "이거 스쿱 아니냐"에 대한 정밀 반박 설계. 모든 우리쪽 산출물은 **`hypothesis_only`**, 후향적, 전향 검증 필요. +> 근거: `sources/` 전문. 2026-09-02 전문 기반 재작성. 분할, 지표, 통계 절차를 우리 원고에서 인용·대조할 수 있는 수준까지 옮긴다. +> +> **2026-09-02 보강**: Supplementary PDF(10p)를 확보해 학습 하이퍼파라미터(Table S2), Optuna 최적 구성(Table S3), 염색 정규화 원값(Table S5)을 채웠다. 클래스별 원값 표는 `_core.md`에 옮겨 두었다. -## A. 차별화 표 (THEY vs WE) +## A. 실험 파이프라인 4단계 -| 축 | THEY (Fernandez-Romero 2026) | WE (Paper C: cost-of-substitution 결정지도) | +원문 Figure S1이 정리하는 순서는 다음과 같다. + +1. 패치 추출 +2. TCGA에서 baseline CLAM으로 Monte Carlo 교차검증 +3. CPTAC에서 baseline MIL로 외부검증 +4. 최고 FM과 최적화 MIL 3종의 결과를 받아 도메인 시프트 분석 + +즉 FM 선별과 도메인 시프트 분석의 모형 구성이 다르다. 선별은 baseline CLAM 하나로, 시프트 분석은 Optuna로 튜닝한 CLAM·TransMIL·DSMIL 셋으로 한다. Table 1과 Table 2의 숫자가 같은 모형에서 나온 것이 아니라는 점이 인용할 때 중요하다. + +## B. 분할 설계 (원문 확정) + +### 내부 검증 + +> "We performed patient-stratified MCCV with 10 random splits on TCGA as internal validation. In each iteration, patients were randomly partitioned into 80% training, 10% validation (for early stopping) and 10% test. Patient-level stratification ensured that all slides from the same patient remained in the same fold, preventing data leakage." + +- 반복: Monte Carlo 교차검증 10회, 매회 무작위 재분할. +- 비율: 학습 80% / 검증 10% / 시험 10%, 환자 단위. +- 통제: 환자 하나. 같은 환자의 슬라이드가 fold를 넘지 않게 한다. +- **미통제**: 제출 기관, 스캐너, 배치. 전문에 `tissue source site` 0회, `submitter` 0회, `batch` 0회, `scanner` 0회. `site`는 논의 문단의 "cross-site generalisation" 한 번뿐이다. +- 클래스 불균형은 분할이 아니라 손실 가중(빈도 역수 cross-entropy)으로 다룬다. + +### MIL 비교 단계 + +- 10-fold 교차검증(MCCV 아님)으로 TCGA에서 학습하고 CPTAC을 독립 hold-out으로 평가한다. +- 하이퍼파라미터는 아키텍처마다 따로 최적화한다. PathBench-MIL + Optuna, 50 trial, pruning, validation(학습셋의 10%)에서 mean average precision 최대화. 탐색 변수는 z_dim(32~512)과 bag size(8~256). +- 타일은 256×256 px / 128 µm @ 20×로 고정. 염색 정규화는 이 단계에서 적용하지 않는다. + +### baseline CLAM 학습 설정 (Table S2) + +FM 13종 선별 단계에서 쓴 고정 설정이다. 조기 종료는 patience 20 epoch, min delta 0.001이다. + +| Parameter | MCCV(내부) | HO(외부) | |---|---|---| -| **묻는 질문** | H&E로 분자 아형/마커가 **예측되는가** | 그 예측이 치료결정에서 **분자검사를 언제 값싸게 대체하나** | -| **측정량** | 예측 정확도 **PR-AUC(ER/PR/HER2)·macro-F1(PAM50)** + 열화 **RPD** | **라우팅 치환비용** = mis-routing cost × therapeutic distance (라벨오차↔치료오차 해리) | -| **출력** | 모델 순위 + 도메인 붕괴 진단 | 마커별 {H&E-triage 가능 / 등급적 / 분자검사 필수} **결정지도** + 보정/기권 | -| **층위** | 예측충실도(표1) 단일 | 예측충실도(표1)와 **라우팅비용(표2)을 분리**(층위 융합 금지) | -| **범위** | 유방 단일 | 유방 anchor + **폐·대장·위·두경부 5암종**(사전등록 법칙 held-out) | -| **외부 열화** | 발견·계량(RPD, 요인분해 R²=0.800) | **동일 현상을 "치환에 비용이 있다"의 증거로 재활용** → 결정레이어 동기 | -| **임상 정박** | 없음(exploratory 벤치) | **(계획) trastuzumab 치료-결과 anchor**로 HER2 라우팅 비용을 실측 임상에 정박 | -| **거버넌스** | 표준 벤치 | `hypothesis_only` + 7-point Critic + DRP 금지 | - -## B. 리뷰어 방어 3점 (핵심) - -**(a) 측정 대상이 다르다 — accuracy vs decision-value.** -그들은 *예측이 맞나*(PR-AUC/F1)를 잰다. 우리는 *예측을 치료배정에 쓸 때 무엇을 잃나*(routing-cost)를 잰다. 지표부터 다름: 그들 **PR-AUC/macro-F1 ≠ 우리 AUROC ≠ 치료-랭킹 divergence**. "같은 숫자 다시"가 아니라 **다른 질문**. 예: LumA↔LumB 오분류는 예측오차이나 둘 다 내분비/CDK4-6로 라우팅 → **치료비용≈0**; 이 해리는 그들 정확도 표에서 복원 불가. - -**(b) 그들의 붕괴 발견이 우리 논지를 SUPPORT한다(스쿱을 근거로 전환).** -**HER2-enriched RPD=1.000(외부 완전 붕괴)**, Virchow v2 HER2 PR-AUC 0.399→0.219 — **"예측만으로는 취약"의 직접 증거**. 예측이 도메인 시프트에서 무너진다면 → **치환에는 계량 가능한 비용이 있고, 보정·기권(calibration/abstention) 결정레이어가 필요**하다. 즉 그들 결과는 우리 SUBSTITUTABILITY_LAW("저비용 대체는 in-domain 조건부, cross-domain엔 보정·기권 필요")의 **외부 근거**다. 이게 가장 강한 반박: 스쿱이 아니라 우리 전제의 확증. - -**(c) 우리는 그들에게 없는 실제 치료-결과 검증을 더한다(계획).** -그들은 exploratory 예측 벤치에 그침. 우리는 **HER2 라우팅 비용을 trastuzumab 치료-결과 anchor**로 정박해 "형태 오분류 → 항HER2 잘못 라우팅"의 임상 대가를 보인다. -- ⚠️ **정직 경계:** 이 anchor는 **계획된 차별자(hypothesis_only)이지 완료된 검증이 아님.** PAPER_DIRECTION이 명시하듯 TCGA OS event <15%·CPTAC survival 외부검증 불가 → **검정력 게이트 통과 전 본문 승격 금지**. 미달 시 순수 분자-특성화(HER2 단백질 상승 but 형태 상관물 없음)로 후퇴. - -## C. de-circularization (그들도 우리도 걸리는 함정) -- 그들 지표(PR-AUC/F1)를 그대로 치료비용으로 승격하면 **층위 오류**. 우리는 **표1(예측충실도)과 표2(라우팅비용)를 절대 하나의 "비용" 숫자로 합치지 않음**. -- "subtype AUC 높으면 약물랭킹 당연 일치"(순환) 반박: concordance가 아니라 **임상 비용함수**(subtype-구별 약물에서만, 아형별 층화, subtype_only→therapy baseline 대비)로 측정 → 라벨오차↔치료오차 해리가 발견. - -## D. BIOP02 연계 -- **cost-of-substitution(C1):** 세포주-only 냉동 지도에 (A)측정 아형 vs (B)H&E-예측 아형 → 치료 랭킹 divergence 아형별 층화. HER2 붕괴 지점 = 그들 RPD=1.00과 교차 인용. -- **AI 결정레이어:** OOD/불확실 시 분자검사로 기권 — **동기 = 그들 CPTAC 붕괴 + staining/feature-space 80% 요인**. -- **인용 규율:** 정성 한 줄 양보("consistent with [Fernandez-Romero 2026]") 후 결정-가치로 전환. 예측 정확도 재판매·figure 방어 금지. - -## 검증 플래그 -- 이중확인: 설계·코호트·HER2/Normal-like 붕괴·R²=0.800·지표종류·mean-rank. -- PMC quote-demand: MIL 3종·Virchow HER2 0.399→0.219·PAM50 0.542→0.358·RPD 공식·CPTAC flash-frozen·Code Availability. -- **[미확인/계획]** trastuzumab-outcome anchor = 우리 hypothesis_only 설계(검정력 미검증). 그들 per-model 전체표·Data Availability = [미확인]. +| seed | 42 | 42 | +| dropout | 0.7 | 0.7 | +| learning rate | 0.0001 | 0.0001 | +| weight decay | 0.0001 | 0.0001 | +| bag loss | cross-entropy | cross-entropy | +| instance loss | cross-entropy | cross-entropy | +| patches per bag | 64 | 64 | +| model size | big | big | +| training fraction | 0.8 | 0.85 | +| validation fraction | 0.1 | 0.15 | +| test fraction | 0.1 | 0 | + +- seed가 42 하나로 고정되어 있다. MCCV 10회의 무작위성은 분할 재추출에서 나오고 초기화에서는 나오지 않는다. +- HO 열의 test fraction이 0이라는 것은 TCGA를 전량 학습·검증에 쓰고 시험은 CPTAC에서만 한다는 뜻이다. 본문의 "85% training, 15% validation" 서술과 맞는다. +- patches per bag 64는 baseline 값이고, Optuna 단계에서는 bag size를 8~256에서 다시 찾는다. + +### Optuna 최적 구성 (Table S3) + +검증셋에서 mean average precision을 최대화해 고른 값이다. `z_dim`은 MIL 쪽 투영 차원이지 FM 출력 차원이 아니다. + +| Task | Model | z_dim | dropout | +|---|---|---|---| +| ER | CLAM | 233 | 0.737 | +| ER | DSMIL | 57 | 0.747 | +| ER | TransMIL | 499 | 0.565 | +| HER2 | CLAM | 317 | 0.756 | +| HER2 | DSMIL | 121 | 0.514 | +| HER2 | TransMIL | 325 | 0.534 | +| PR | CLAM | 33 | 0.543 | +| PR | DSMIL | 329 | 0.475 | +| PR | TransMIL | 439 | 0.652 | +| PAM50 | CLAM | 255 | 0.549 | +| PAM50 | DSMIL | 311 | 0.631 | +| PAM50 | TransMIL | 472 | 0.597 | + +- z_dim이 33에서 499까지 흩어져 있고 과제·모델 사이에 규칙이 보이지 않는다. PR-CLAM의 33과 ER-TransMIL의 499가 양 끝이다. 탐색 범위(32~512)의 경계에 붙은 값이 여럿이라, 50 trial이 수렴할 만큼 충분했는지는 원문만으로 판단할 수 없다. +- dropout은 0.475~0.756으로 baseline의 0.7보다 대체로 낮다. +- **표에 없는 것**: bag size의 최적값은 Table S3에 실리지 않는다. 본문이 탐색 변수로 명시했으나 결과는 공개되지 않아 `원문 미확인:`으로 남는다. + +### 외부 검증 + +> "each FM-CLAM model was trained on the entire TCGA cohort (85% training, 15% validation) and tested on CPTAC" + +- 내부 검증과 하이퍼파라미터를 같게 두고, 학습 데이터만 전체 TCGA로 바꿔 다시 학습한다. 조기 종료는 validation loss, 최고 체크포인트로 CPTAC 평가. +- 외부 코호트는 CPTAC 하나뿐이고 반복이 없다. Table 1의 HO 열에 표준편차가 없는 이유가 이것이다. + +## C. 지표 + +| 과제 | 지표 | 비고 | +|---|---|---| +| PAM50 5-class | macro F1-score | scikit-learn | +| ER / PR / HER2 | PR-AUC | 클래스 불균형 인식 지표로 선택 | +| 열화 | RPD | 아래 정의 | + +- AUROC는 논문 어디에도 없다. 우리 registry가 AUROC이므로 숫자를 직접 겹칠 수 없다. + +``` +RPD(Q, c) = (Q_c^CV − Q_c^HO) / Q_c^CV (Q_c^CV > 0) + = n.d. (그 외) +``` + +- Q는 클래스 c의 지표(PAM50이면 F1, IHC면 PR-AUC), CV는 내부 10-fold 평균, HO는 외부. +- 원문 예시: 내부 0.60, 외부 0.42면 RPD = 0.30, 곧 30% 상대 낙폭. +- 회귀에 들어가는 RPD는 최적화 MIL 3종의 평균값이다. + +## D. 네 요인의 조작적 정의 + +### 1. 염색 변이 이득 Δn + +- Macenko 정규화를 패치 단위로, 특징 추출 직전에 적용한다. SlideFlow population-level preset v3, stain matrix는 3×2(H·E 벡터 × RGB), 기준 최대 농도 [1.766, 1.280], TCGA 450 슬라이드 약 50,000 패치의 Macenko 분해 평균에서 추정. +- **기준 슬라이드는 없다.** 흔히 쓰는 단일 참조 슬라이드 방식이 아니라 모집단 평균을 목표로 삼는 방식이다. 우리가 "그들이 어떤 슬라이드를 기준으로 삼았나"를 묻는다면 답은 "특정 슬라이드가 아니라 TCGA 450장의 평균"이다. 3×2 행렬의 성분값 자체는 공개되지 않아 `원문 미확인:`으로 남는다. +- 정규화 TCGA로 학습, 정규화 CPTAC으로 평가. +- `n_c = Perf_c(normalised) − Perf_c(original)`, 외부 성능 기준, 3개 MIL 평균. + +### 2. 유병률 시프트 Δp + +- `Δp_c = p_c(CPTAC) − p_c(TCGA)`. 단순 비율 차이. + +### 3. 특징공간 발산 d + +- 각 WSI에서 attention 상위 K=8 패치를 고른다. CLAM은 정답 클래스에 해당하는 attention 열, DSMIL·TransMIL은 단일 attention 벡터를 쓴다. +- 정답 라벨과 코호트로 묶어 클래스 중심점(임베딩 산술 평균)을 구한다. +- `d_c = 1 − cos(μ_c^TCGA, μ_c^CPTAC)`. 3개 MIL에서 따로 구해 평균. + +### 4. 형태 분리도 B̃ + +- baseline CLAM이 고른 패치 중 클래스 중심점에 가장 가까운 25장을 뽑는다. PAM50 125장(5×25), IHC 150장(3 마커 × 2 상태 × 25장)씩 코호트마다. +- 병리 두 명이 라벨과 예측에 눈가림된 채 독립 주석. 특징 여섯 가지: 튜불 형성(1~3), 핵 다형성(1~3), 유사분열 수(개수), 종양 괴사(유무), 림프구 침윤(유무), 다형핵구 침윤(유무). 합의 절차 없이 두 사람 점수의 산술 평균을 최종값으로 쓴다. +- 일치도는 순서형에 선형 가중 κw, 이분형에 Cohen's κ. 패치 275장을 이미지 식별자로 맞춰 계산했다. Table S9 실측값은 튜불 형성 κw=0.289(fair), 핵 다형성 κw=0.285(fair), 유사분열 κw=0.152(slight), 괴사 κ=0.177(slight), 림프구 침윤 κ=0.185(slight), 다형핵구 침윤 κ=0.321(fair)이다. 여섯 가지 모두 moderate(0.41)에 닿지 못한다. +- 코호트 간 특징 분포를 Mann-Whitney U로 비교하고 효과크기는 rank-biserial r_rb. 클래스 쌍마다 BH 보정(α=0.05). +- `B(c,c') = Σ_{i=1..6} |r_rb,i^(c,c')|`, 유의한 특징만(BH q<0.05) 더한다. 대각 B(c,c)는 코호트 사이 같은 클래스의 형태 이질성, 비대각은 클래스를 가로지른 유사도. +- `B̃_c = min_{d≠c} B(c,d) − B(c,c)`. 양수면 자기 자신과의 코호트 간 일관성이 다른 클래스와의 유사도보다 크다는 뜻이고, 음수면 외부 코호트의 그 클래스가 자기보다 다른 클래스와 더 닮았다는 뜻이다. + +## E. 통계 절차 + +- 관측 단위는 클래스이고 n=11(PAM50 5 + ER 2 + PR 2 + HER2 2). +- **과제 통합의 근거 세 가지**(저자 제시): RPD가 무차원 비율이라 지표 척도와 무관하게 비교 가능하다는 것, 요인이 클래스 수준에서 정의되어 생물학적 과제와 독립적으로 작동한다고 가정한 것, 관측치를 5개에서 11개로 늘려 검정력을 얻는다는 것. 세 번째는 저자 스스로 실용적 이유로 적는다. +- 다중비교 보정은 BH를 네 묶음(단변량 Spearman, 단변량 OLS 기울기, 다변량, 공선성) 안에서 각각 따로 적용하고 보정된 값을 q로 표기한다. 단변량에서 q<0.05인 요인만 다변량 후보가 된다. +- 단변량은 단순 OLS로 Pearson r, R², 기울기 β와 q를 보고하고, n=11의 비정규 가능성 때문에 Spearman ρ도 함께 낸다. +- 다변량은 유의 요인의 가장 간결한 조합으로 OLS를 적합한다. 공선성은 Pearson r, Spearman ρ, VIF(=1/(1−R²), 이변량 회귀에서)로 본다. +- 일반형: `RPD_c = β0 + β1·Δn_c + β2·Δp_c + β3·d_c + β4·B̃_c + ε`. 실제로는 단변량 유의 요인만 후보로 넣는다. + +## F. 결과 요약 (수치는 `_core.md` 표 참조) + +- 단변량 유의: d(R²=0.577, q(β)=0.027), Δn(R²=0.479, q(β)=0.037), B̃(R²=0.424, q(β)=0.040). 비유의: Δp(R²=0.029, q=0.615). +- 최종 다변량 `RPD ~ Δn + d`: R²=0.800, adj R²=0.750, F=16.03, q=0.005. 고유 기여는 d가 ΔR²=0.322, Δn이 0.224. +- B̃는 두 항이 들어오면 ΔR²<0.001, q=0.881로 기여가 사라진다. Δn과 B̃의 Spearman ρ=−0.691(q=0.056)이 그 이유로 제시된다. + +## G. 우리 원고에서 쓸 방식 + +### 즉시 반영 + +1. **참고문헌 추가**: Fernandez-Romero J, Ramos-Berciano P, Perez-Perez M, Benavides D, Robles-Frias A, Garcia-Gutierrez J, Macias-Garcia L. Domain generalisation challenges in breast cancer molecular classification using foundation models: a cross-cohort exploratory study. *Med Biol Eng Comput* 64(6):2321–2331 (2026). doi:10.1007/s11517-026-03590-4. +2. **Related work 한 줄 양보**: H&E FM+MIL로 PAM50과 ER/PR/HER2를 예측하는 실험과 TCGA→CPTAC 외부 열화는 이미 보고되었다는 사실을 먼저 인정하고, 그 다음 문장에서 결정 층위로 넘어간다. +3. **분할 설명 각주**: 두 연구의 내부 수치가 서로 다른 성격이라는 점을 밝힌다. 그들은 환자 층화 랜덤 MCCV, 우리는 기관 분리를 강제한 사전 고정 분할. 지표도 macro-F1·PR-AUC 대 AUROC로 다르다. +4. **HER2 수렴 문장**: 그들 HER2-enriched RPD=1.000과 우리 HER2 외부 AUROC 0.530을 나란히 두되, 지표가 달라 수치 비교가 아니라 결론 방향의 일치임을 명시한다. + +### 하지 말 것 + +- 예측 정확도 표로 정면 대결하지 않는다. figure로 방어하지 않는다. 인용은 본문 한두 줄까지. +- 그들의 PR-AUC·macro-F1을 우리 AUROC와 같은 축에 올리지 않는다. +- 그들이 기관을 통제하지 않았다는 사실에서 "그래서 그들 내부 수치가 부풀려졌다"로 곧장 결론 내지 않는다. 사실과 추론을 문장에서 갈라 놓는다. +- 예측 충실도(표1)와 라우팅 비용(표2)을 하나의 비용 숫자로 합치지 않는다. 층위 융합은 그들 지표를 치료 가치로 승격하는 오류다. + +### 열린 항목 + +- ~~아키텍처별 클래스별 원값(Table S4) 미확보~~ → **해소됨**. Supplementary를 확보해 `_core.md`에 33행 전부 옮겼다. 그들 클래스별 내부·외부 절대 성능을 이제 정확히 인용할 수 있다. +- 다만 인용 범위에 한 가지 제약이 남는다. **Table S4는 Virchow v2 하나 위에서만 계산되었다.** FM 13종을 클래스 단위로 가로지르는 표는 논문에 없으므로, "FM별 클래스별 성능"을 인용하려는 계획은 성립하지 않는다. +- `원문 미확인:`으로 남는 방법론 항목은 넷이다. FM 임베딩 차원, FM 가중치 버전 식별자, bag size 최적값, stain matrix 성분값. +- 우리 쪽 macro-F1·PR-AUC 재계산 여부는 미결정. 재계산하면 그들 표와 같은 자에 올릴 수 있으나, 헤드라인을 예측 정확도로 되돌릴 위험이 있어 보조 표로만 검토한다. diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/paper-info.yaml b/research/phenotype-prediction/fernandez-romero-2026-domaingen/paper-info.yaml index 0d8f3d1..2268179 100644 --- a/research/phenotype-prediction/fernandez-romero-2026-domaingen/paper-info.yaml +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/paper-info.yaml @@ -25,9 +25,28 @@ version: type: published peer_reviewed: true note: > - 저자명단·서지 = Crossref 확정(vol 64). Abstract 본문 = WebSearch snippet + - 우리 positioning 문서 2026-07-10_novelty-scoop-analysis.md에서 DOI/설계 교차확인. - 표-단위 정확 AUC는 Springer paywall로 미확보(정성 인용만). + 2026-09-02 전문 기반 재분석 완료. Europe PMC JATS 전문(sources/*_pmc.xml)과 + 출판 PDF(11p, CC-BY 4.0)를 확보해 Table 1(13 FM x 8 평가), Table 2(11 클래스 x 4 요인 + RPD), + Table 3(단변량/다변량/공선성) 값을 전부 원문에서 옮겼다. 이전 판본의 + "표-단위 정확 AUC 미확보" 제약은 해소됨. + 이전 판본의 오기 정정: TCGA는 FFPE가 아니라 flash-frozen만 사용(원문이 FFPE를 명시적으로 제외). + + 2026-09-02 2차 보강: Supplementary PDF(10p)를 확보해 Table S1-S9와 Figure S1-S3을 + 전부 옮겼다. pdftotext -layout(poppler)로 추출했고 pdfplumber는 booktabs 표를 + 인식하지 못해 사용하지 않았다. 표에 적힌 값끼리 산술 검산해 S4 33/33, S5 33/33, + S6 11/11, S7 11/11이 일치했고, S4+S5에서 계산한 클래스별 평균이 본문 Table 2와 + 11/11 일치해 행 정렬을 검증했다. 본문과 supplementary 사이에 숫자가 어긋나는 + 사례는 없었다. + 확정된 사실 셋: (1) Table S1은 FM을 12종만 싣고, 본문의 "13종"은 여기에 ImageNet + ResNet-50 baseline을 더한 수다. (2) HER2-enriched의 RPD=1.000은 세 아키텍처 모두 + CPTAC F1이 정확히 0.000이기 때문이다. (3) FM별 클래스별 성능 격자(13 x 3 x 클래스)는 + 논문에 존재하지 않는다. 클래스 단위 값은 최고 FM(Virchow v2) 위에서만 계산되었다. + 표기 어긋남 셋(값 모순 아님): 본문은 12 FM을 "July 2023-January 2025"로 묶지만 + Table S1의 CTransPath/RetCCL은 Dec 2021이다. Table S4 캡션은 TCGA 열을 "hold-out + test score"라 적고 본문은 10-fold CV 평균이라 적는다. Table S9의 n=275가 어느 + 코호트인지 밝히지 않는다. + 남은 미확인 다섯: FM 임베딩 차원, FM 가중치 버전 식별자, Optuna bag size 최적값, + SlideFlow v3 stain matrix 성분값, 형태 유사도 행렬 B(c,c') 원소값. citation: key: fernandez-romero-2026-domaingen short_id: DomainGen @@ -39,7 +58,12 @@ sources: paper: url: "https://link.springer.com/article/10.1007/s11517-026-03590-4" doi: "10.1007/s11517-026-03590-4" - status: verified (abstract via WebSearch; internal cross-ref) + status: verified (full text; Europe PMC JATS XML + publisher PDF, CC-BY 4.0) + fulltext: + xml: "sources/fernandez-romero-2026-domaingen_pmc.xml" + pdf: "sources/fernandez-romero-2026-domaingen.pdf" + pages: "64(6):2321-2331" + supplementary: "sources/fernandez-romero-2026-domaingen_supplementary.pdf (10p, 1.8 MB, 2026-09-02 확보). Table S1-S9, Figure S1-S3 전량 추출 완료" importance: level: 상 perspective: > @@ -57,4 +81,11 @@ priority: pivot to the substitution-cost decision frame (our novelty). workflow: created: "2026-07-17" - last_updated: "2026-07-17" + last_updated: "2026-09-02" + outputs: + - fernandez-romero-2026-domaingen_abstract.md + - fernandez-romero-2026-domaingen_core.md + - fernandez-romero-2026-domaingen_lens-academic.md + - fernandez-romero-2026-domaingen_lens-industry.md + - fernandez-romero-2026-domaingen_methodology-brief.md + - fernandez-romero-2026-domaingen_comparison-with-biop02.md diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/fernandez-romero-2026-domaingen.bib b/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/fernandez-romero-2026-domaingen.bib new file mode 100644 index 0000000..a010678 --- /dev/null +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/fernandez-romero-2026-domaingen.bib @@ -0,0 +1,11 @@ +@article{fernandezromero2026domaingen, + author = {Fernandez-Romero, Jesus and Ramos-Berciano, Pablo and Perez-Perez, Manuel and Benavides, David and Robles-Frias, Antonio and Garcia-Gutierrez, Jorge and Macias-Garcia, Laura}, + title = {Domain generalisation challenges in breast cancer molecular classification using foundation models: a cross-cohort exploratory study}, + journal = {Medical \& Biological Engineering \& Computing}, + year = {2026}, + volume = {64}, + number = {6}, + pages = {2321--2331}, + doi = {10.1007/s11517-026-03590-4}, + note = {Open access, CC BY 4.0. PMC13269319} +} diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/fulltext_extracted.txt b/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/fulltext_extracted.txt new file mode 100644 index 0000000..3276ecb --- /dev/null +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/fulltext_extracted.txt @@ -0,0 +1,2116 @@ +pmc Med Biol Eng Comput Med Biol Eng Comput 365 springeropen 7704869 Medical Biological Engineering Computing 0140-0118 1741-0444 pmc-is-collection-domain yes pmc-collection-title Springer PMC13269319 PMC13269319.1 13269319 13269319 42113320 10.1007/s11517-026-03590-4 3590 1 Original Article Domain generalisation challenges in breast cancer molecular classification using foundation models: a cross-cohort exploratory study Fernandez-Romero Jesus Jesus Fernandez-Romero is a PhD student at the University of Seville, specialising in domain shift in computational pathology. Ramos-Berciano Pablo Pablo Ramos-Berciano is a PhD student at the University of Seville, specialising in foundation models and multiple instance learning in computational pathology. Perez-Perez Manuel Manuel Perez-Perez is an Assistant Professor at the University of Seville with expertise in pathological anatomy and breast cancer research. Benavides David David Benavides is a Full Professor at the University of Seville with research interests in software engineering and machine learning systems. Robles-Frias Antonio Antonio Robles-Frias is a board-certified pathologist at Hospital Universitario Virgen de Valme. http://orcid.org/0000-0002-1300-4647 Garcia-Gutierrez Jorge jorgarcia@us.es Jorge Garcia-Gutierrez is an Associate Professor at the University of Seville, specialised in soft computing and machine learning. Macias-Garcia Laura Laura Macias-Garcia is an Associate Professor at the University of Seville with expertise in pathological anatomy and breast cancer research. 1 https://ror.org/03yxnpp24 grid.9224.d 0000 0001 2168 1229 Department of Computer Languages and Systems, ETSII, University of Seville, Av. Reina Mercedes s/n, 41012 Seville, Andalusia Spain 2 https://ror.org/04cxs7048 grid.412800.f 0000 0004 1768 1690 UGC Pathology, Hospital Universitario Virgen de Valme, Ctra. de Cádiz Km. 548, 41004 Seville, Andalusia Spain 3 https://ror.org/03yxnpp24 grid.9224.d 0000 0001 2168 1229 Department of Normal and Pathological Cytology and Histology, Faculty of Medicine, University of Seville, Av. Doctor Fadriani s/n, 41009 Seville, Andalusia Spain 11 5 2026 2026 64 6 515684 2321 2331 11 1 2026 21 4 2026 11 05 2026 17 06 2026 22 06 2026 © The Author(s) 2026 2026 https://creativecommons.org/licenses/by/4.0/ Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ . Abstract Molecular classification guides breast cancer treatment, but PAM50 and immunohistochemistry (IHC) remain costly and unavailable in many settings. Foundation models (FMs) combined with multiple instance learning (MIL) show promise for predicting molecular subtypes from haematoxylin-and-eosin-stained slides, yet most studies report only internal validation. This study evaluates FMs with MIL across cohorts and identifies factors associated with domain-induced performance degradation. We evaluate 13 FMs and 3 complementary MIL architectures for PAM50 subtyping and IHC biomarker prediction using cross-validation on TCGA-BRCA ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\boldsymbol{n=1,079}$$\end{document} ) and external validation on CPTAC-BRCA ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\boldsymbol{n=120}$$\end{document} ). Virchow v2 achieves the best overall performance but exhibits severe degradation upon external validation, consistent across all three MIL architectures especially for HER2-enriched and Normal-like PAM50 subtypes and HER2-positive IHC prediction. Four hypothesised domain shift factors are quantified through exploratory regression analysis to explain relative performance drop (RPD). Staining variability, feature space divergence and morphological separability reach significance in univariate analysis, whilst prevalence shift does not. Staining variability and feature space divergence as covariate-level factors jointly account for 80.0% of RPD variance in the most parsimonious multivariate model ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\boldsymbol{R^2=0.800}$$\end{document} , \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\boldsymbol{R^2_{\text {adj}}=0.750}$$\end{document} ). Although based on a limited number of class-level observations and therefore exploratory in nature, these findings highlight the need for domain generalisation strategies targeting covariate shift, even when specialised FMs are used as feature encoders. Graphical abstract + + Supplementary Information The online version contains supplementary material available at 10.1007/s11517-026-03590-4. Keywords Breast cancer Computational pathology Domain shift External validation Foundation models Universidad de Sevilla Funding for open access publishing: Universidad de Sevilla/CBUA pmc-status-qastatus 0 pmc-status-live yes pmc-status-embargo no pmc-status-released yes pmc-prop-open-access yes pmc-prop-olf no pmc-prop-manuscript no pmc-prop-legally-suppressed no pmc-prop-has-pdf yes pmc-prop-has-supplement yes pmc-prop-pdf-only no pmc-prop-suppress-copyright no pmc-prop-is-real-version no pmc-prop-is-scanned-article no pmc-prop-preprint no pmc-prop-in-epmc yes pmc-license-ref CC BY issue-copyright-statement © International Federation for Medical and Biological Engineering 2026 Introduction Breast cancer (BC) remains one of the leading causes of mortality among women worldwide []. Molecular classification plays a crucial role in treatment selection and prognosis, with the PAM50 gene expression assay representing the gold standard for identifying intrinsic molecular subtypes (Luminal A, Luminal B, HER2-enriched, Basal-like, and Normal-like) []. Each subtype exhibits distinct biological behaviour and therapeutic responses []. However, the high cost and limited availability of molecular testing mean that immunohistochemistry (IHC) remains the primary method for classification in clinical practice [, ]. Recent advances in deep learning (DL) have prompted research into predicting molecular subtypes directly from haematoxylin and eosin (H E)-stained whole slide images (WSIs) to reduce time and economic costs. Multiple instance learning (MIL)—a weakly supervised paradigm combining patch-level feature extraction with slide-level aggregation—has emerged as a leading approach for WSI classification []. The development of foundation models (FMs), large-scale models pre-trained on extensive pathology image repositories, has further enhanced MIL performance by providing robust visual representations []. FMs and MIL approaches have already shown potential in BC-related tasks such as HER2 score prediction [] and molecular subtyping classification []. Beyond performance metrics, interpretability is essential for clinical adoption of DL systems [, ]. Attention-based MIL models such as Clustering-constrained Attention MIL (CLAM) [] offer inherent interpretability by identifying image regions that contribute most to predictions. However, limited research has systematically evaluated whether these models learn biologically meaningful histomorphological patterns that remain consistent across independent cohorts, or whether apparent success reflects overfitting to institution-specific characteristics. Indeed, most published studies [, ] evaluate performance exclusively on internal validation sets from the same institution used for training, without testing on independent external cohorts, failing to assess domain generalisation—the ability to maintain performance when deployed on data from different institutions or technical protocols. Domain shift—systematic differences in data characteristics between training and deployment environments—is well-documented in medical imaging [], encompassing technical factors (tissue preparation, scanning equipment, staining procedures) [] and population factors (patient demographics, disease prevalence) []. Recent work has explored FMs for BC molecular classification [] and demonstrated the importance of cross-domain generalisation [], but systematic external validation with explicit characterisation of domain shift mechanisms remains absent. To our knowledge, this is the first study to systematically characterise the sources of domain-induced performance degradation in the context of breast cancer molecular subtype classification from H E-stained slides. To this end, this study evaluates FM-based MIL molecular classification with rigorous external validation and provides an exploratory characterisation of domain shift factors. Our contributions include: (1) A systematic evaluation of 13 FMs (12 state-of-the-art plus ResNet-50 baseline) on PAM50 subtyping and IHC prediction using patient-stratified validation (TCGA-BRCA) and independent external validation (CPTAC-BRCA) with class-imbalance-aware metrics (macro-F1, PR-AUC). (2) An evaluation of the best FM in the previous step using three optimised complementary MIL strategies. (3) A quantification and statistical exploratory analysis of four hypothesised factors that may affect cross-cohort generalisation performance: (i) staining variability, (ii) class prevalence shifts, (iii) feature space divergence, and (iv) lack of morphological separability. Methods Datasets We used WSIs from two public breast cancer datasets. The Cancer Genome Atlas Breast Invasive Carcinoma (TCGA-BRCA, hereafter TCGA) [] served as the internal cohort, whilst the Clinical Proteomic Tumor Analysis Consortium Breast Cancer (CPTAC-BRCA, hereafter CPTAC) [] served as the external validation cohort. From TCGA, we selected cases based on supplementary annotations from Thennavan et al. [], which included PAM50 molecular subtypes and IHC biomarker status (ER, PR, HER2). To ensure consistency with CPTAC (which comprises flash-frozen samples), we excluded formalin-fixed paraffin-embedded specimens. This yielded 1522 slides from 1079 patients with PAM50 annotations. IHC biomarker status was available for 1455 (ER), 1452 (PR) and 1482 (HER2) slides. From CPTAC, we selected 387 flash-frozen slides from 120 patients with complete PAM50 and IHC annotations as reported in Krug et al. []. Specifically, 379, 367 and 387 slides had complete annotations for ER, PR and HER2 status, respectively. Experimental pipeline Figure  depicts the experimental pipeline: (a) patch extraction, (b) Monte Carlo cross-validation (MCCV) with baseline CLAM on TCGA, (c) external validation on CPTAC with baseline MIL, and (d) domain shift analysis based on the results of the combination of the best FM and three optimised MIL in PathBench-MIL []. To ensure reproducibility, all scripts are publicly available and based on a fork of the CLAM repository [] and the original PathBench-MIL []. Foundation model evaluation WSIs were preprocessed using CLAM [] as baseline MIL which included its own tissue segmentation. Valid 512 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} 512 pixel patches were extracted at maximum magnification (40 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} ) using a sliding window approach for visual inspection. Later, the patches were approximately adapted to the most common 256 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} 256 at 20 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} format by the FMs which internally rescale patches to their native resolution (e.g., Virchow v2: 224 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} 224). We compared 13 feature extractors: 12 state-of-the-art FMs (July 2023–January 2025) plus ResNet-50 ImageNet baseline (see Table ). All models were frozen feature extractors for CLAM. Hyperparameters were determined by grid search and the final selection is detailed in Table . We performed patient-stratified MCCV with 10 random splits on TCGA as internal validation. In each iteration, patients were randomly partitioned into 80% training, 10% validation (for early stopping) and 10% test. Patient-level stratification ensured that all slides from the same patient remained in the same fold, preventing data leakage. To address class imbalance during training, we used class-weighted cross-entropy loss with weights inversely proportional to class frequencies. Performance was evaluated using class-imbalance-aware metrics computed with scikit-learn []: macro F1-score for PAM50 and PR-AUC for receptor status prediction (ER, PR, HER2). To evaluate domain generalisation, each FM-CLAM model was trained on the entire TCGA cohort (85% training, 15% validation) and tested on CPTAC. Models were trained using the same hyperparameters as internal validation (Table ), with early stopping based on validation loss. The best-performing checkpoint was used for testing on CPTAC. Based on superior internal and external validation performance across all tasks, we selected the FM with the best mean ranking across MCCV and HO for subsequent domain shift characterisation study. Multiple instance learning comparison To assess the sensitivity of domain shift findings to MIL aggregator architecture, we evaluated three complementary aggregation strategies representing distinct architectural families: CLAM [] (attention-based) with multiple attention branches, TransMIL [] (transformer-based), and DSMIL [] (dual-stream). This selection was motivated by the need to cover architecturally diverse aggregation paradigms whilst remaining computationally feasible. Models were trained using 10-fold cross-validation (CV) on TCGA and evaluated on CPTAC as an independent hold-out cohort. Hyperparameters for each architecture were independently optimised (see Table ) on the training set using the PathBench-MIL framework [] with Optuna [], employing a pruning strategy over 50 trials, maximising mean average precision on the validation set (10% of training). Specifically, embedding dimension ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$z_{\text {dim}} \in [32, 512]$$\end{document} ) and bag size ([8, 256]) were optimised whilst all other settings were held constant across architectures following the CLAM baseline parametrisation: cross-entropy loss, ReLU activation, and Adam optimiser. Tile size was fixed at \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$256\times 256$$\end{document}  px / 128  \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\mu$$\end{document} m ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\approx$$\end{document} 20 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} ) as this resolution is optimal for most FMs. No stain normalisation was initially applied. Performance degradation quantification To enable comparison between F1-score (PAM50) and PR-AUC (IHC) across different tasks, we computed Relative Performance Degradation (RPD) as the proportional difference between internal validation (CV) and external validation (HO) performance. For each of the five PAM50 molecular subtypes (Luminal A, Luminal B, HER2-enriched, Basal-like, Normal-like) and IHC biomarker status classes (ER+, ER-, PR+, PR-, HER2+, HER2-), RPD was computed as: 1 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\begin{aligned} \text {RPD}_{Q,c} = {\left\{ \begin{array}{ll} \dfrac{Q_c^{\text {CV}} - Q_c^{\text {HO}}}{Q_c^{\text {CV}}}, \text {if } Q_c^{\text {CV}} 0,\\ n.d., \text {otherwise.} \end{array}\right. } \end{aligned}$$\end{document} where, for label c and a performance metric Q (i.e., F1-score or PR-AUC), \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$Q_c^{\text {CV}}$$\end{document} and \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$Q_c^{\text {HO}}$$\end{document} represent the mean performance metric for label c across internal (10-fold CV) and external validation (HO), respectively. For example, if a model achieves a class-level F1-score of 0.60 on internal validation and 0.42 on external validation, the RPD is \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$(0.60 - 0.42) / 0.60 = 0.30$$\end{document} , indicating a 30% relative drop in performance upon external deployment. An RPD of 0 indicates no degradation, an RPD of 1.0 indicates complete performance collapse, and negative values indicate improved performance on the external cohort. For the domain shift regression analysis, RPD values for every label were computed as the mean across the three optimised MIL architectures, yielding more robust per-class estimates of cross-cohort performance degradation. Stain normalisation robustness To assess whether staining variability contributed to domain shift, we applied Macenko normalisation [] to all patches during pre-processing prior to feature extraction. We used the PathBench-MIL framework, which leverages the SlideFlow [] stain normalisation pipeline with its population-level preset (v3). This preset defines the stain matrix target — a \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$3 \times 2$$\end{document} matrix encoding the H and E staining vectors in RGB space — and the reference maximum concentrations ([1.766, 1.280]), estimated as the average of Macenko decomposition parameters across approximately 50,000 patches drawn from 450 TCGA slides. Normalisation was applied patch by patch during feature bag generation, immediately prior to feature extraction with Virchow v2, transforming each patch so that its H E staining characteristics matched the TCGA population reference. We trained the three optimised MIL architectures on normalised TCGA using identical hyperparameters to those used in Section and evaluated them on normalised CPTAC. For each molecular class c , we quantified the normalised performance difference per class ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n_c$$\end{document} ) as: 2 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\begin{aligned} \Delta n_c= {Perf}_c^{normalised} - {Perf}_c^{original} \end{aligned}$$\end{document} where \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\text {Perf}_c^{\text {normalised}}$$\end{document} and \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\text {Perf}_c^{\text {original}}$$\end{document} represent per-class performance (F1-score for PAM50, PR-AUC for IHC) on HO, averaged across the three optimised MIL architectures, for models trained on normalised and original images, respectively. Distributional shift analysis We quantified distributional shift and its relationship to generalisation failure. For each class in a classification task, we computed class prevalence in both cohorts: 3 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\begin{aligned} p_c^{\text {TCGA}} = \frac{N_c^{\text {TCGA}}}{N^{\text {TCGA}}}, \quad p_c^{\text {CPTAC}} = \frac{N_c^{\text {CPTAC}}}{N^{\text {CPTAC}}} \end{aligned}$$\end{document} where \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$N^D_c$$\end{document} is the number of samples of class c in a dataset D and \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$N^D$$\end{document} is the total sample count in D . Prevalence shift for each class was computed as: 4 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\begin{aligned} \Delta p_c = p_c^{\text {CPTAC}} - p_c^{\text {TCGA}} \end{aligned}$$\end{document} Feature space consistency analysis We evaluated the consistency of the best FM embeddings across cohorts using the most diagnostically relevant patches identified by each MIL architecture. For each WSI in both TCGA and CPTAC, we used the attention weights produced during the HO evaluation of each of the three optimised MIL models to select the top \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$K=8$$\end{document} patches per WSI. For CLAM, the attention column corresponding to the ground-truth class label was used; for DSMIL and TransMIL, the single attention vector was used. Within each molecular class, patches were grouped by ground-truth label (PAM50 subtype or IHC biomarker status) and dataset. Embeddings were loaded for all selected patches and class centroids were computed as the arithmetic mean: 5 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\begin{aligned} \boldsymbol{\mu }_c^{D} = \frac{1}{M} \sum _{i=1}^{M} \textbf{z}_i \end{aligned}$$\end{document} where \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$D \in \{\text {TCGA}, \text {CPTAC}\}$$\end{document} , M is the total number of selected patches from WSIs labelled as class c in dataset D according to ground-truth annotations, and \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\textbf{z}_i$$\end{document} is the patch-level embedding. The cosine distance between corresponding centroids was then computed as: 6 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\begin{aligned} d_c = 1 - \frac{\boldsymbol{\mu }_c^{\textrm{TCGA}} \cdot \boldsymbol{\mu }_c^{\textrm{CPTAC}}}{\Vert \boldsymbol{\mu }_c^{\textrm{TCGA}}\Vert \, \Vert \boldsymbol{\mu }_c^{\textrm{CPTAC}}\Vert } \end{aligned}$$\end{document} For the domain shift regression analysis, \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$d_c$$\end{document} was computed independently for each of the three optimised MIL architectures and the mean value was used as the per-class estimate of feature space divergence. Cross-cohort morphological analysis We analysed the histomorphological characteristics of patches selected by the baseline CLAM model for each molecular classification task (PAM50 subtypes and IHC biomarker status) and dataset. The baseline CLAM model was used for two reasons: first, it was employed in the FM selection phase and therefore identified the best-performing feature extractor; second, patches were extracted at 512 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} 512 pixels at 40x magnification — double the 20x standard resolution — which provides substantially greater morphological detail and facilitates pathologist assessment of histological features. For each class, we followed the steps in Section and selected the 25 patches closest to the class centroid in the best FM embedding space, identifying the most representative patches for morphological annotation. This yielded 125 PAM50 patches (5 subtypes \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} 25 patches) and 150 IHC patches (3 biomarkers \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} 2 statuses \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} 25 patches) per cohort. Two board-certified pathologists with more than five years of experience in breast cancer diagnostics, blinded to ground-truth molecular labels and model predictions, independently annotated the selected patches. For every patch, the following histomorphological features were recorded: Tubule Formation (ordinal: 1–3), Nuclear Pleomorphism (ordinal: 1–3), Mitotic Activity (number of mitoses detected), Tumour Necrosis (binary: present/absent), Lymphocytic Infiltrate (binary: present/absent), and Polymorphonuclear (PMN) Infiltrate (binary: present/absent). Given the inherent subjectivity of morphological scoring [], no formal consensus protocol was applied; instead, the definitive score for each patch and feature was taken as the arithmetic mean of both pathologists’ independent assessments, a standard approach for reducing random annotation error whilst preserving the original sample size and observation independence. Inter-rater reliability was assessed between the two pathologists on the same set of 275 representative patches, aligned by image identifier, according to Landis Koch []. Weighted \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\kappa _w$$\end{document} (linear weights) was computed for ordinal features (Tubule Formation, Nuclear Pleomorphism, Mitotic Activity) and Cohen’s \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\kappa$$\end{document} for binary features (Necrosis, Lymphocytic Infiltrate, PMN). We statistically analysed the histomorphological characteristics to quantify biological domain shift. We compared histomorphological feature distributions between TCGA and CPTAC patches using Mann-Whitney U tests, with corresponding effect sizes (rank-biserial correlation \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$r_{rb}$$\end{document} ). Multiple comparisons were corrected using the Benjamini–Hochberg (BH) procedure at \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\alpha = 0.05$$\end{document} within each class pair. Analyses were performed separately for each pair of molecular classes to construct morphological similarity matrices: a 5 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} 5 matrix for PAM50 subtypes, and three 2 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\times$$\end{document} 2 matrices for ER, PR and HER2 status, respectively. Each cell \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$(c,c')$$\end{document} in a similarity matrix quantified the sum of effect sizes for statistically significant features only (BH-adjusted \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$q 0.05$$\end{document} ) between class c and class \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$c'$$\end{document} . For each class pair, we computed the sum of absolute effect sizes across all statistically significant histomorphological features as: 7 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\begin{aligned} B_{c,c'} = \sum _{i=1}^{6}|r_{rb,i}^{(c,c')}| \end{aligned}$$\end{document} where \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$B_{c,c'}$$\end{document} quantifies absolute rank-biserial correlations for the features, computed when comparing class c against class \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$c'$$\end{document} . The diagonal elements \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$B_{c,c}$$\end{document} (or simply \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$B_c$$\end{document} ) represent within-class morphological heterogeneity between cohorts (how different class c appears when comparing TCGA vs. CPTAC), whilst off-diagonal elements \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$B_{c,c'}$$\end{document} ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$c' \ne c$$\end{document} ) capture cross-class morphological similarity (how similar class \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$c'$$\end{document} in CPTAC is to other class c in TCGA). To assess whether morphological separability predicted generalisation performance, we computed a morphological separability metric for each class: 8 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\begin{aligned} \tilde{B}_c = \min _{d \ne c} B_{c,d} - B_c \end{aligned}$$\end{document} This metric quantifies the difference between the minimum cross-class morphological similarity (smallest off-diagonal \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$B_{c,d}$$\end{document} ) and within-class morphological consistency (diagonal \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$B_c$$\end{document} ). Positive values indicate that class c is morphologically more stable within itself across cohorts than it is similar to any other class, suggesting preserved discriminative boundaries that may facilitate generalisation. Negative values indicate that class c in CPTAC is morphologically more similar to at least one other class in TCGA than to itself, suggesting morphological confusion that may impair cross-cohort classification. Statistical analysis of domain shift factors We performed an exploratory linear regression analysis integrating findings from all four domain shift characterisation analyses across both PAM50 molecular subtyping and IHC biomarker prediction ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$n=11$$\end{document} classes total). The regression model pooled observations across both tasks (PAM50 and IHC). This pooling was justified on three grounds. First, the dependent variable RPD was a normalised, dimensionless measure of proportional performance drop, computed separately for each class using its corresponding metric (macro F1-score for PAM50, PR-AUC for IHC), which ensured comparability across tasks independently of the underlying metric scale. Second, the domain shift factors under investigation were defined at the class level and were hypothesised to operate through mechanisms independent of the specific biological task. Third, pooling across tasks increased the number of observations from 5 (PAM50 subtypes only) to 11, providing greater statistical power for the exploratory analysis. To control for multiple comparisons, the Benjamini–Hochberg (BH) procedure was applied separately within each section of the analysis (univariate Spearman tests, univariate OLS slope tests, multivariate model tests, and collinearity tests). The BH procedure ranked the m + p -values within each family and rejected hypothesis \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$H_{(i)}$$\end{document} if \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$p_{(i)} \le (i/m)\,\alpha$$\end{document} , controlling the false discovery rate at level \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\alpha = 0.05$$\end{document} . The resulting adjusted p -value was denoted q . A factor was considered statistically significant for inclusion in the multivariate model if it reached \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$q 0.05$$\end{document} under BH correction in the univariate analysis. Univariate associations between each domain shift factor and RPD were assessed via simple OLS regression, reporting Pearson r (linear association), coefficient of determination \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2$$\end{document} , regression slope \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\beta$$\end{document} , and its q -value. We also reported Spearman \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\rho$$\end{document} with its corresponding q -value (monotonic association, more robust given \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$n=11$$\end{document} and potential non-normality of factors). Factors reaching significance in univariate analysis were considered as candidates for the multivariate model. A multivariate OLS model was then fitted using the most parsimonious combination of significant factors. Pairwise collinearity between the candidate factors (see Figure was assessed via Pearson r , Spearman \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\rho$$\end{document} and the variance inflation factor (VIF), computed as \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$1/(1-R^2)$$\end{document} from a bivariate regression. Model fit was characterised by \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2$$\end{document} , adjusted \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2$$\end{document} , F -statistic and its q -value. Individual coefficients were reported with their standard error, t -statistic and q -value. The general formulation of the regression model with RPD as the dependent variable and the four domain shift factors as independent variables was (though only those reaching univariate significance were considered for the final multivariate model): 9 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\begin{aligned} \text {RPD}_c = \beta _0 + \beta _1 \Delta n_c + \beta _2 \Delta p_c + \beta _3 d_c + \beta _4 \tilde{B}_c + \varepsilon \end{aligned}$$\end{document} The coefficient of determination ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2$$\end{document} ) quantified the proportion of variance in performance degradation explained by each model. Results Table  presents performance metrics and rankings (1=best, 13=worst) for each FM model when the baseline CLAM was applied. Virchow v2 achieved the best mean ranking (2.00), followed by Prov-GigaPath (4.13), H-optimus-0 (4.25), and UNI-2 (4.25). Earlier models (CTransPath: 7.00, RetCCL: 9.63) and the ResNet-50 baseline (12.75) ranked substantially lower, confirming Virchow v2 selection for the domain shift characterisation. Table 1 Performance metrics with relative rankings. For PAM50, macro F1-scores are reported; for ER, PR and HER2, PR-AUC values are shown. First row per model shows mean values; second row shows standard deviation (MCCV only) and rankings in parentheses (1=best, 13=worst). Mean Rank shows average ranking across all eight evaluations PAM50 ER PR HER2 Mean Model MCCV HO MCCV HO MCCV HO MCCV HO Rank ResNet-50 0.342 0.218 0.933 0.722 0.822 0.595 0.326 0.104 12.75 ±0.030 (13) (13) ±0.030 (13) (13) ±0.045 (13) (13) ±0.102 (11) (13) CTransPath 0.446 0.342 0.962 0.870 0.845 0.757 0.395 0.156 7.00 ±0.056 (10) (5) ±0.021 (8) (8) ±0.040 (8) (8) ±0.127 (3) (6) RetCCL 0.414 0.272 0.956 0.804 0.837 0.736 0.368 0.130 9.63 ±0.050 (11) (12) ±0.026 (10) (10) ±0.042 (9) (9) ±0.095 (6) (10) CONCH 0.493 0.335 0.957 0.885 0.853 0.777 0.306 0.190 7.13 ±0.052 (7) (6) ±0.015 (9) (6) ±0.029 (7) (7) ±0.086 (12) (3) UNI 0.527 0.365 0.967 0.885 0.870 0.833 0.396 0.148 4.38 ±0.044 (4) (2) ±0.025 (5) (7) ±0.029 (4) (3) ±0.105 (2) (8) Prov-GigaPath 0.504 0.379 0.967 0.900 0.875 0.822 0.368 0.160 4.13 ±0.050 (6) (1) ±0.018 (6) (4) ±0.029 (2) (4) ±0.089 (5) (5) Hibou-B 0.457 0.289 0.964 0.803 0.835 0.696 0.354 0.133 9.63 ±0.059 (8) (11) ±0.025 (7) (11) ±0.043 (10) (12) ±0.109 (9) (9) Hibou-L 0.399 0.297 0.952 0.858 0.826 0.697 0.246 0.107 11.38 ±0.034 (12) (10) ±0.022 (12) (9) ±0.040 (12) (11) ±0.042 (13) (12) H-optimus-0 0.565 0.304 0.973 0.897 0.883 0.803 0.377 0.153 4.25 ±0.053 (2) (9) ±0.015 (1) (5) ±0.039 (1) (5) ±0.096 (4) (7) Virchow v2 0.542 0.358 0.972 0.916 0.874 0.862 0.399 0.219 2.00 ±0.041 (3) (3) ±0.014 (2) (2) ±0.035 (3) (1) ±0.115 (1) (1) Phikon v2 0.508 0.345 0.971 0.906 0.861 0.802 0.359 0.191 4.63 ±0.035 (5) (4) ±0.017 (3) (3) ±0.036 (6) (6) ±0.106 (8) (2) Musk 0.450 0.305 0.955 0.774 0.832 0.700 0.364 0.126 9.88 ±0.074 (9) (8) ±0.018 (11) (12) ±0.038 (11) (10) ±0.106 (7) (11) UNI-2 0.575 0.325 0.969 0.917 0.868 0.858 0.353 0.164 4.25 ±0.061 (1) (7) ±0.019 (4) (1) ±0.029 (5) (2) ±0.098 (10) (4) Figure  shows per-class performance for the three Optuna-optimised MIL architectures and the non-optimised baseline CLAM on both TCGA and CPTAC. Detailed per-class performance values and RPD calculations for the three optimised architectures are provided in Table . The three optimised architectures consistently outperformed the baseline across most classes. Nevertheless, degradation patterns on CPTAC were remarkably consistent across all architectures: HER2-enriched exhibited complete performance collapse (RPD = 1.000 across all models); Normal-like showed severe degradation across all models despite TransMIL achieving the highest internal performance on TCGA; and Luminal B showed high RPD across all architectures. Luminal A and Basal-like maintained relatively stable performance. For IHC tasks, ER and PR showed moderate degradation, whilst HER2-positive exhibited substantial performance drop. Fig. 1 PathBench-MIL results on validation and testing for Optuna-optimised CLAM, DSMIL and TransMIL, compared with baseline CLAM used in Table Table  summarises the four domain shift factors and RPD for each of the 11 classes. Stain normalisation showed a heterogeneous effect across classes and architectures (Table ), with HER2-enriched showing no change under any architecture ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n_c = 0.000$$\end{document} ). Class prevalence differed between cohorts across all tasks (Table ), with the largest shifts observed for ER status and Basal-like, and the smallest for Normal-like. Cosine centroid distances (Table ) were highest for HER2-enriched ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$d_c = 0.197$$\end{document} ) and lowest for ER-positive ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$d_c = 0.105$$\end{document} ), with DSMIL consistently yielding higher distances than CLAM and TransMIL. Morphological separability values ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}_c$$\end{document} ) ranged from \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-1.232$$\end{document} (Normal-like) to \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+2.642$$\end{document} (ER-positive), derived from the cross-cohort morphological analysis (Table ), in which inter-rater agreement between the two pathologists ranged from slight to fair ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\kappa _w = 0.152$$\end{document} –0.289 for ordinal features; \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\kappa = 0.177$$\end{document} –0.321 for binary features; Table ). Table 2 Domain shift factors ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} , d , \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta p$$\end{document} and \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} ) as independent variables for statistical analysis with relative performance degradation (RPD) as dependent variable. \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n_c$$\end{document} , \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$d_c$$\end{document} and \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$RPD_c$$\end{document} for every class c are averaged across the three Optuna-optimised MIL models (CLAM, DSMIL and TransMIL) Task Class \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n_c$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta p_c$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$d_c$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}_c$$\end{document} RPD PAM50 Basal-like \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.015$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.132$$\end{document} 0.139 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.125$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.219$$\end{document} HER2-enriched \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.000$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.025$$\end{document} 0.197 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.904$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+1.000$$\end{document} Luminal A \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.020$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.075$$\end{document} 0.123 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.574$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.166$$\end{document} Luminal B \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.067$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.066$$\end{document} 0.149 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.693$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.644$$\end{document} Normal-like \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.061$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.016$$\end{document} 0.147 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-1.232$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.906$$\end{document} ER ER-negative \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.053$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.220$$\end{document} 0.136 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+1.445$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.063$$\end{document} ER-positive \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.038$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.220$$\end{document} 0.105 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+2.642$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.093$$\end{document} PR PR-negative \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.028$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.143$$\end{document} 0.112 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+1.080$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.163$$\end{document} PR-positive \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.032$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.143$$\end{document} 0.118 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+1.558$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.161$$\end{document} HER2 HER2-negative \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.006$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.099$$\end{document} 0.106 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.296$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.021$$\end{document} HER2-positive \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.035$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.099$$\end{document} 0.115 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.419$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.643$$\end{document} Table  presents the results of the univariate and multivariate regression analyses. In univariate analysis (Fig. ), \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} , d and \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} reached BH-corrected significance, whilst \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta p$$\end{document} did not ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$q=0.615$$\end{document} ). The most parsimonious multivariate model, RPD \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\sim \Delta n + d$$\end{document} , achieved \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2=0.800$$\end{document} ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2_{\text {adj}}=0.750$$\end{document} , \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$q=0.005$$\end{document} ), with both factors retaining significant associations with RPD under BH correction. Once \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} and d were included, \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} contributed no independent predictive power ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$q=0.881$$\end{document} , \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta R^2 0.001$$\end{document} ) and was excluded from the final model. Collinearity analysis (Fig. ) showed moderate correlation between \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} and \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\rho =-0.691$$\end{document} , \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$q=0.056$$\end{document} ) and no significant collinearity between \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} and d ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\rho =+0.455$$\end{document} , \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$q=0.160$$\end{document} ). Table 3 Statistical models predicting RPD from domain shift factors ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$n=11$$\end{document} molecular classes). BH correction applied separately within each section. \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{*}q 0.05$$\end{document} , \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{\dagger }q 0.10$$\end{document} Univariate models Model r \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\rho$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$q(\rho )$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\beta$$\end{document} q -value d \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.759$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.755$$\end{document} 0.029 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{*}$$\end{document} 0.577 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+10.110$$\end{document} 0.027 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{*}$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.692$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.673$$\end{document} 0.047 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{*}$$\end{document} 0.479 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+6.160$$\end{document} 0.037 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{*}$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.651$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.573$$\end{document} 0.087 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{\dagger }$$\end{document} 0.424 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.204$$\end{document} 0.040 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{*}$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta p$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.171$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.109$$\end{document} 0.750 0.029 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.449$$\end{document} 0.615 Multivariate model Model \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2$$\end{document} Adj. \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2$$\end{document} F -stat q -value RPD \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\sim \Delta n + d$$\end{document} 0.800 0.750 16.03 0.005 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{*}$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\beta$$\end{document} Std Error t -value q -value \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta R^2$$\end{document} d \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+7.9728$$\end{document} 2.2215 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+3.589$$\end{document} 0.011 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{*}$$\end{document} 0.322 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+4.4456$$\end{document} 1.4857 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+2.992$$\end{document} 0.017 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{*}$$\end{document} 0.224 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.0125$$\end{document} 0.0805 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.156$$\end{document} 0.881 0.001 Factor collinearity Pair Pearson r Spearman \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\rho$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$q(\rho )$$\end{document} VIF \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$d \sim \tilde{B}$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.583$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.482$$\end{document} 0.160 1.515 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n \sim d$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.321$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$+0.455$$\end{document} 0.160 1.115 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n \sim \tilde{B}$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.639$$\end{document} \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$-0.691$$\end{document} 0.056 \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$^{\dagger }$$\end{document} 1.691 Discussion Our systematic evaluation of 13 FMs with the baseline CLAM revealed that Virchow v2 achieved the best overall performance (Table ), a finding independently corroborated by Ma et al. [] for BC molecular classification using a generic ABMIL framework. However, this ranking masked severe degradation patterns upon external validation, including complete performance collapse for HER2-enriched and Normal-like PAM50 subtypes, and substantial degradation in HER2-positive IHC prediction. These results contrast with recent FM studies reporting successful BC molecular classification, which either excluded difficult-to-classify subtypes [], evaluated on overlapping institutional datasets [], or reported only imbalance-unaware performance metrics without per-class external validation []. These degradation patterns were not specific to the baseline CLAM architecture. Their consistency across three complementary Optuna-optimised MIL architectures (Table ) suggests that the observed limitations were rooted in the feature representations produced by the FM and in the nature of the classification task, rather than in any specific MIL design choice. Critically, optimisation on the internal validation set did not translate into improved cross-cohort generalisation in most cases, suggesting that the performance gap between internal and external evaluation reflects a genuine domain generalisation problem rather than a suboptimal training configuration. The domain shift metrics computed in this study showed differential associations with cross-cohort performance degradation, collectively pointing to covariate-level factors as the primary drivers in this setting. Feature space divergence ( d ) showed the strongest univariate association ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2=0.577$$\end{document} ), suggesting that even modest increases in centroid distance between cohorts were associated with disproportionately large performance drops, consistent with the use of feature distribution comparisons as indicators of covariate shift severity []. Staining variability benefit ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} ) showed a positive linear association with RPD, consistent with the well-documented role of staining variation as a source of domain shift in computational pathology [, ]; the heterogeneous and class-dependent effect of Macenko normalisation suggests that Virchow v2 did not fully disentangle biological morphology from colour-dependent features for all molecular classes []. In contrast, prevalence shift ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta p$$\end{document} ) showed no significant association with RPD; whilst prevalence shift (also termed prior shift in the domain generalisation literature) has been proposed as a source of domain-induced degradation [], the literature identifies covariate shift as the primary barrier to cross-site generalisation [], a pattern consistent with our findings. Finally, morphological separability ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} ) showed a negative association with RPD, consistent with the definition of class-conditional shift [], whereby classes whose morphological characteristics diverge across cohorts (i.e., lower separability in the external cohort) occupy less discriminative regions of the embedding space, rendering their classification boundaries more susceptible to domain-induced degradation. In the multivariate model, \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} and d jointly explained 80% of the variance in RPD ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2=0.800$$\end{document} , \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2_{\text {adj}}=0.750$$\end{document} ), with d contributing the larger unique share ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta R^2=0.322$$\end{document} vs. 0.224 for \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} ). Despite its univariate significance, \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} contributed no independent predictive power once \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} and d were included ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta R^2 0.001$$\end{document} ). Collinearity analysis revealed a moderate negative association between \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} and \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\rho =-0.691$$\end{document} ), suggesting that classes with lower morphological separability tend to show greater staining variability benefit — that is, their cross-cohort degradation may be partly mediated through colour-dependent rather than purely structural features. A weaker negative association was also observed between \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} and d ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\rho =-0.482$$\end{document} ), suggesting that morphologically less separable classes also tend to occupy more divergent positions in the Virchow v2 embedding space across cohorts. Together, these collinearity patterns suggest that \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} , whilst associated with RPD in univariate analysis, may capture aspects of domain shift that are already reflected in \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\Delta n$$\end{document} and d , rendering it redundant in the joint model. To our knowledge, this is the first study to systematically characterise the limitations of FM-based molecular subtype classification using MIL from H E under cross-cohort evaluation. The identification of covariate-level factors — staining variability and feature space divergence — as the primary drivers of performance degradation opens a research direction for domain adaptation techniques operating at the feature representation level, such as Low-Rank Adaptation [], Specialised Model-Sample Matching [], or Mix-of-Adapters [], as promising strategies to improve cross-cohort generalisation. Limitations of this study This study provides an exploratory characterisation of domain-induced performance degradation in BC molecular classification but several limitations should be acknowledged: TCGA and CPTAC datasets were restricted to flash-frozen tissue, limiting generalisability to formalin-fixed paraffin-embedded (FFPE) samples, which are more common in clinical workflows. This assumption implies that the covariate-level factors identified may not fully capture the sources of domain shift in FFPE-based cohorts. The benchmark did not incorporate FM releases from early 2025 (e.g., H-optimus-1), whose weights were unavailable at the time of experimentation; conclusions may evolve as newer FMs are evaluated. Furthermore, FM selection was performed using the baseline CLAM architecture, and it is possible that a different FM ranking would emerge under optimised MIL configurations, although the independent corroboration of Virchow v2 superiority by Ma et al. [] partially mitigates this concern. The regression analysis was limited by sample size ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$n=11$$\end{document} classes) and should be interpreted as exploratory. PAM50 and IHC were pooled without task type as a covariate; this assumption implies that the identified factors operate through class-level mechanisms independent of the biological task, which remains unverified. Findings should be interpreted as hypothesis-generating. Inter-rater agreement between pathologists was modest and the limited patch sample ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$n=25$$\end{document} per class) may have reduced the robustness of \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} . Whilst these agreement levels are lower than those reported in the literature for standard histological grading [], the annotation task in our study — characterising morphological features of patches selected for molecular subtype representativeness — is considerably more subjective than conventional grading. Nevertheless, this fact represents a source of uncertainty in the morphological separability estimates that should be considered when interpreting the univariate association between \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$\tilde{B}$$\end{document} and RPD. Conclusions This study provided the first systematic characterisation of domain-induced performance degradation in FM-based MIL classification of BC molecular subtypes. Virchow v2 achieved the best overall performance across 13 evaluated FMs but exhibited severe cross-cohort degradation consistent across three optimised MIL architectures, suggesting feature representations rather than aggregation design as the primary source of failure. An exploratory regression analysis identified staining variability and feature space divergence as the primary factors associated with relative degradation ( \documentclass[12pt]{minimal} + \usepackage{amsmath} + \usepackage{wasysym} + \usepackage{amsfonts} + \usepackage{amssymb} + \usepackage{amsbsy} + \usepackage{mathrsfs} + \usepackage{upgreek} + \setlength{\oddsidemargin}{-69pt} + \begin{document}$$R^2=0.800$$\end{document} ), whilst prevalence shift showed no significant association, highlighting covariate shift as the dominant barrier to cross-cohort generalisation. Future work should expand the analysis to larger and more diverse cohorts, additional molecular classes (e.g., Ki67 prediction), and FFPE-based datasets to increase statistical power and clinical relevance. Furthermore, domain adaptation strategies operating at the feature representation level represent promising directions for improving cross-cohort generalisation of FM-based molecular classifiers. Supplementary Information Below is the link to the electronic supplementary material. Supplementary file 1 (pdf 1.76 MB) Publisher’s Note Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations. Funding Funding for open access publishing: Universidad de Sevilla/CBUA. This work was partially supported by the grant PID2023-147688OA-I00 funded by MICIU/AEI/10.13039/501100011033 and ‘FEDER, a way to make Europe’ and by FEDER/Ministry of Science, Innovation and Universities/Regional Ministry of Andalusia/State Research Agency/CDTI with the following grants: Data-pl(PID2022-138486OB-I00) and SENSOLIVE(PLSQ_00162). Declarations Conflict of interest The authors have no competing interests to declare that are relevant to the content of this article. References 1. Zhang Y Ji Y Liu S Global burden of female breast cancer: new estimates in 2022, temporal trend and future projections up to 2050 based on the latest release from GLOBOCAN J Natl Cancer Center 2025 5 3 287 296 10.1016/j.jncc.2025.02.002 40693239 PMC12276554 Zhang Y, Ji Y, Liu S et al (2025) Global burden of female breast cancer: new estimates in 2022, temporal trend and future projections up to 2050 based on the latest release from GLOBOCAN. J Natl Cancer Center 5(3):287–296. 10.1016/j.jncc.2025.02.002 40693239 + 10.1016/j.jncc.2025.02.002 PMC12276554 2. Wallden B, Storhoff J, Nielsen T, et al (2015) Development and verification of the PAM50-based Prosigna breast cancer gene signature assay. BMC Med Genomics 8(54) 10.1186/s12920-015-0129-6 PMC4546262 26297356 3. Ziegengeist JL Tan AR A clinical review of subcutaneous trastuzumab and the fixed-dose combination of pertuzumab and trastuzumab for subcutaneous injection in the treatment of HER2-positive breast cancer Clin Breast Cancer 2025 25 2 124 132 10.1016/j.clbc.2024.10.005 39567339 Ziegengeist JL, Tan AR (2025) A clinical review of subcutaneous trastuzumab and the fixed-dose combination of pertuzumab and trastuzumab for subcutaneous injection in the treatment of HER2-positive breast cancer. Clin Breast Cancer 25(2):124–132. 10.1016/j.clbc.2024.10.005 10.1016/j.clbc.2024.10.005 39567339 4. Tafavvoghi M Sildnes A Rakaee M Deep learning-based classification of breast cancer molecular subtypes from H E whole-slide images J Pathology Inf 2025 16 100410 10.1016/j.jpi.2024.100410 PMC11667687 39720418 Tafavvoghi M, Sildnes A, Rakaee M et al (2025) Deep learning-based classification of breast cancer molecular subtypes from H E whole-slide images. J Pathology Inf 16:100410. 10.1016/j.jpi.2024.100410 10.1016/j.jpi.2024.100410 PMC11667687 39720418 5. Niyas S Bygari R Naik R Automated molecular subtyping of breast carcinoma using deep learning techniques IEEE J Trans Eng Health Med 2023 11 161 169 10.1109/JTEHM.2023.3241613 PMC9924555 36816095 Niyas S, Bygari R, Naik R et al (2023) Automated molecular subtyping of breast carcinoma using deep learning techniques. IEEE J Trans Eng Health Med 11:161–169. 10.1109/JTEHM.2023.3241613 10.1109/JTEHM.2023.3241613 PMC9924555 36816095 6. Huang J Li G Kan S An efficient framework based on large foundation model for cervical cytopathology whole slide image screening Biomed Signal Process Control 2025 107 107859 10.1016/j.bspc.2025.107859 Huang J, Li G, Kan S et al (2025) An efficient framework based on large foundation model for cervical cytopathology whole slide image screening. Biomed Signal Process Control 107:107859. 10.1016/j.bspc.2025.107859 7. Ma J, Xu Y, Zhou F et al (2025) PathBench: A comprehensive comparison benchmark for pathology foundation models towards precision oncology. arxiv:2505.20202 8. Valieris R Martins L Defelicibus A Weakly-supervised deep learning models enable HER2-low prediction from H E stained slides Breast Cancer Res 2024 26 124 10.1186/s13058-024-01863-0 39160593 PMC11331614 Valieris R, Martins L, Defelicibus A et al (2024) Weakly-supervised deep learning models enable HER2-low prediction from H E stained slides. Breast Cancer Res 26:124. 10.1186/s13058-024-01863-0 39160593 + 10.1186/s13058-024-01863-0 PMC11331614 9. Antamis T Drosou A Vafeiadis T Interpretability of deep neural networks: A review of methods, classification and hardware Neurocomputing 2024 601 128204 10.1016/j.neucom.2024.128204 Antamis T, Drosou A, Vafeiadis T et al (2024) Interpretability of deep neural networks: A review of methods, classification and hardware. Neurocomputing 601:128204. 10.1016/j.neucom.2024.128204 10. Dolezal JM, Wolk R, Hieromnimon HM, et al (2023) Deep learning generates synthetic cancer histology for explainability and education. NPJ Precis Onc 7(23). 10.1038/s41698-023-00399-4 10.1038/s41698-023-00399-4 PMC10227067 37248379 11. Lu MY Williamson DF Chen T Data-efficient and weakly supervised computational pathology on whole-slide images Nat Biomed Eng 2021 5 6 555 570 10.1038/s41551-020-00682-w 33649564 PMC8711640 Lu MY, Williamson DF, Chen T et al (2021) Data-efficient and weakly supervised computational pathology on whole-slide images. Nat Biomed Eng 5(6):555–570. 10.1038/s41551-020-00682-w 33649564 + 10.1038/s41551-020-00682-w PMC8711640 12. Shi J Sun D Jiang Z Weakly supervised multi-modal contrastive learning framework for predicting the her2 scores in breast cancer Comput Med Imaging Graph 2025 121 102502 10.1016/j.compmedimag.2025.102502 39919535 Shi J, Sun D, Jiang Z et al (2025) Weakly supervised multi-modal contrastive learning framework for predicting the her2 scores in breast cancer. Comput Med Imaging Graph 121:102502. 10.1016/j.compmedimag.2025.102502 39919535 + 10.1016/j.compmedimag.2025.102502 13. Pérez-Núñez J Rodríguez C Vásquez-Serpa L The challenge of deep learning for the prevention and automatic diagnosis of breast cancer: a systematic review Diagnostics (Basel) 2024 14 24 2896 10.3390/diagnostics14242896 39767257 PMC11675111 Pérez-Núñez J, Rodríguez C, Vásquez-Serpa L et al (2024) The challenge of deep learning for the prevention and automatic diagnosis of breast cancer: a systematic review. Diagnostics (Basel) 14(24):2896. 10.3390/diagnostics14242896 39767257 + 10.3390/diagnostics14242896 PMC11675111 14. Bisson T Franz M Kiehl TR A high-precision hierarchical registration approach for stain- and scanner-independent colocalization on whole slide images in histopathology Health Inf Sci Syst 2025 13 38 10.1007/s13755-025-00353-7 40416515 PMC12102413 Bisson T, Franz M, Kiehl TR et al (2025) A high-precision hierarchical registration approach for stain- and scanner-independent colocalization on whole slide images in histopathology. Health Inf Sci Syst 13:38. 10.1007/s13755-025-00353-7 40416515 + 10.1007/s13755-025-00353-7 PMC12102413 15. Godau P Kalinowski P Christodoulou E Navigating prevalence shifts in image analysis algorithm deployment Med Image Anal 2025 102 103504 10.1016/j.media.2025.103504 40020420 Godau P, Kalinowski P, Christodoulou E et al (2025) Navigating prevalence shifts in image analysis algorithm deployment. Med Image Anal 102:103504. 10.1016/j.media.2025.103504 40020420 + 10.1016/j.media.2025.103504 16. Gupta E Gupta V Margin-aware optimized contrastive learning for enhanced self-supervised histopathological image classification Health Inf Sci Syst 2025 13 2 10.1007/s13755-024-00316-4 39619405 PMC11607309 Gupta E, Gupta V (2025) Margin-aware optimized contrastive learning for enhanced self-supervised histopathological image classification. Health Inf Sci Syst 13:2. 10.1007/s13755-024-00316-4 39619405 + 10.1007/s13755-024-00316-4 PMC11607309 17. Lingle W Erickson BJ Zuley ML The cancer genome atlas breast invasive carcinoma collection (TCGA-BRCA) (Version 3) [Data set] Cancer Imaging Arch 2016 10.7937/K9/TCIA.2016.AB2NAZRP Lingle W, Erickson BJ, Zuley ML et al (2016) The cancer genome atlas breast invasive carcinoma collection (TCGA-BRCA) (Version 3) [Data set]. Cancer Imaging Arch. 10.7937/K9/TCIA.2016.AB2NAZRP 18. Lindgren CM, Adams DW, Kimball B et al (2021). Simplified and unified access to cancer proteogenomic data. 10.1021/acs.jproteome.0c00919 10.1021/acs.jproteome.0c00919 PMC8022323 33560848 19. Thennavan A Beca F Xia Y Molecular analysis of TCGA breast cancer histologic types Cell Genomics 2021 1 3 100067 10.1016/j.xgen.2021.100067 35465400 PMC9028992 Thennavan A, Beca F, Xia Y et al (2021) Molecular analysis of TCGA breast cancer histologic types. Cell Genomics 1(3):100067. 10.1016/j.xgen.2021.100067 35465400 + 10.1016/j.xgen.2021.100067 PMC9028992 20. Krug K Jaehnig EJ Satpathy S Proteogenomic landscape of breast cancer tumorigenesis and targeted therapy Cell 2020 183 5 1436 145631 10.1016/j.cell.2020.10.036 33212010 PMC8077737 Krug K, Jaehnig EJ, Satpathy S et al (2020) Proteogenomic landscape of breast cancer tumorigenesis and targeted therapy. Cell 183(5):1436–145631. 10.1016/j.cell.2020.10.036 33212010 + 10.1016/j.cell.2020.10.036 PMC8077737 21. Brussee S, Valkema PA, Weijer JA, Doeleman T, Schrader AM, Kers J (2025) Pathbench-mil: A comprehensive automl and benchmarking framework for multiple instance learning in histopathology. arXiv preprint arXiv:2512.17517 22. Garcia-Gutierrez J (2025) CLAiMem-ALL. https://github.com/BIGS-investigacion/CLAiMem-ALL.git 23. Garcia-Gutierrez J (2025) CLAiMem-ALL. https://github.com/BIGS-Investigacion/PathBench-MIL.git 24. Pedregosa F Varoquaux G Gramfort A Scikit-learn: machine learning in python J Mach Learn Res 2011 12 2825 2830 Pedregosa F, Varoquaux G, Gramfort A et al (2011) Scikit-learn: machine learning in python. J Mach Learn Res 12:2825–2830 25. Shao Z Bian H Chen Y Transmil: Transformer based correlated multiple instance learning for whole slide image classification Adv Neural Inf Process Syst 2021 34 2136 2147 Shao Z, Bian H, Chen Y et al (2021) Transmil: Transformer based correlated multiple instance learning for whole slide image classification. Adv Neural Inf Process Syst 34:2136–2147 26. Li B, Li Y, Eliceiri KW (2021) Dual-stream multiple instance learning network for whole slide image classification with self-supervised contrastive learning. In: Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, pp 14318–14328 10.1109/CVPR46437.2021.01409 PMC8765709 35047230 27. Akiba T, Sano S, Yanase T, Ohta T, Koyama M (2019) Optuna: a next-generation hyperparameter optimization framework. In: The 25th ACM SIGKDD international conference on knowledge discovery data mining, pp 2623–2631 28. Macenko M, Niethammer M, Marron JS et al (2009) A method for normalizing histology slides for quantitative analysis. In: 2009 IEEE international symposium on biomedical imaging: from nano to macro. IEEE, pp 1107–1110. 10.1109/ISBI.2009.5193250 29. Dolezal JM Kochanny S Dyer E Slideflow: deep learning for digital histopathology with real-time whole-slide visualization BMC Bioinform 2024 25 1 134 10.1186/s12859-024-05758-x PMC10967068 38539070 Dolezal JM, Kochanny S, Dyer E et al (2024) Slideflow: deep learning for digital histopathology with real-time whole-slide visualization. BMC Bioinform 25(1):134. 10.1186/s12859-024-05758-x 10.1186/s12859-024-05758-x PMC10967068 38539070 30. Ginter PS Idress R D’Alfonso TM Fineberg S Jaffer S Sattar AK Chagpar A Wilson P Harigopal M Histologic grading of breast carcinoma: a multi-institution study of interobserver variation using virtual microscopy Mod Pathol 2021 34 4 701 709 10.1038/s41379-020-00698-2 33077923 PMC7987728 Ginter PS, Idress R, D’Alfonso TM, Fineberg S, Jaffer S, Sattar AK, Chagpar A, Wilson P, Harigopal M (2021) Histologic grading of breast carcinoma: a multi-institution study of interobserver variation using virtual microscopy. Mod Pathol 34(4):701–709. 10.1038/s41379-020-00698-2 33077923 + 10.1038/s41379-020-00698-2 PMC7987728 31. Landis JR Koch GG The measurement of observer agreement for categorical data Biometrics 1977 33 1 159 174 10.2307/2529310 843571 Landis JR, Koch GG (1977) The measurement of observer agreement for categorical data. Biometrics 33(1):159–174 843571 + 32. Shamai G Schley R Cretu A Clinical utility of receptor status prediction in breast cancer and misdiagnosis identification using deep learning on hematoxylin and eosin-stained slides Commun Med 2024 4 1 276 10.1038/s43856-024-00695-5 39706861 PMC11661999 Shamai G, Schley R, Cretu A et al (2024) Clinical utility of receptor status prediction in breast cancer and misdiagnosis identification using deep learning on hematoxylin and eosin-stained slides. Commun Med 4(1):276. 10.1038/s43856-024-00695-5 39706861 + 10.1038/s43856-024-00695-5 PMC11661999 33. Jang W Lee J Park K Molecular classification of breast cancer using weakly supervised learning Cancer Res Treat 2024 57 1 116 125 10.4143/crt.2024.113 38938010 PMC11729310 Jang W, Lee J, Park K et al (2024) Molecular classification of breast cancer using weakly supervised learning. Cancer Res Treat 57(1):116–125. 10.4143/crt.2024.113 38938010 + 10.4143/crt.2024.113 PMC11729310 34. Jahanifar M, Raza M, Xu K et al (2025) Domain generalization in computational pathology: Survey and guidelines. ACM Comput Surv 57(11). 10.1145/3724391 35. Tellez D Litjens G Bándi P Quantifying the effects of data augmentation and stain color normalization in convolutional neural networks for computational pathology Med Image Anal 2019 58 101544 10.1016/j.media.2019.101544 31466046 Tellez D, Litjens G, Bándi P et al (2019) Quantifying the effects of data augmentation and stain color normalization in convolutional neural networks for computational pathology. Med Image Anal 58:101544. 10.1016/j.media.2019.101544 31466046 + 10.1016/j.media.2019.101544 36. Hu EJ, Shen Y, Wallis P et al (2022) LoRA: Low-rank adaptation of large language models. In: International conference on learning representations 37. Li Z, Ren K, Jiang X, Shen Y, Zhang H, Li D (2023) SIMPLE: Specialized model-sample matching for domain generalization. In: The eleventh international conference on learning representations 38. Lee G, Jang W, Kim J et al. Domain generalization using large pretrained models with mixture-of-adapters. 10.1109/WACV61041.2025.00801 diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/paper-doi.url b/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/paper-doi.url new file mode 100644 index 0000000..ab8c17a --- /dev/null +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/paper-doi.url @@ -0,0 +1,2 @@ +[InternetShortcut] +URL=https://doi.org/10.1007/s11517-026-03590-4 diff --git a/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/paper-openaccess-pmc.url b/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/paper-openaccess-pmc.url new file mode 100644 index 0000000..1b5d794 --- /dev/null +++ b/research/phenotype-prediction/fernandez-romero-2026-domaingen/sources/paper-openaccess-pmc.url @@ -0,0 +1,2 @@ +[InternetShortcut] +URL=https://europepmc.org/articles/PMC13269319