[x] Added GLC24 pre_extracted habitat dataset and example (see PR 58 in the Links section)
[x] Changed the way checkpoints are loaded from loading the state_dict of the model object to loading the state_dict of the LightningModule. This is a breaking change as examples needed to be updated by removing the replacement of "model." string in the loaded state_dict.
[x] Added possibility to download model weights for any Malpolon model given a URL and a few file paths
[x] Updated the way checkpoint_path is passed on to models. Added an attribute checkpoint_path for all Malpolon models
Updated every examples consequently
[x] Added Malpolon as (local) model provider.
Created new module malpolon.models.custom_models which will host custom models proposed by Malpolon
Split classes from geolifeclef2024_multimodal_ensemble.py to glc2024_multimodal_ensemble_model.py and glc2024_pre_extracted_prediction_system.py in custom_models to prevent circular import from malpolon.models.model_builder after adding Malpolon as (local) provider
Minor
[x] Updated malpolon.data.data_module.export_predict_csv to enable more flexibility when outputting the prediction CSV for a single data point.
Examples
[x] Added GLC24 pre-extracted examples (habitat and species) using the MultiModalEnsemble (MME) model
Automatic download of the dataset from Kaggle (depending on the value of boolean config parameter data.download_data)
Automatic download of the model weights from Seafile if not already on disk, via a new model.model_kwargs.pretrained key in the config file. The weights enable users to directly run our MME model on our GLC24_pre_extracted Test set and reach ~30% micro F1-score with ~26% micro precision and ~36% micro Recall, as well as ~96% micro AuC.
Tests
[x] Added and updated unit tests for GLC24 pre-extracted examples (habitat and species)
:memo: Changelog
Major
[x] Added GLC24 pre_extracted habitat dataset and example (see PR 58 in the Links section)
[x] Changed the way checkpoints are loaded from loading the
state_dict
of the model object to loading thestate_dict
of the LightningModule. This is a breaking change as examples needed to be updated by removing the replacement of "model." string in the loaded state_dict.[x] Added possibility to download model weights for any Malpolon model given a URL and a few file paths
[x] Updated the way checkpoint_path is passed on to models. Added an attribute checkpoint_path for all Malpolon models
[x] Added Malpolon as (local) model provider.
malpolon.models.custom_models
which will host custom models proposed by Malpolongeolifeclef2024_multimodal_ensemble.py
to glc2024_multimodal_ensemble_model.py and glc2024_pre_extracted_prediction_system.py in custom_models to prevent circular import from malpolon.models.model_builder after adding Malpolon as (local) providerMinor
malpolon.data.data_module.export_predict_csv
to enable more flexibility when outputting the prediction CSV for a single data point.Examples
data.download_data
)model.model_kwargs.pretrained
key in the config file. The weights enable users to directly run our MME model on our GLC24_pre_extracted Test set and reach ~30% micro F1-score with ~26% micro precision and ~36% micro Recall, as well as ~96% micro AuC.Tests
:link: Links
:white_check_mark: Checklist