{"id":13576283,"url":"https://github.com/nazmul-karim170/UNICON","last_synced_at":"2025-04-05T05:31:22.369Z","repository":{"id":40517692,"uuid":"474201764","full_name":"nazmul-karim170/UNICON","owner":"nazmul-karim170","description":"[CVPR'22] Official Implementation of the CVPR 2022 paper \"UNICON: Combating Label Noise Through Uniform Selection and Contrastive Learning\"","archived":false,"fork":false,"pushed_at":"2024-10-10T01:36:08.000Z","size":907,"stargazers_count":61,"open_issues_count":3,"forks_count":15,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-03T06:01:59.790Z","etag":null,"topics":["contrastive-learning","deep-learning","deep-neural-networks","jensen-shannon-divergence","label-noise-robustness","machine-learning","noisy-labels","semi-supervised-learning"],"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/nazmul-karim170.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-26T00:29:13.000Z","updated_at":"2025-01-20T10:13:42.000Z","dependencies_parsed_at":"2025-03-03T06:02:00.862Z","dependency_job_id":"621df81f-a314-468f-9716-ab57184b3202","html_url":"https://github.com/nazmul-karim170/UNICON","commit_stats":null,"previous_names":["nazmul-karim170/unicon","nazmul-karim170/unicon-noisy-label"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nazmul-karim170%2FUNICON","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nazmul-karim170%2FUNICON/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nazmul-karim170%2FUNICON/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nazmul-karim170%2FUNICON/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nazmul-karim170","download_url":"https://codeload.github.com/nazmul-karim170/UNICON/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247294287,"owners_count":20915333,"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","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":["contrastive-learning","deep-learning","deep-neural-networks","jensen-shannon-divergence","label-noise-robustness","machine-learning","noisy-labels","semi-supervised-learning"],"created_at":"2024-08-01T15:01:08.829Z","updated_at":"2025-04-05T05:31:17.357Z","avatar_url":"https://github.com/nazmul-karim170.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"\u003ch2 align=\"center\"\u003e \u003ca href=\"https://github.com/nazmul-karim170/UNICON-Noisy-Label\"\u003eUNICON: Combating Label Noise Through Uniform Selection and Contrastive\nLearning\u003c/a\u003e\u003c/h2\u003e\n\u003ch5 align=\"center\"\u003e If you like our project, please give us a star ⭐ on GitHub for the latest update.  \u003c/h2\u003e\n\n\u003ch5 align=\"center\"\u003e\n\n[![arXiv](https://img.shields.io/badge/Arxiv-2312.09313-b31b1b.svg?logo=arXiv)](https://arxiv.org/pdf/2203.14542.pdf)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/nazmul-karim170/UNICON-Noisy-Label/blob/main/LICENSE) \n\n\n\u003c/h5\u003e\n\n## [Paper](https://openaccess.thecvf.com/content/CVPR2022/papers/Karim_UniCon_Combating_Label_Noise_Through_Uniform_Selection_and_Contrastive_Learning_CVPR_2022_paper.pdf) \n\n\n## Training Pipeline\n\n\n### UNICON Framework\n\n\u003c!-- ![Teaser](./Figure/Teaser.png) --\u003e\n![Framework](./Figure/Snip20220331_3.png)\n\n### Installation Guide\n\n1. Create a conda environment\n\n\t```bash\n\tconda create -n unicon \n\tconda activate unicon\n \t```\n\n2. After creating a virtual environment, install the required packages \n\t\n \t```bash\n\tpip install -r requirements.txt\n\t```\n  \n### Download the Datasets\n\n* For adding Synthetic Noise, download these datasets\n\t1. \u003ca href=\"https://www.kaggle.com/c/cifar-10/data\"\u003eCIFAR10\u003c/a\u003e\n \t2. \u003ca href=\"https://www.kaggle.com/datasets/melikechan/cifar100\"\u003eCIFAR100\u003c/a\u003e\n  \t3. \u003ca href=\"https://www.kaggle.com/datasets/nikhilshingadiya/tinyimagenet200\"\u003eTiny-ImageNet\u003c/a\u003e\n\n* For Datasets with Real-World Label Noise\n  \t1. \u003ca href=\"https://github.com/Cysu/noisy_label\"\u003eClothing1M\u003c/a\u003e (Please contact tong.xiao.work[at]gmail[dot]com to get the download link)\n  \t2. \u003ca href=\"https://data.vision.ee.ethz.ch/cvl/webvision/dataset2017.html\"\u003eWebVision\u003c/a\u003e\n  \n### UNICON Training\n\n* Example run (CIFAR10 with 50% symmetric noise) \n\n\t```bash\n\tpython Train_cifar.py --dataset cifar10 --num_class 10 --data_path ./data/cifar10 --noise_mode 'sym' --r 0.5 \n\t```\n \n* Example run (CIFAR100 with 90% symmetric noise) \n\n\t```bash\n\tpython Train_cifar.py --dataset cifar100 --num_class 100 --data_path ./data/cifar100 --noise_mode 'sym' --r 0.9 \n\t```\n \nThis will throw an error as downloaded files will not be in the proper folder. That is why they must be manually moved to the \"data_path\".\n\n* Example Run (TinyImageNet with 50% symmetric noise)\n\n\t```bash\n\tpython Train_TinyImageNet.py --ratio 0.5\n\t```\n\n* Example run (Clothing1M)\n\n   \t```bash\n\tpython Train_clothing1M.py --batch_size 32 --num_epochs 200   \n\t```\n\n* Example run (Webvision)\n   \n\t```bash\n\tpython Train_webvision.py \n\t```\n\n### Reference \nIf you have any questions, do not hesitate to contact nazmul.karim170@gmail.com\n\nAlso, if you find our work useful please consider citing our work: \n\n\t@InProceedings{Karim_2022_CVPR,\n\t    author    = {Karim, Nazmul and Rizve, Mamshad Nayeem and Rahnavard, Nazanin and Mian, Ajmal and Shah, Mubarak},\n\t    title     = {UniCon: Combating Label Noise Through Uniform Selection and Contrastive Learning},\n\t    booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},\n\t    month     = {June},\n\t    year      = {2022},\n\t    pages     = {9676-9686}\n\t}\n \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnazmul-karim170%2FUNICON","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnazmul-karim170%2FUNICON","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnazmul-karim170%2FUNICON/lists"}