{"id":21441739,"url":"https://github.com/dmis-lab/perceivercpi","last_synced_at":"2025-06-30T19:32:30.263Z","repository":{"id":79794961,"uuid":"477911910","full_name":"dmis-lab/PerceiverCPI","owner":"dmis-lab","description":"Bioinformatics'2022 PerceiverCPI: A nested cross-attention network for compound-protein interaction prediction","archived":false,"fork":false,"pushed_at":"2023-11-09T08:05:49.000Z","size":593,"stargazers_count":36,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-08T10:41:21.929Z","etag":null,"topics":[],"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/dmis-lab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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-04-04T23:48:20.000Z","updated_at":"2025-05-20T12:10:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"644817a1-0f59-4e27-a05c-63735da11e26","html_url":"https://github.com/dmis-lab/PerceiverCPI","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dmis-lab/PerceiverCPI","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmis-lab%2FPerceiverCPI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmis-lab%2FPerceiverCPI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmis-lab%2FPerceiverCPI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmis-lab%2FPerceiverCPI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dmis-lab","download_url":"https://codeload.github.com/dmis-lab/PerceiverCPI/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmis-lab%2FPerceiverCPI/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262838226,"owners_count":23372489,"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":[],"created_at":"2024-11-23T01:41:22.945Z","updated_at":"2025-06-30T19:32:30.214Z","avatar_url":"https://github.com/dmis-lab.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Perceiver CPI (Version 1.0)\nA Pytorch Implementation of paper:\n\n**[PerceiverCPI: A nested cross-attention network for compound-protein interaction prediction](https://academic.oup.com/bioinformatics/article/39/1/btac731/6842322)**\n\n\nNgoc-Quang Nguyen , Gwanghoon Jang , Hajung Kim and Jaewoo Kang\n\nOur reposistory uses https://github.com/chemprop/chemprop as a backbone for compound information extraction.\nWe highly recommend researchers read the paper [D-MPNN](https://pubs.acs.org/doi/abs/10.1021/acs.jcim.9b00237) to better understand how it was used. \n\nMotivation: Compound-protein interaction (CPI) plays an essential role in drug discovery and is\nperformed via expensive molecular docking simulations. Many artificial intelligence-based approaches\nhave been proposed in this regard. Recently, two types of models have accomplished promising results in\nexploiting molecular information: graph convolutional neural networks that construct a learned molecular\nrepresentation from a graph structure (atoms and bonds), and neural networks that can be applied to\ncompute on descriptors or fingerprints of molecules. However, the superiority of one method over the\nother is yet to be determined. Modern studies have endeavored to aggregate information that is extracted\nfrom compounds and proteins to form the CPI task. Nonetheless, these approaches have used a simple\nconcatenation to combine them, which cannot fully capture the interaction between such information.\n\nResults: We propose the Perceiver CPI network, which adopts a cross-attention mechanism to improve\nthe learning ability of the representation of drug and target interactions and exploits the rich information\nobtained from extended-connectivity fingerprints to improve the performance. We evaluated Perceiver CPI\non three main datasets, Davis, KIBA, and Metz, to compare the performance of our proposed model with\nthat of state-of-the-art methods. The proposed method achieved satisfactory performance and exhibited\nsignificant improvements over previous approaches in all experiments\n\n# 0.**Overview of Perceiver CPI**\n\n![image](https://user-images.githubusercontent.com/32150689/169429361-cee1031f-fef3-43a6-9220-943fa21de233.png)\n\n\nSet up the environment:\n\nIn our experiment we use, Python 3.9 with PyTorch 1.7.1 + CUDA 10.1.\n\n```bash\ngit clone https://github.com/dmis-lab/PerceiverCPI.git\nconda env create -f environment.yml\n```\n\n# 1.**Dataset and supplementary experiments**\n![benchmark_data_vis](https://user-images.githubusercontent.com/32150689/167998111-f73c2fee-3ea4-49d4-8f60-8338e0acca00.PNG)\n\n\n![image](https://user-images.githubusercontent.com/32150689/163341766-3115ffa6-0cfe-437e-be75-670de1b4da43.png)\n\nThe data should be in the format csv: 'smiles','sequences','label'!\n\n# 2.**To train the model:**\n```bash\npython train.py --data_path \"datasetpath\" --separate_val_path \"validationpath\" --separate_test_path \"testpath\" --metric mse --dataset_type regression --save_dir \"checkpointpath\" --target_columns label\n```\n_Usage Example:_\n~~~\npython train.py --data_path ./toy_dataset/novel_pair_0_train.csv --separate_val_path ./toy_dataset/novel_pair_0_val.csv --separate_test_path ./toy_dataset/novel_pair_0_test.csv --metric mse --dataset_type regression --save_dir regression_150_newprot_pre --target_columns label --epochs 150 --ensemble_size 3 --num_folds 1 --batch_size 50 --aggregation mean --dropout 0.1 --save_preds\n~~~\n# 3.**To take the inferrence:**\n```bash\npython predict.py --test_path \"testdatapath\" --checkpoint_dir \"checkpointpath\" --preds_path \"predictionpath.csv\"\n```\n_Usage Example:_\n~~~\npython predict.py --test_path ./toy_dataset/novel_pair_0_test.csv --checkpoint_dir regression_150_newprot_pre --preds_path newnew_fold0.csv\n~~~\n# 4.**To train YOUR model:**\n\nYour data should be in the format csv, and the column names are: 'smiles','sequences','label'.\n\nYou can freely tune the hyperparameter for your best performance (but highly recommend using the Bayesian optimization package).\n\n# 5.**Citations**\nIf you find the models useful in your research, please consider citing the paper:\n\n~~~\n@article{10.1093/bioinformatics/btac731,\n    author = {Nguyen, Ngoc-Quang and Jang, Gwanghoon and Kim, Hajung and Kang, Jaewoo},\n    title = \"{Perceiver CPI: A nested cross-attention network for compound-protein interaction prediction}\",\n    journal = {Bioinformatics},\n    year = {2022},\n    month = {11},\n    abstract = \"{Compound-protein interaction (CPI) plays an essential role in drug discovery and is performed via expensive molecular docking simulations. Many artificial intelligence-based approaches have been proposed in this regard. Recently, two types of models have accomplished promising results in exploiting molecular information: graph convolutional neural networks that construct a learned molecular representation from a graph structure (atoms and bonds), and neural networks that can be applied to compute on descriptors or fingerprints of molecules. However, the superiority of one method over the other is yet to be determined. Modern studies have endeavored to aggregate information that is extracted from compounds and proteins to form the CPI task. Nonetheless, these approaches have used a simple concatenation to combine them, which cannot fully capture the interaction between such information.We propose the Perceiver CPI network, which adopts a cross-attention mechanism to improve the learning ability of the representation of drug and target interactions and exploits the rich information obtained from extended-connectivity fingerprints to improve the performance. We evaluated Perceiver CPI on three main datasets, Davis, KIBA, and Metz, to compare the performance of our proposed model with that of state-of-the-art methods. The proposed method achieved satisfactory performance and exhibited significant improvements over previous approaches in all experiments.Perceiver CPI is available at https://github.com/dmis-lab/PerceiverCPISupplementary data are available at Bioinformatics online.}\",\n    issn = {1367-4803},\n    doi = {10.1093/bioinformatics/btac731},\n    url = {https://doi.org/10.1093/bioinformatics/btac731},\n    note = {btac731},\n    eprint = {https://academic.oup.com/bioinformatics/advance-article-pdf/doi/10.1093/bioinformatics/btac731/47214739/btac731.pdf},\n}\n~~~\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmis-lab%2Fperceivercpi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdmis-lab%2Fperceivercpi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmis-lab%2Fperceivercpi/lists"}