GIFT: Global Optimization-based Inference of Chemogenomic Features from Drug-Target Interactions

Songpeng Zu1, Ting Chen1, 2, Shao Li1

1MOE Key Laboratory of Bioinformatics and Bioinformatics Division, TNLIST/Department of Automation, Tsinghua University, Beijing 100084, China.

2Molecular and Computational Biology Program, Department of Biological Sciences, University of Southern California, Los Angeles, California 90089, USA.




GIFT is a C++ package to infer the chemogenomic features from drug-target interactions. Here we mainly focus on the interactions between drug chemical substructures and protein domain. Compared with previous method, GIFT predicts the interactions in a global way, which simultaneously analyzes all the substructure-domain interactions’ contributions on drug-target interactions (See Figure 1). An Expectation-Maximum (EM) algorithm is then derived.

Figure 1 Schematic diagram of GIFT.

Data Sets

1.   Original data sets including drug-protein interactions, drug-substructure relationship, and protein-domain relationship can be downloaded here. These data are from Tabei et al., Bioinformatics, 2012.

2.   The definition of the chemical substructures are from the PubChem database. The annotation file can be downloaded here.


1.   The predicted interactions between drug chemical substructures and protein domains by GIFT can be downloaded here.

2.   Methods can be downloaded here.

Source Code

1.   Version-1.0.0 (2014/06/21): GIFT-1.0.0 (C++).

2.   Matlab codes including data preprocess, Matlab version of GIFT and variance estimation by the observed Fisher information can be downloaded here.

Note: Although the Matlab version of GIFT has been supplied, we suggest using the C++ version of GIFT due to the speed. In order to accelerate the code, we introduce the multi-threads method from the C++ Boost library. You can use the supplied Matlab scripts to deal with the data preprocess and variance estimation.


User Manual: GIFT-user manual.



Please feel free to contact us when you have questionsSongpeng Zu (zsp07 at

You can also fork the repository from the GitHub: