YuLab-SMU / GOSemSim

:golf: GO-terms Semantic Similarity Measures
https://yulab-smu.top/biomedical-knowledge-mining-book/
58 stars 26 forks source link

Fast infoContentMethod() implementation #1

Closed alyst closed 9 years ago

alyst commented 9 years ago

This pull request dramatically improves the performance of infoContentMethod(), especially for long lists of GO terms.

infoContentMethod_cpp() function was rewritten to support lists of GO terms, so that the whole GO distance matrix is calculated by the single C++ call. Internally, infoContentMethod_cpp() now utilizes C++ maps and sets to avoid linear searches of GO terms etc.

I believe wangMethod() could also benefit for similar optimizations.

GuangchuangYu commented 9 years ago

that's great improve!