--- library_name: pytorch tags: - medical-imaging - chest-x-ray - multi-label-classification - semi-supervised-learning - chexpert - resnet50 datasets: - stanfordaimi/chexpert metrics: - auroc license: mit --- # loihuynh/semisub-cxr-uncertainty_filter-0.2 Semi-supervised multi-label chest X-ray classifier trained on the CheXpert dataset. ## Model Description - **Architecture**: ResNet-50 backbone + Dropout + Linear head (6 classes) - **Backbone**: `resnet50_imagenet` (ImageNet pretrained) - **Training setting**: `uncertainty_filter` - **Labeled data ratio**: 0.2 (20% of training set) - **Seed**: 42 - **Best epoch**: 10 ## Labels This model predicts the following 6 chest X-ray findings: `Cardiomegaly`, `Pleural Effusion`, `Pneumothorax`, `Consolidation`, `Atelectasis`, `Edema` ## Performance **Macro AUROC**: 0.8519 | Class | AUROC | |---|---| | Cardiomegaly | 0.8127 | | Pleural Effusion | 0.9301 | | Pneumothorax | 0.8648 | | Consolidation | 0.8715 | | Atelectasis | 0.7181 | | Edema | 0.9144 | ## Usage ```python from src.utils.hub import load_from_hub model = load_from_hub("loihuynh/semisub-cxr-uncertainty_filter-0.2") model.eval() # Run inference on a preprocessed image tensor (1, 3, 224, 224) import torch with torch.no_grad(): logits = model(image_tensor) probabilities = torch.sigmoid(logits) ``` ## Training Details - **Dataset**: [CheXpert](https://stanfordmlgroup.github.io/competitions/chexpert/) - **Method**: Pseudo-labeling with MC Dropout uncertainty filtering - **Loss**: Binary Cross-Entropy (with masking for pseudo-labels) - **Image size**: 224x224 ## Citation If you use this model, please cite the CheXpert dataset: ```bibtex @inproceedings{irvin2019chexpert, title={CheXpert: A Large Chest Radiograph Dataset with Uncertainty Labels and Expert Comparison}, author={Irvin, Jeremy and others}, booktitle={AAAI}, year={2019} } ```