{"id":13738456,"url":"https://github.com/sicara/easy-few-shot-learning","last_synced_at":"2025-10-17T05:46:58.553Z","repository":{"id":37833834,"uuid":"334984118","full_name":"sicara/easy-few-shot-learning","owner":"sicara","description":"Ready-to-use code and tutorial notebooks to boost your way into few-shot learning for image classification. ","archived":false,"fork":false,"pushed_at":"2024-11-13T14:02:24.000Z","size":2261,"stargazers_count":1255,"open_issues_count":18,"forks_count":168,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-09-27T20:14:57.654Z","etag":null,"topics":["deep-learning","few-shot-classifcation","few-shot-learning","few-shot-recognition","image-classification","machine-learning","meta-learning","pytorch"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sicara.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-02-01T14:55:41.000Z","updated_at":"2025-09-27T11:48:46.000Z","dependencies_parsed_at":"2023-09-23T17:10:44.986Z","dependency_job_id":"611bf1c3-26f3-4975-b987-a6b1680b1a63","html_url":"https://github.com/sicara/easy-few-shot-learning","commit_stats":{"total_commits":147,"total_committers":14,"mean_commits":10.5,"dds":"0.44217687074829937","last_synced_commit":"2ed387ef1e30176c679657ccca1b1a2b0ca247a4"},"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/sicara/easy-few-shot-learning","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sicara%2Feasy-few-shot-learning","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sicara%2Feasy-few-shot-learning/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sicara%2Feasy-few-shot-learning/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sicara%2Feasy-few-shot-learning/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sicara","download_url":"https://codeload.github.com/sicara/easy-few-shot-learning/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sicara%2Feasy-few-shot-learning/sbom","scorecard":{"id":822212,"data":{"date":"2025-08-11","repo":{"name":"github.com/sicara/easy-few-shot-learning","commit":"8023ff49a02a68830c10a21b8eb908cb33bdf1b9"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":4,"reason":"Found 13/30 approved changesets -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":0,"reason":"12 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2024-48 / GHSA-fj7x-q9j7-g6q6","Warn: Project is vulnerable to: PYSEC-2023-238 / GHSA-5wvp-7f3h-6wmm","Warn: Project is vulnerable to: PYSEC-2024-161","Warn: Project is vulnerable to: GHSA-3749-ghw9-m3mg","Warn: Project is vulnerable to: PYSEC-2022-43015 / GHSA-47fc-vmwq-366v","Warn: Project is vulnerable to: PYSEC-2025-41 / GHSA-53q9-r3pm-6pq6","Warn: Project is vulnerable to: PYSEC-2024-252 / GHSA-5pcm-hx3q-hm94","Warn: Project is vulnerable to: GHSA-887c-mr87-cxwp","Warn: Project is vulnerable to: PYSEC-2024-251 / GHSA-pg7h-5qx3-wjr3","Warn: Project is vulnerable to: PYSEC-2024-250","Warn: Project is vulnerable to: PYSEC-2024-259","Warn: Project is vulnerable to: GHSA-g7vv-2v7x-gj9p"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 21 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-23T15:52:54.479Z","repository_id":37833834,"created_at":"2025-08-23T15:52:54.479Z","updated_at":"2025-08-23T15:52:54.479Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278981518,"owners_count":26079640,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-08T02:00:06.501Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deep-learning","few-shot-classifcation","few-shot-learning","few-shot-recognition","image-classification","machine-learning","meta-learning","pytorch"],"created_at":"2024-08-03T03:02:23.015Z","updated_at":"2025-10-08T17:14:07.345Z","avatar_url":"https://github.com/sicara.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# Easy Few-Shot Learning\n![Python Versions](https://img.shields.io/pypi/pyversions/easyfsl?logo=python\u0026logoColor=white\u0026style=for-the-badge)\n![License: MIT](https://img.shields.io/badge/license-MIT-green?style=for-the-badge)\n![CircleCI](https://img.shields.io/circleci/build/github/sicara/easy-few-shot-learning?logo=circleci\u0026style=for-the-badge)\n![PyPi Downloads](https://img.shields.io/pypi/dm/easyfsl?logo=pypi\u0026logoColor=white\u0026style=for-the-badge)\n![Last Release](https://img.shields.io/github/release-date/sicara/easy-few-shot-learning?label=Last%20Release\u0026logo=pypi\u0026logoColor=white\u0026style=for-the-badge)\n![Github Issues](https://img.shields.io/github/issues-closed/sicara/easy-few-shot-learning?color=green\u0026logo=github\u0026style=for-the-badge)\n\nReady-to-use code and tutorial notebooks to boost your way into few-shot image classification. \nThis repository is made for you if:\n\n- you're new to few-shot learning and want to learn;\n- or you're looking for reliable, clear and easily usable code that you can use for your projects.\n\nDon't get lost in large repositories with hundreds of methods and no explanation on how to use them. Here, we want each line\nof code to be covered by a tutorial.\n## What's in there?\n\n### Notebooks: learn and practice\nYou want to learn few-shot learning and don't know where to start? Start with our tutorials.\n\n| Notebook                                                                                       | Description                                                                                                                                                                                  | Colab                                                                                                                                                                                                              |\n|------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [First steps into few-shot image classification](notebooks/my_first_few_shot_classifier.ipynb) | Basically Few-Shot Learning 101, in less than 15min.                                                                                                                                         | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/sicara/easy-few-shot-learning/blob/master/notebooks/my_first_few_shot_classifier.ipynb)      |\n| [Example of episodic training](notebooks/episodic_training.ipynb)                              | Use it as a starting point if you want to design a script for episodic training using EasyFSL.                                                                                               | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/sicara/easy-few-shot-learning/blob/master/notebooks/episodic_training.ipynb)                 |\n| [Example of classical training](notebooks/classical_training.ipynb)                            | Use it as a starting point if you want to design a script for classical training using EasyFSL.                                                                                              | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/sicara/easy-few-shot-learning/blob/master/notebooks/classical_training.ipynb)                |\n| [Test with pre-extracted embeddings](notebooks/inference_with_extracted_embeddings.ipynb)      | Most few-shot methods use a frozen backbone at test-time. With EasyFSL, you can extract all embeddings for your dataset once and for all, and then perform inference directly on embeddings. | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/sicara/easy-few-shot-learning/blob/master/notebooks/inference_with_extracted_embeddings.ipynb) |\n\n### Code that you can use and understand\n\n**State-Of-The-Art Few-Shot Learning methods:**\n\nWith 11 built-in methods, EasyFSL is the most comprehensive open-source Few-Shot Learning library!\n\n- [Prototypical Networks](easyfsl/methods/prototypical_networks.py)\n- [SimpleShot](easyfsl/methods/simple_shot.py)\n- [Matching Networks](easyfsl/methods/matching_networks.py)\n- [Relation Networks](easyfsl/methods/relation_networks.py)\n- [FEAT](easyfsl/methods/feat.py)\n- [Fine-Tune](easyfsl/methods/finetune.py)\n- [BD-CSPN](easyfsl/methods/bd_cspn.py)\n- [LaplacianShot](easyfsl/methods/laplacian_shot.py)\n- [Transductive Information Maximization](easyfsl/methods/tim.py)\n- [PT-MAP](easyfsl/methods/pt_map.py)\n- [Transductive Fine-Tuning](easyfsl/methods/transductive_finetuning.py)\n\nWe also provide a [FewShotClassifier](easyfsl/methods/few_shot_classifier.py) class to quickstart your implementation \nof any few-shot classification algorithm, as well as [commonly used architectures](easyfsl/modules).\n\nSee the benchmarks section below for more details on the methods.\n\n**Tools for data loading:**\n\nData loading in FSL is a bit different from standard classification because we sample batches of\ninstances in the shape of few-shot classification tasks. No sweat! In EasyFSL you have:\n\n- [TaskSampler](easyfsl/samplers/task_sampler.py): an extension of the standard PyTorch Sampler object, to sample batches in the shape of few-shot classification tasks\n- [FewShotDataset](easyfsl/datasets/few_shot_dataset.py): an abstract class to standardize the interface of any dataset you'd like to use\n- [EasySet](easyfsl/datasets/easy_set.py): a ready-to-use FewShotDataset object to handle datasets of images with a class-wise directory split\n- [WrapFewShotDataset](easyfsl/datasets/wrap_few_shot_dataset.py): a wrapper to transform any dataset into a FewShotDataset object\n- [FeaturesDataset](easyfsl/datasets/features_dataset.py): a dataset to handle pre-extracted features\n- [SupportSetFolder](easyfsl/datasets/support_set_folder.py): a dataset to handle support sets stored in a directory\n\n**Scripts to reproduce our benchmarks:**\n\n- `scripts/predict_embeddings.py` to extract all embeddings from a dataset with a given pre-trained backbone\n- `scripts/benchmark_methods.py` to evaluate a method on a test dataset using pre-extracted embeddings.\n\n**And also:** [some utilities](easyfsl/utils.py) that I felt I often used in my research, so I'm sharing with you.\n\n### Datasets to test your model\n\nThere are enough datasets used in Few-Shot Learning for anyone to get lost in them. They're all here, \nexplicited, downloadable and easy-to-use, in EasyFSL. \n\n**[CU-Birds](http://www.vision.caltech.edu/visipedia/CUB-200.html)**\n\nWe provide a `make download-cub` recipe to download and extract the dataset, \nalong with the standard [(train / val / test) split](data/CUB) along classes. \nOnce you've downloaded the dataset, you can instantiate the Dataset objects in your code\nwith this super complicated process:\n\n```python\nfrom easyfsl.datasets import CUB\n\ntrain_set = CUB(split=\"train\", training=True)\ntest_set = CUB(split=\"test\", training=False)\n```\n\n**[tieredImageNet](https://paperswithcode.com/dataset/tieredimagenet)**\n\nTo use it, you need the [ILSVRC2015](https://image-net.org/challenges/LSVRC/index.php) dataset. Once you have \ndownloaded and extracted the dataset, ensure that its localisation on disk is consistent with the class paths\nspecified in the [specification files](data/tiered_imagenet). Then:\n\n```python\nfrom easyfsl.datasets import TieredImageNet\n\ntrain_set = TieredImageNet(split=\"train\", training=True)\ntest_set = TieredImageNet(split=\"test\", training=False)\n```\n\n**[miniImageNet](https://paperswithcode.com/dataset/miniimagenet)**\n\nSame as tieredImageNet, we provide the [specification files](data/mini_imagenet), \nbut you need the [ILSVRC2015](https://image-net.org/challenges/LSVRC/index.php) dataset.\nOnce you have it:\n\n```python\nfrom easyfsl.datasets import MiniImageNet\n\ntrain_set = MiniImageNet(root=\"where/imagenet/is\", split=\"train\", training=True)\ntest_set = MiniImageNet(root=\"where/imagenet/is\", split=\"test\", training=False)\n```\n\nSince miniImageNet is relatively small, you can also load it on RAM directly at instantiation simply by\nadding `load_on_ram=True` to the constructor. \nIt takes a few minutes but it can make your training significantly faster!\n\n**[Danish Fungi](https://paperswithcode.com/paper/danish-fungi-2020-not-just-another-image)**\n\nI've recently started using it as a Few-Shot Learning benchmarks, and I can tell you it's a great\nplaying field. To use it, first download the data:\n\n```shell\n# Download the original dataset (/!\\ 110GB)\nwget http://ptak.felk.cvut.cz/plants/DanishFungiDataset/DF20-train_val.tar.gz\n# Or alternatively the images reduced to 300px (6.5Gb)\nwget http://ptak.felk.cvut.cz/plants/DanishFungiDataset/DF20-300px.tar.gz\n# And finally download the metadata (83Mb) to data/fungi/\nwget https://public-sicara.s3.eu-central-1.amazonaws.com/easy-fsl/DF20_metadata.csv  -O data/fungi/DF20_metadata.csv\n```\n\nAnd then instantiate the dataset with the same process as always:\n\n```python\nfrom easyfsl.datasets import DanishFungi\n\ndataset = DanishFungi(root=\"where/fungi/is\")\n```\n\nNote that I didn't specify a train and test set because the CSV I gave you describes the whole dataset.\nI recommend to use it to test models with weights trained on an other dataset (like ImageNet).\nBut if you want to propose a train/val/test split along classes, you're welcome to contribute!\n\n## QuickStart\n\n\n1. Install the package: ```pip install easyfsl``` or simply fork the repository.\n   \n2. [Download your data](#datasets-to-test-your-model).\n\n3. Design your training and evaluation scripts. You can use our example notebooks for \n[episodic training](notebooks/episodic_training.ipynb) \nor [classical training](notebooks/classical_training.ipynb).\n\n## Contribute\nThis project is very open to contributions! You can help in various ways:\n- raise issues\n- resolve issues already opened\n- tackle new features from the roadmap\n- fix typos, improve code quality\n\n## Benchmarks\n\nWe used EasyFSL to benchmark a dozen methods. \nInference times are computed over 1000 tasks using pre-extracted features. They are only indicative.\nNote that the inference time for fine-tuning methods highly depends on the number of fine-tuning steps.\n\nAll methods hyperparameters are defined in [this JSON file](scripts/backbones_configs.json). \nThey were selected on miniImageNet validation set. \nThe procedure can be reproduced with `make hyperparameter-search`.\nWe decided to use miniImageNet's hyperparameters for all benchmarks in order to highlight the adaptability of\nthe different methods.\nNote that all methods use L2 normalization of features, except for FEAT as it harms its performance.\n\nThere are no results for Mathing and Relation Networks as the trained weights for their additional modules are unavailable.\n\n### miniImageNet \u0026 tieredImageNet\n\nAll methods use the same backbone: [a custom ResNet12](easyfsl/modules/feat_resnet12.py) using the trained parameters\nprovided by the authors from [FEAT](https://github.com/Sha-Lab/FEAT) \n(download: [miniImageNet](https://drive.google.com/file/d/1ixqw1l9XVxl3lh1m5VXkctw6JssahGbQ/view),\n[tieredImageNet](https://drive.google.com/file/d/1M93jdOjAn8IihICPKJg8Mb4B-eYDSZfE/view)).\n\nBest inductive and best transductive results for each column are shown in bold.\n\n| Method                                                                    | Ind / Trans  | *mini*Imagenet\u003cbr/\u003e1-shot | *mini*Imagenet\u003cbr/\u003e5-shot | *tiered*Imagenet\u003cbr/\u003e1-shot | *tiered*Imagenet\u003cbr/\u003e5-shot | Time    |\n|---------------------------------------------------------------------------|--------------|---------------------------|---------------------------|-----------------------------|-----------------------------|---------|\n| **[ProtoNet](easyfsl/methods/prototypical_networks.py)**                  | Inductive    | 63.6                      | 80.4                      | 60.2                        | 77.4                        | 6s      |\n| **[SimpleShot](easyfsl/methods/simple_shot.py)**                          | Inductive    | 63.6                      | **80.5**                  | 60.2                        | 77.4                        | 6s      |\n| **[MatchingNet](easyfsl/methods/matching_networks.py)**                   | Inductive    | -                         | -                         | -                           | -                           | -       |\n| **[RelationNet](easyfsl/methods/relation_networks.py)**                   | Inductive    | -                         | -                         | -                           | -                           | -       |\n| **[Finetune](easyfsl/methods/finetune.py)**                               | Inductive    | 63.3                      | **80.5**                  | 59.8                        | **77.5**                    | 1mn33s  |\n| **[FEAT](easyfsl/methods/feat.py)**                                       | Inductive    | **64.7**                  | 80.1                      | **61.3**                    | 76.2                        | 3s      |\n| **[BD-CSPN](easyfsl/methods/bd_cspn.py)**                                 | Transductive | 69.8                      | 82.2                      | 66.3                        | 79.1                        | 7s      |\n| **[LaplacianShot](easyfsl/methods/laplacian_shot.py)**                    | Transductive | 69.8                      | 82.3                      | 66.2                        | 79.2                        | 9s      |\n| **[PT-MAP](easyfsl/methods/pt_map.py)**                                   | Transductive | **76.1**                  | **84.2**                  | **71.7**                    | **80.7**                    | 39mn40s |\n| **[TIM](easyfsl/methods/tim.py)**                                         | Transductive | 74.3                      | **84.2**                  | 70.7                        | **80.7**                    | 3mn05s  |\n| **[Transductive Finetuning](easyfsl/methods/transductive_finetuning.py)** | Transductive | 63.0                      | 80.6                      | 59.1                        | 77.5                        | 30s     |\n\nTo reproduce:\n\n1. Download the [*mini*ImageNet](https://drive.google.com/file/d/1ixqw1l9XVxl3lh1m5VXkctw6JssahGbQ/view) \n   and [tieredImageNet](https://drive.google.com/file/d/1M93jdOjAn8IihICPKJg8Mb4B-eYDSZfE/view) weights for ResNet12 \n   and save them under `data/models/feat_resnet12_mini_imagenet.pth` (resp. `tiered`).\n2. Extract all embeddings from the test sets of all datasets with `make extract-all-features-with-resnet12`.\n3. Run the evaluation scripts with `make benchmark-mini-imagenet` (resp. `tiered`).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsicara%2Feasy-few-shot-learning","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsicara%2Feasy-few-shot-learning","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsicara%2Feasy-few-shot-learning/lists"}