This document contains a description of responses to the Common Test I. Multi-Class Classification and the Specific Test III.A and III.B: Superresolution for Strong Gravitational Lensing. The responses are presented as a study of super-resolution, the challenges it faces and what can be done to overcome them. An initial description of all the models used is followed by training and evaluation procedure, and then the results and inference.
This section provides a brief description of the models, as they are named in the repository. Many models are adaptations of those presented by Sagar Vinodababu here.
All models are trained using a 90:10 train:validation split on the training dataset, and then evaluated on mean squared error, structural similarity index and peak signal-to-noise ratio. All training and evaluation notebooks can be found in the repository.
pip install -r requirements.txt
from the parent main directory to install the required dependenciesAs presented in my attempt at the evaluation test for Physics-Guided Machine Learning, here are the results of common task I, using the Resnet_simple model, and the much deeper ResNet18 [3] model.
Below are results of the subtask A, on Dataset A.
Model | MSE | SSIM | PSNR |
---|---|---|---|
ResnetSISR (10 residual blocks) | 0.00008 | 0.971 | 40.962 |
Below are results of the subtask B, on Dataset B. | Model | MSE | SSIM | PSNR |
---|---|---|---|---|
ResnetSISR_sparse (10 residual blocks) | 0.0011 | 0.798 | 33.604 | |
ResnetSISR_sparse_deep (16 residual blocks) | 0.0014 | 0.747 | 32.403 | |
DenoisedSISR (with 0.1 std noise) | 0.00105 | 0.814 | 34.115 | |
DenoisedSISR (with 0.2 std noise) | 0.00117 | 0.779 | 33.056 | |
DenoisedSISR (with 0.3 std noise) | 0.00119 | 0.794 | 33.006 | |
DenoisedSISR (with 0.4 std noise) | 0.00123 | 0.774 | 32.784 | |
SRGan | 0.01387 | 0.564 | 19.259 |
Firstly, we see that increasing model depth does not improve performance. The DenoisedSISR model trained with 0.1 std noise seems to be the best performing, across all statistics. The truth in this is limited. While it does outperform all other ResnetSISR architectures, and it seems to very convincingly outperform the SRGan too, the images have a different story to tell. I have indicated in the image above clearly the distinct point light sources. The second is not clearly reprocuced by any architecture, except the SRGan, which was specifically trained for this purpose, as presented in [3]. The difference lies in the loss function that trains the architecture.
Below is an illustration adapted from [3] that shows the attempts of a SR model in reconstructing a hatched pattern.
The each of the three options the model has (with red squares) are good candidates for the SR image. The model however finds it difficult to pick any of them, as the safest choice is the averaged choice as it gives the least MSE when compared with all other options. MSE as a loss function thus fails to capture the specific features to be magnified, and instead produces an images with blurry regions. This is well seen in Section 4.2. The solution proposed shown in [3] is to use a trained truncated classifier, to select the specific features from the images. The MSE of the features of the LR image and the HR ground truth are computed and appended to the generator loss to then train the architecture. The SRGan is thus able to reproduce the intricate features, as seen in Section 4.2. This is specially useful in the super-resolution of lensing images where the fine structure creates a massive difference in the inference using these images.