ProtoPur: Prototype-Purity Pseudo-Labeling for Weakly Supervised Instance Learning in Pathology
Organizations: College of Computer Science, Sichuan University, Chengdu, China · Institute of Clinical Pathology, West China Hospital, Sichuan University, Chengdu, China · Pittsburgh Institute, Sichuan University, Chengdu, China · Department of Pathology, West China Hospital, Sichuan University, Chengdu, China
Abstract
Weak bag-level labels are widely available in computational pathology, whereas reliable instance-level annotations for whole-slide images remain expensive and ambiguous. Weakly supervised multiple instance learning (MIL) achieves strong bag-level classification, but instance-level supervision from attention scores, model predictions, negative bags, or spatial refinement may fail to identify class-specific local evidence. We propose ProtoPur, a prototype-purity pseudo-labeling method for weakly supervised instance-level learning in pathology whole-slide images. ProtoPur estimates class-balanced local purity over prototype regions constructed from frozen foundation-model features, and assigns pseudo-labels to high-purity regions strongly associated with a target class. This purity-first design separates class-specific evidence from negative or shared morphology, with coverage used only to ensure sufficient pseudo-label assignment. We provide a PAC-style analysis showing that the risk of an instance classifier trained with ProtoPur pseudo-labels can be decomposed into a standard uniform-convergence term and a ProtoPur-specific pseudo-label noise term, comprising selected-region mismatch and a coverage residual. Experiments on three public whole-slide image datasets with two pathology foundation encoders show that ProtoPur consistently improves instance-level performance across multiple MIL backbones while maintaining competitive bag-level performance. Pseudo-label quality comparisons on two public datasets further demonstrate that prototype-purity selection provides stronger instance supervision. These results suggest that the foundation-model features contain exploitable instance-level supervision signals, and ProtoPur is a way to reveal and use these signals from weak bag labels without requiring dense instance annotations.
Figures & tables
| Encoder | Model | TCGA-BRCA-Invasive | TCGA-LUNG | BRACS | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Bag | Instance | Bag | Instance | Bag | Instance | ||||||||
| AUC | AUC | AUC | |||||||||||
| CONCH [ 21 ] | AB-MIL [ 4 ] | 88.41 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.75 | N/A | N/A | N/A | 98.31 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.50 | N/A | N/A | N/A | 84.63 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.16 | N/A | N/A | N/A |
| Trans-MIL [ 7 ] | 86.51 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.93 | N/A | N/A | N/A | 97.71 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.44 | N/A | N/A | N/A | 82.70 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.23 | N/A | N/A | N/A | |
| DTFD-MIL [ 8 ] | 87.11 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.87 | 71.70 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.49 | 73.36 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.47 | 77.86 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.50 | 98.21 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.56 | 72.59 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.08 | 76.49 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.99 | 84.46 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.92 | 82.58 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.32 | 80.07 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.52 | 80.92 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.40 | 82.64 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.53 | |
| WENO [ 13 ] | 86.75 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 4.57 | 79.74 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.90 | 77.63 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.96 | 79.09 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 3.53 | 98.19 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.52 | 78.57 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.35 | 79.56 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.07 | 84.30 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.37 | 84.37 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.46 | 76.64 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.88 | 78.03 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 3.56 | 80.53 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 3.35 | |
| Dataset | Method | |||
|---|---|---|---|---|
| TCGA- PanGlioma | Text-Similarity | 71.62 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.52 | 82.32 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.38 | 94.12 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.33 |
| TextSim-Coord | 72.93 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.35 | 80.55 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.27 | 90.35 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.33 | |
| Cover-Marginal | 65.54 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 4.88 | 71.73 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 6.94 | 79.96 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 9.59 | |
| Cover-Total | 71.43 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.51 | 82.50 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 0.97 | 93.96 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 1.71 | |
| Attention-Score | 71.49 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 3.76 | 80.10 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 3.75 | 93.27 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 2.30 | |
| Attention-TopK | 62.93 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 4.52 | 66.59 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 4.02 | 88.18 \mathbin{\vbox{\hbox{\makebox[5.41673pt][c]{\scalebox{0.8}{\pm}}}}} 4.65 |
| Baseline | ProtoPur | Class-Balance | Bag | Instance | ||
|---|---|---|---|---|---|---|
| AUC | ||||||
| – | – | 87.23 | 83.51 | 81.15 | 77.16 | |
| – | 88.36 | 84.24 | 82.62 | 79.36 | ||
| 88.39 | 84.76 | 83.43 | 79.76 | |||
| Complement formulation | |||
|---|---|---|---|
| Single ( , default) | 84.46 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 1.44 | 83.38 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 1.64 | 79.20 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 3.45 |
| Decomposed ( ) | 84.14 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 1.53 | 83.56 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 2.00 | 79.47 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 3.53 |
| Decomposed ( ) | 84.36 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 1.56 | 83.61 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 2.20 | 79.36 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 3.67 |
| Decomposed ( ) | 83.49 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 1.87 | 82.92 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 2.55 | 79.05 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 3.36 |
| Decomposed ( ) | 84.12 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 1.46 | 83.62 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 1.95 | 79.71 \mathbin{\vbox{\hbox{\makebox[6.25002pt][c]{\scalebox{0.8}{\pm}}}}} 2.62 |
Weakly Supervised Learning
Weakly supervised learning trains models from incomplete, noisy, coarse, or indirect labels instead of dense ground truth.
See all 156 papers