{"id":50775969,"url":"https://github.com/microsoft/hetegcn","last_synced_at":"2026-06-12T00:01:04.404Z","repository":{"id":193819347,"uuid":"679188183","full_name":"microsoft/HeteGCN","owner":"microsoft","description":"Repo that contains code for the paper titled: \"HeteGCN: Heterogeneous Graph Convolutional Networks for Text Classification\".","archived":false,"fork":false,"pushed_at":"2026-06-11T17:41:41.000Z","size":34,"stargazers_count":9,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-06-11T19:05:24.880Z","etag":null,"topics":["machine-learning","microsoft"],"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/microsoft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-08-16T09:37:43.000Z","updated_at":"2026-06-11T17:41:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"bef0ace2-c53e-439a-be02-9a46bdbfa4ab","html_url":"https://github.com/microsoft/HeteGCN","commit_stats":null,"previous_names":["microsoft/hetegcn"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/microsoft/HeteGCN","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2FHeteGCN","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2FHeteGCN/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2FHeteGCN/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2FHeteGCN/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microsoft","download_url":"https://codeload.github.com/microsoft/HeteGCN/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2FHeteGCN/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34222709,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-11T02:00:06.485Z","response_time":57,"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":["machine-learning","microsoft"],"created_at":"2026-06-12T00:00:30.467Z","updated_at":"2026-06-12T00:01:04.364Z","avatar_url":"https://github.com/microsoft.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HeteGCN: Heterogeneous Graph Convolutional Networks for Text Classification\n\nThis repository contains the source code for our WSDM (Web Search and Data Mining) 2021 [paper](https://dl.acm.org/doi/10.1145/3437963.3441746).\n\n## Citation\n\nPlease consider citing the following paper when using our code.\n\n```bibtex\n@inproceedings{10.1145/3437963.3441746,\nauthor = {Ragesh, Rahul and Sellamanickam, Sundararajan and Iyer, Arun and Bairi, Ramakrishna and Lingam, Vijay},\ntitle = {HeteGCN: Heterogeneous Graph Convolutional Networks for Text Classification},\nyear = {2021},\nisbn = {9781450382977},\npublisher = {Association for Computing Machinery},\naddress = {New York, NY, USA},\nurl = {https://doi.org/10.1145/3437963.3441746},\ndoi = {10.1145/3437963.3441746},\nbooktitle = {Proceedings of the 14th ACM International Conference on Web Search and Data Mining},\nlocation = {Virtual Event, Israel},\nseries = {WSDM '21}\n}\n```\n\n\n## Abstract\nWe consider the problem of learning efficient and inductive graph convolutional networks for text classification with a large number of examples and features. Existing state-of-the-art graph embedding based methods such as predictive text embedding (PTE) and TextGCN have shortcomings in terms of predictive performance, scalability and inductive capability. To address these limitations, we propose a heterogeneous graph convolutional network (HeteGCN) modeling approach that unites the best aspects of PTE and TextGCN together. The main idea is to learn feature embeddings and derive document embeddings using a HeteGCN architecture with different graphs used across layers. We simplify TextGCN by dissecting into several HeteGCN models which (a) helps to study the usefulness of individual models and (b) offers flexibility in fusing learned embeddings from different models. In effect, the number of model parameters is reduced significantly, enabling faster training and improving performance in small labeled training set scenario. Our detailed experimental studies demonstrate the efficacy of the proposed approach.\n\n## Reproducing Results\nTo reproduce the results presented in the paper, you can utilize the bash scripts available in the `bash_scripts` directory. Please refer the following notations used in this repository to associate the results in the paper.\n\n| Code | Paper |\n| --- | --- |\n| FF-NF | HeteGCN(F-X) |\n| NF-FN-NF | HeteGCN(X-TX-X) |\n| FN-NF | HeteGCN(TX-X) |\n\nThis code supports constructing arbitraty HeteGCN paths consisting of layers [FF, NF, FN]. The layers should be compatible. \n\nExample HeteGCN Paths\n```\n1. FF-NF\n2. NF-FN-FN\n3. FN-NF\n```\n \n\n## Steps To Run\n1. Install the requirements:\n\n```bash\npip install -r requirements.txt\n```\n\n2. Download the public datasets present in an drive link:\n```python\npython download_datasets.py\n```\n\n3. Example command to run\n```python\npython train.py  --data_dir datasets --dataset mr --path NF-FN-NF --wt_reg 10.0 --learning_rate 0.002 --dropout 0.25 --emb_reg 0.0 --FN_norm None --NF_norm sym --verbose\n```\n\n## Contributing\n\nThis project welcomes contributions and suggestions.  Most contributions require you to agree to a\nContributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us\nthe rights to use your contribution. For details, visit \u003chttps://cla.opensource.microsoft.com\u003e.\n\nWhen you submit a pull request, a CLA bot will automatically determine whether you need to provide\na CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions\nprovided by the bot. You will only need to do this once across all repos using our CLA.\n\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).\nFor more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or\ncontact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.\n\n## Trademarks\n\nThis project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft\ntrademarks or logos is subject to and must follow\n[Microsoft's Trademark \u0026 Brand Guidelines](https://www.microsoft.com/en-us/legal/intellectualproperty/trademarks/usage/general).\nUse of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.\nAny use of third-party trademarks or logos are subject to those third-party's policies.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoft%2Fhetegcn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicrosoft%2Fhetegcn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoft%2Fhetegcn/lists"}