PATCHGAN PARADOX/ brats-2020
Dataset BraTS 2020 · 369 volumes Ablation Models A–D Runs 5 × 35 epochs Compute 12.2 GPU-h Author Dhruv Gupta · Bennett University
Results

Every number, every curve, every prediction

Test-set metrics for the U-Net baseline, the structural comparison across all five models, 35 epochs of training telemetry for each run, and the prediction galleries they produced. All values are read directly from the notebook cell outputs.

Comparison

Structural agreement with expert masks

All five models scored on tumour-bearing validation slices, comparing the argmax label map of the prediction against the expert annotation.

PSNR (dB)

higher is better
  • Model A · U-Net25.38
  • Model D · 4×425.96
  • Model D + CLAHE24.76
  • Model B · 3×3 s224.64
  • Model C · 3×3 s121.62

Bars scaled across the observed range 21.5–26.0 dB to make the differences legible; the axis does not start at zero.

SSIM

higher is better
  • Model A · U-Net0.9577
  • Model D · 4×40.9583
  • Model D + CLAHE0.9582
  • Model B · 3×3 s20.9510
  • Model C · 3×3 s10.9341

Scaled across 0.933–0.959. The top three sit within 0.0001 of each other — well inside run-to-run noise.

Full comparison. Segmentation loss is the generator’s cross-entropy term at the final epoch; training time is wall-clock on a Kaggle GPU session. Model C holds the best seg loss and the worst SSIM — the PatchGAN Paradox.
ModelDiscriminatorParams (D)Seg lossPSNRSSIMTrainFinal D loss
Model A — U-Netnone — pixel-wise loss—0.017725.38170.957788 min—
Model D — 4×4, s24×4 kernel, stride 2727,4890.019825.95560.9583137 min1.1529
Model D + CLAHE4×4 kernel, stride 2727,4890.019424.76330.9582147 min1.0928
Model B — 3×3, s216×16 patch grid1,560,8970.037824.63950.9510148 min1.0109
Model C — 3×3, s116×16 patch grid1,559,9370.035521.61540.9341211 min12.4787

Read these gaps as directional, not exact. The train/validation split was drawn without a fixed random seed, so each notebook evaluated on a different partition — 4,453 tumour slices for Model A, 4,623 for Model B, 4,524 for Model C. Sub-decibel differences sit inside that variance. The 3 dB collapse of Model C does not, and neither does the artefact / no-artefact distinction. Where the accompanying paper quotes different figures for Model D, the notebook-measured value is used throughout this site. Full limitations →

Model A · baseline U-Net

Model A on the held-out test set — 45 patients, 4,500 slices

Accuracy
99.27%
Precision
99.34%
Sensitivity
99.11%
Specificity
99.78%
Per-class Dice coefficient on the test set.
Tumour sub-regionDice
GD-enhancing tumour0.7084
Peritumoral edema0.6995
Necrotic / non-enhancing core0.5687
Mean over all four classes0.6124

Reading the numbers honestly

Accuracy near 99 % sounds decisive and is almost meaningless here: predicting "background" for every voxel would already score ~98 %. Dice is the number that matters, and 0.57–0.71 per sub-region is a solid result for a compact 2D model trained for 35 epochs on downsampled input — well short of the 0.85+ that 3D ensembles reach on the BraTS leaderboard.

The ordering across sub-regions is itself a sanity check on the pipeline. The enhancing rim is brightest on T1ce, edema is largest and cleanest on FLAIR, and the necrotic core is small, irregular and defined by the absence of enhancement — hardest for all three reasons at once.

Mean IoU is omitted deliberately. The pipeline configures tf.keras.metrics.MeanIoU(num_classes=4) with one-hot targets and softmax probabilities instead of integer class indices, so it degenerates to a constant 0.5. No IoU figure from these runs is trustworthy. Why →

Training telemetry

35 epochs, five runs

Reconstructed from the printed epoch logs of each notebook and the baseline's training.log. Click a legend entry to isolate a run; hover the plot to read exact values.

The discriminator plot is the most informative chart in this study. Models B and D settle near 1.0 — the equilibrium value when a critic is guessing at chance, which is exactly where a healthy GAN lands. Model C instead climbs from 9.06 to 12.48: it is getting steadily worse at its own task while the generator's segmentation loss keeps falling. That divergence is the PatchGAN Paradox in telemetry form, and the mechanism behind Model C's 3 dB PSNR deficit.

Baseline learning rate drops are visible as the flattening after epoch ~24, when ReduceLROnPlateau cut it by 5× twice in succession down to the 10-6 floor. The best checkpoint by validation loss was epoch 21 (val_loss 0.026537).

Data exploration

What the pipeline sees before training starts