Abstract

BackgroundMutual information is a measure of similarity between two variables. It has been widely used in various application domains including computational biology, machine learning, statistics, image processing, and financial computing. Previously used simple histogram based mutual information estimators lack the precision in quality compared to kernel based methods. The recently introduced B-spline function based mutual information estimation method is competitive to the kernel based methods in terms of quality but at a lower computational complexity.ResultsWe present a new approach to accelerate the B-spline function based mutual information estimation algorithm with commodity graphics hardware. To derive an efficient mapping onto this type of architecture, we have used the Compute Unified Device Architecture (CUDA) programming model to design and implement a new parallel algorithm. Our implementation, called CUDA-MI, can achieve speedups of up to 82 using double precision on a single GPU compared to a multi-threaded implementation on a quad-core CPU for large microarray datasets. We have used the results obtained by CUDA-MI to infer gene regulatory networks (GRNs) from microarray data. The comparisons to existing methods including ARACNE and TINGe show that CUDA-MI produces GRNs of higher quality in less time.ConclusionsCUDA-MI is publicly available open-source software, written in CUDA and C++ programming languages. It obtains significant speedup over sequential multi-threaded implementation by fully exploiting the compute capability of commonly used CUDA-enabled low-cost GPUs.

Highlights

  • Mutual information is a measure of similarity between two variables

  • Output: Pairwise Mutual information (MI) values. /*Host programs executed on CPU*/ Initialize parameters controlling MI estimation; Load gene expression data into GPU device memory and launch the kernels; /*Kernel program executed on GPU*/; Compute the Weighting Matrix (WM) for each gene (Kernel 1); Check the data integrity of the input data (Kernel 2); Compute the self entropy for each gene (Kernel 3); Compute the joint entropy and MI value for each gene pair (Kernel 4); /*Host programs executed on CPU*/ Read back results to CPU and output; Algorithm 4 shows the pseudocode of our CUDAbased MI estimation algorithm

  • The two Yeast datasets are downloaded from the Eisen Lab website http://rana. lbl.gov/EisenData.htm

Read more

Summary

Introduction

Mutual information is a measure of similarity between two variables. It has been widely used in various application domains including computational biology, machine learning, statistics, image processing, and financial computing. Because of its inherent algorithmic complexity, the reverse engineering or inference of gene regulatory networks (GRNs) from geneexpression profile (microarray) data remains a big challenge in system biology [7,8,9] Approaches such as relevance networks [10], information-theoretic methods [11], and Bayesian networks [12,13] have been used to infer GRNs. Approaches such as relevance networks [10], information-theoretic methods [11], and Bayesian networks [12,13] have been used to infer GRNs Due to their high computational complexities, these methods are very time-consuming and cannot be used to process large datasets. Since availability and size of such datasets is growing rapidly, finding fast solutions is of high importance to research in this area

Methods
Results
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.