{"id":29249063,"url":"https://github.com/hkuds/dccf","last_synced_at":"2025-08-14T00:05:10.433Z","repository":{"id":182866489,"uuid":"631620296","full_name":"HKUDS/DCCF","owner":"HKUDS","description":"[SIGIR'2023] \"DCCF: Disentangled Contrastive Collaborative Filtering\"","archived":false,"fork":false,"pushed_at":"2024-03-18T04:56:49.000Z","size":54297,"stargazers_count":57,"open_issues_count":1,"forks_count":6,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-07-15T02:08:59.248Z","etag":null,"topics":["collaborative-filtering","contrastive-learning","disentangled-representations","graph-neural-networks","recommender-system","self-supervised-learning"],"latest_commit_sha":null,"homepage":"https://arxiv.org/abs/2305.02759","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HKUDS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2023-04-23T15:44:30.000Z","updated_at":"2025-06-20T07:52:07.000Z","dependencies_parsed_at":"2023-07-21T23:08:07.789Z","dependency_job_id":"969ed073-31f8-4457-9f4d-fedc30147018","html_url":"https://github.com/HKUDS/DCCF","commit_stats":null,"previous_names":["hkuds/dccf"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/HKUDS/DCCF","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HKUDS%2FDCCF","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HKUDS%2FDCCF/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HKUDS%2FDCCF/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HKUDS%2FDCCF/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HKUDS","download_url":"https://codeload.github.com/HKUDS/DCCF/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HKUDS%2FDCCF/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270336686,"owners_count":24566779,"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-08-13T02:00:09.904Z","response_time":66,"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":["collaborative-filtering","contrastive-learning","disentangled-representations","graph-neural-networks","recommender-system","self-supervised-learning"],"created_at":"2025-07-04T00:09:26.919Z","updated_at":"2025-08-14T00:05:09.445Z","avatar_url":"https://github.com/HKUDS.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Disentangled Contrastive Collaborative Filtering\n\nThis is the PyTorch implementation by \u003ca href='https://github.com/Re-bin'\u003e@Re-bin\u003c/a\u003e for DCCF model proposed in this paper:\n\n \u003e**Disentangled Contrastive Collaborative Filtering**  \n \u003e Xubin Ren, Lianghao Xia, Jiashu Zhao, Dawei Yin, Chao Huang*\\\n \u003e*SIGIR 2023*\n\n\\* denotes corresponding author\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"DCCF.png\" alt=\"DCCF\" /\u003e\n\u003c/p\u003e\n\nIn this paper, we propose a disentangled contrastive learning method for recommendation, which explores latent factors underlying implicit intents for interactions. In particular, a graph structure learning layer is devised to enable the adaptive interaction augmentation, based on the learned disentangle user (item) intent-aware dependencies. Along the augmented intent-aware graph structures, we propose a intent-aware contrastive learning scheme to bring the benefits of disentangled self-supervision signals.\n\n## Environment\n\nThe codes are written in Python 3.8.13 with the following dependencies.\n\n- numpy == 1.22.3\n- pytorch == 1.11.0 (GPU version)\n- torch-scatter == 2.0.9\n- torch-sparse == 0.6.14\n- scipy == 1.9.3\n\n##  Dataset\n\nWe utilized three public datasets to evaluate DCCF:  *Gowalla, Amazon-book,* and *Tmall*. \n\nNote that the validation set is only used for tuning hyperparameters, and for *Gowalla* / *Tmall*, the validation set is merged into the training set for training.\n\n## Examples to run the codes\n\nThe command to train DCCF on the Gowalla / Amazon-book / Tmall dataset is as follows.\n\nWe train DCCF with a fixed number of epochs and save the parameters obtained after the final epoch for testing.\n\n  - Gowalla \n\n    ```python DCCF_PyTorch.py --dataset gowalla --epoch 150```   \n\n  - Amazon-book:\n\n    ```python DCCF_PyTorch.py --dataset amazon --epoch 100```\n\n  - Tmall:\n\n    ```python DCCF_PyTorch.py --dataset tmall --epoch 100```\n\n **For advanced usage of arguments, run the code with --help argument.**\n\n**Thanks for your interest in our work.**\n\n## Citation\nIf you find this work is helpful to your research, please consider citing our paper:\n```bibtex\n@inproceedings{ren2023disentangled,\n  title={Disentangled contrastive collaborative filtering},\n  author={Ren, Xubin and Xia, Lianghao and Zhao, Jiashu and Yin, Dawei and Huang, Chao},\n  booktitle={Proceedings of the 46th International ACM SIGIR Conference on Research and Development in Information Retrieval},\n  pages={1137--1146},\n  year={2023}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhkuds%2Fdccf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhkuds%2Fdccf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhkuds%2Fdccf/lists"}