Abstract
Background
Recent discoveries of a large variety of important roles for noncoding RNAs (ncRNAs) have been reported by numerous researchers. In order to analyze ncRNAs by kernel methods including support vector machines, we propose stem kernels as an extension of string kernels for measuring the similarities between two RNA sequences from the viewpoint of secondary structures. However, applying stem kernels directly to large data sets of ncRNAs is impractical due to their computational complexity.
Results
We have developed a new technique based on directed acyclic graphs (DAGs) derived from basepairing probability matrices of RNA sequences that significantly increases the computation speed of stem kernels. Furthermore, we propose profileprofile stem kernels for multiple alignments of RNA sequences which utilize basepairing probability matrices for multiple alignments instead of those for individual sequences. Our kernels outperformed the existing methods with respect to the detection of known ncRNAs and kernel hierarchical clustering.
Conclusion
Stem kernels can be utilized as a reliable similarity measure of structural RNAs, and can be used in various kernelbased applications.
Background
Recent discoveries of a large variety of important roles for noncoding RNAs (ncRNAs), including gene regulation or maturation of mRNAs, rRNAs and tRNAs, have been reported by many researchers. Most functional ncRNAs form secondary structures related to their functions, and secondary structures without pseudoknots can be modeled by stochastic contextfree grammars (SCFGs) [1,2]. Therefore, several computational methods based on SCFGs have been developed for modeling and analyzing functional ncRNA sequences [314]. These grammatical methods work very well if the secondary structures of the target ncRNAs are modeled successfully. However, it is difficult to build such stochastic models since it is necessary to construct complicated models, to prepare the number of training sequences, and/or to obtain prior knowledge for some families containing nonuniform and/or nonhomologous sequences such as snoRNA families. Thus, we need more robust methods for performing structural ncRNA analysis. On the other hand, support vector machines (SVMs) and other kernel methods are being actively studied, and have been proposed for solving various problems in many research fields, including bioinformatics [15]. These methods are more robust than other existing methods, and we therefore considered using kernel methods including SVMs instead of the grammatical methods to analyze functional ncRNAs.
Several kernels for ncRNA sequences have been developed so far [1619]. Kin et al. have proposed marginalized count kernels for RNA sequences [16]. Their kernels calculate marginalized count vectors of basepair features under SCFGs trained with a given dataset, and compute the inner products. Therefore, marginalized count kernels inherit the drawback of the grammatical methods. Washietl et al. have developed a program called RNAz, which detects structurally conserved regions from multiple alignments by using SVMs [17]. RNAz employs the averaged zscore of the minimum free energy (MFE) for each sequence and structure conservation index (SCI). Assuming that MFE for the common secondary structure is close to that for each sequence if a given multiple alignment is structurally conserved, SCI is defined as the rate of MFE for the common secondary structure to the averaged MFE for each sequence. These features allow for the detection of structurally conserved regions. However, since these features cannot measure the structural similarities between RNA sequences, it is difficult to apply them to other aspects of structural RNA analysis, such as detecting particular families. Several works which involve some helpful features specific to given target families (e.g. miRNAs and snoRNAs) have been proposed [18,19]. These familyspecific methods perform well in detecting their target families. However, in order to apply this strategy to other families, it is necessary to develop new features for every family.
For the purpose of analyzing ncRNAs using kernel methods including support vector machines, we have proposed stem kernels, which extend the string kernels to measure the similarities between two RNA sequences from the viewpoint of secondary structures [20]. The feature space of the stem kernels is defined by enumerating all possible common base pairs and stem structures of arbitrary lengths. However, since the computational time and memory size required for the naive implementation of stem kernels are of the order of O(n^{4}), where n is the length of the inputted RNA sequence, applying stem kernels directly to large data sets of ncRNAs is impractical.
Therefore, we develop a new technique based on directed acyclic graphs (DAGs) derived from basepairing probability matrices of RNA sequences, which significantly reduces the computational time of stem kernels. The time and space complexity of this method are approximately of the order of O(n^{2}). Furthermore, we propose profileprofile stem kernels for multiple alignments of RNA sequences, which utilize basepairing probability matrices for multiple alignments instead of those for individual sequences.
Methods
In this section, we propose new kernels for analyzing ncRNAs. First, an outline of our previous work is provided, after which the proposed new technique based on directed acyclic graphs (DAGs) derived from basepairing probability matrices of RNA sequences is described. Finally, the proposed kernels are extended to kernels for multiple alignments of RNA sequences by utilizing averaged basepairing probability matrices.
Naive stem kernel algorithms
Before proposing the new method, we briefly describe stem kernels which have been proposed as an extension of the string kernels for measuring the similarities between two RNA sequences from the viewpoint of secondary structures [20]. The feature space of the stem kernels is defined by enumerating all possible common base pairs and stem structures of arbitrary lengths. The stem kernel calculates the inner product of common stem structure counts. In other words, the more stem structures two RNA sequences have in common, the more similar they are. However, the time needed for the explicit enumeration of all substructures obviously grows exponentially, which renders this method infeasible for long sequences. We have therefore developed an algorithm for calculating stem kernels which is based on the dynamic programming technique. For an RNA sequence x = x_{1}x_{2 }... x_{n }(x_{k }∈ {A, C, G, U}), we denote a contiguous subsequence x_{j }... x_{k }by x [j, k], and the length of x by x. The empty sequence is indicated by ∊. For a base a, the complementary base is denoted as . For a string x and a base a, xa denotes the concatenation of x and a. For two RNA sequences x and x', the stem kernel K is defined recursively as follows:
Both the time and the memory required for the calculation K(x, x') are of the order of O(x^{2}x'^{2}), which renders this method impractical for applying to large data sets of ncRNAs.
Stem kernels with DAG representation
Here, we develop a new technique based on directed acyclic graphs (DAGs) derived from basepairing probability matrices of RNA sequences, which significantly reduces the time needed for computing stem kernels. Figure 1 contains a diagram illustrating the calculation of the new kernels.
Figure 1. Averaged baseparing probability matrices and DAG kernels using the dynamic programming technique enable us to calculate profileprofile stem kernels for multiple alignments of RNA sequences. (a) Given a pair of multiple alignments, (b) Calculate the baseparing probability matrices for each sequence in the multiple alignments and average these basepairing probabilities with respect to the columns of each alignment. (c) Build a DAG for the averaged basepairing probability matrix, where each vertex corresponds to a base pair whose probability is above a predefined threshold. (d) Calculate a kernel value for a pair of DAGs for the multiple alignments by using the DAG kernel and the dynamic programming technique.
First, for each RNA sequence x = x_{1}x_{2 }... x_{n}, we calculate a basepairing probability matrix P^{x }using the McCaskill algorithm [21]. We denote the basepairing probability of (x_{i}, x_{j}) by , which is defined as:
where (x) is an ensemble of all possible secondary structures of x, p(yx) is the posterior probability of y given x, and I_{ij}(y) is an indicator function, which equals 1 if the ith and the jth nucleotides form a basepair in y or 0 otherwise. We employ the Vienna RNA package [22] for computing these expected counts (2) using the McCaskill algorithm.
Subsequently, we build a DAG for the basepairing probability matrix, where each vertex corresponds to a base pair whose probability is above a predefined threshold p*. Let G_{x }= (V_{x}, E_{x}) be the DAG for an RNA sequence x, where V_{x }and E_{x }are vertices and edges in the DAG G_{x}, respectively. For each v_{i }= (k, l) ∈ V_{x}, (x_{k}, x_{l}) is a likely base pair, in other words, . Each e_{ij }∈ E_{x }is an edge from vertex v_{i }to vertex v_{j}.
For vertices v_{i }= (k, l) and v_{i' }= (k', l'), we can define a partial order, v_{i }≺ v_{i' }if and only if k <k' and l > l'. An edge e_{ii' }connects vertices v_{i }and v_{i' }if and only if v_{i }≺ v_{i' }and there exists no v_{j }∈ V_{x }such that v_{i }≺ v_{j }≺ v_{i'}.
Finally, we calculate a kernel value between two DAGs representing RNA structure information through the DAG kernel using a dynamic programming technique. The vertices in the DAG can be numbered in a topological order such that for every edge e_{ij}, i <j is satisfied, in other words, there are no directed paths from v_{j }to v_{i }if i <j. Thus, we can apply the dynamic programming technique as follows:
where root(G) is a set of vertices which have no incoming edges, K_{v }and K_{e }are kernel functions for vertices and edges, respectively, and g_{v }and g_{e }are gap penalties for vertices and edges, respectively. K calculates the sum of kernel values for all pairs of possible substructures of G_{x }and G_{x'}. Each of these kernel values is composed of the product of the subkernels K_{v}, K_{e}, g_{v }and g_{e}. Therefore, K is a convolution kernel and is positive semidefinite if K_{v }and K_{e }are also positive semidefinite [23].
The time and the memory required for the computation of K are of the order of O(c^{2}V_{x}V_{x'}) and O(V_{x}V_{x'}), respectively, where c is the maximum outdegree of G_{x }and G_{x'}. We can control V_{x} using the predefined threshold for base pairs, p*. When p* = 0, V_{x }contains all possible base pairs, i.e., V_{x} = n(n  1)/2. When p* > 0, since each base can take part in V_{x }at most 1/p* times, V_{x} is proportional to n of the length of the RNA sequence x. Since in many cases c ≪ V_{x}, the time and the memory required for this algorithm are approximately of the order of O(n^{2}) for sufficiently large values of p*.
Several choices of subkernels K_{v}, K_{e}, g_{v }and g_{e }in Eq. (3) are available. In order to connect the DAGbased stem kernels to the naive stem kernels calculated from Eq. (1), we first define simple subkernels as follows:
When p* → 0, the DAGbased stem kernels calculated form Eq. (3) with the above subkernels approach the naive stem kernels calculated from Eq. (1) since both Eqs. (1) and (3) designate recursive traversal to all substructures of x and x' in the sense of the partial order ≺, and when p* = 0, the substructures of x and x' for both kernels which contribute kernel values are identical to each other due to these subkernels. More sophisticated kernels can be constructed using substitution scoring matrices, as well as local alignment kernels [24]:
where is a substitution scoring function from a base pair (x_{l}, x_{k}) to a base pair , α > 0 is a weight parameter for base pairs, γ > 0 is the decoy factor for loop regions, and n(e) is the number of nucleotides in the loop region enclosed by base pairs at both ends of an edge e.
In our experiments, we employed the RIBOSUM 8065 [9] for S, and p* = 0.01, α = 0.1, γ = 0.4, which were optimized by crossvalidation tests. In order to prevent sequence length bias, we normalize our kernels K as follows:
Stem kernels can be applied only to RNA secondary structures. However, primary sequences are still important for calculating the similarities between a pair of RNA sequences. Therefore, in order to take into account both primary sequences and secondary structures, we combine our stem kernels with the local alignment kernels by adding them.
Profileprofile stem kernels
If multiple alignments of homologous RNA sequences are available, we can calculate their baseparing probability matrices more precisely by taking the averaged sum of individual basepairing probability matrices in accordance with the given multiple alignment [25]. The algorithm of the DAGbased stem kernels for a pair of RNA sequences can be extended to that for a pair of multiple alignments of RNA sequences using averaged basepairing probability matrices. Since the method of the averaged baseparing probability matrices has been proven to be accurate and robust by Kiryu et al. [25], we can expect this method to improve the proposed stem kernel method. We call these profileprofile stem kernels.
We denote the ith column of a multiple alignment A by A_{i}, a nucleotide in A_{i }of the jth sequence by a_{ij}, and the number of aligned sequences in A by num(A). We can calculate the averaged basepairing probability matrix of a given multiple alignment A as follows:
where x' is the sequence x with all gaps removed and ρ(k) is an index on x' of the kth column of A. After constructing , we can build DAGs, and the kernel K_{v }for columns can be calculated by replacing the substitution function S in Eq. (9) with
Results and Discussion
In this section, we present some of the results of our experiments in order to confirm the validity of our method as well as a discussion of those results.
Discrimination with SVMs and other kernel machines
We performed several experiments in which SVMs based on our kernel attempted to detect known ncRNA families. The accuracy was assessed using the specificity (SP) and the sensitivity (SN), which are defined as follows:
where TP is the number of correctly predicted positives, FP is the number of incorrectly predicted positives, TN is the number of correctly predicted negatives, and FN is the number of incorrectly predicted negatives. Furthermore, the area under the receiver operating characteristic (ROC) curve, i.e., the ROC score, was also used for evaluation. The ROC curve plots the true positive rates (= SN) as a function of the false positive rates (= 1  SP) for varying decision thresholds of a classifier.
In our first experiment, the discrimination ability and the execution time of the stem kernels were tested on our previous dataset used in [20], which includes five RNA families: tRNAs, miRNAs (precursor), 5S rRNAs, H/ACA snoRNAs, and C/D snoRNAs. We chose 100 sequences in each RNA family from the Rfam database [26] as positive samples such that the pairwise identity was not above 80% for any pair of sequences, and 100 randomly shuffled sequences with the same dinucleotide composition as the positives were generated as negative samples for each family. The discrimination performance was evaluated using 10fold cross validation. In order to determine an appropriate cutoff threshold for the basepairing probabilities p*, we performed the experiments for various values of p* ∈ {0.1, 0.01, 0.001, 0.0001}. Figure 2 shows the accuracy and the calculation time for each threshold. Since the accuracy for p* = 0.01 was slightly better than that for the other values, and the calculation time in this case was acceptable for practical use, we fixed p* = 0.01 as the default cutoff threshold of the basepairing probabilities. Then, we compared the DAGbased stem kernels with the naive stem kernels. The experimental results shown in Table 1 indicate that the DAGbased kernels are significantly faster than the naive kernels owing to the approximation by a predefined threshold of the basepairing probability. Furthermore, in spite of using an approximation, the DAGbased kernels are slightly more accurate than the naive kernels due to the convolution with the local alignment kernels and the removal of lowlikelihood base pairs which may create noise.
Table 1. Comparison of the discrimination capabilities of the naive stem kernels and the DAGbased stem kernels.
Figure 2. Calculation time and ROC scores for various cutoff threshold values of the basepairing probabilities. We timed the DAGbased stem kernels in calculating a kernel matrix for each family of the training set containing 100 positives and 100 negatives, and confirmed the accuracy of their discrimination through the ROC scores.
Next, we performed the experiment on a large dataset including multiple alignments, which was used to train RNAz [17]. This dataset includes 12 ncRNA families of 7,169 original alignments, extracted from the Rfam database [26], with the exception of the singlerecognition particle (SRP) RNA and RNAseP, which were extracted from [27,28]. Each alignment consists of two to ten sequences aligned by CLUSTALW [29], and the mean pairwise identities are between 50% and 100%. The dataset also includes 7,169 negatives, which were generated from the original alignments by shuffling the columns, where the conservation rate on each column was preserved [30]. In this experiment, for each RNA family, SVMs trained the model which distinguishes the original alignments of a target RNA family from all other original and shuffled alignments in the dataset. We compared the profileprofile stem kernels with the local alignment kernels [24], which only consider primary sequences of RNAs. Subsequently, we extended the local alignment kernels using the same technique as in the case of the profileprofile stem kernels in order to account for multiple alignments.
The discrimination performance of both kernels was evaluated with 10fold crossvalidation. Table 2 presents the experimental results for this dataset. The stem kernels attained nearly perfect discrimination for all families in this dataset, while the local alignment kernels failed to discriminate some families. The performance with respect to tmRNA and RNAse P in terms of sensitivity was especially low. Furthermore, the stem kernels collected a smaller number of support vectors in comparison with the local alignment kernels due to the robustness of the stem kernels with respect to secondary structures. This is a desirable feature since the prediction process of SVMs requires only support vectors for the calculation of kernel values against an input sequence.
Table 2. Noncoding RNA detection using SVMs in comparing the stem kernels with the local alignment kernels.
In addition, we employed another kernel machine instead of SVM, called support vector data description (SVDD) [31], which calculates a spherically shaped boundary around a dataset so as to increase the robustness against outliers without the need for negative examples. In other words, SVDD does not need to generate artificial negative examples. Many applications of SVMs to biological problems require the artificial generation of negative examples such as shuffled positive sequences. However, since most artificial negatives can be easily distinguished from positives in many cases, the generation of artificial negative examples is a crucial problem to attaining practical prediction performance [32]. In this regard, SVDD can avoid this problem by using only positive examples. We applied SVDD instead of SVMs to the above dataset. Table 3 shows the surprising discovery that there is little difference in the accuracy of SVMs and SVDD. This result indicates that negative examples produced by shuffling the alignments make a very small contribution to learning the classifiers with our kernels. Furthermore, the number of support vectors in SVDD decreased significantly in comparison to SVMs.
Table 3. Noncoding RNA detection using SVDD in comparing the stem kernels with the local alignment kernels.
In this section, we trained SVMs with the stem kernels to detect particular ncRNA families. On the other hand, the SVMs in RNAz are trained to detect any structural ncRNAs, including unknown ncRNAs [17]. In order to demonstrate that RNAz is capable of discovering unknown ncRNAs with no bias toward the ncRNA families of the training set, SVMs were trained by excluding particular families of ncRNAs, and were used for classifying the excluded ncRNAs and the shuffled negatives. We attempted the same training scheme as described in [17] to investigate the ability of the stem kernels to discover unknown ncRNAs using the same dataset as in the experiment of Table 2. As a result, the ROC scores in this test were 0.699 for the stem kernels, 0.582 for the local alignment kernels, and 0.949 for RNAz. This result suggests that the ability of stem kernels to discover unknown ncRNAs is weaker than that of RNAz. The key feature in discovering unknown structural ncRNAs is to detect evolutionary conserved structures in multiple sequence alignments. The SCI used in RNAz directly assesses the structure conservation in multiple alignments, and it contributes to the ability of detecting unknown structural ncRNAs. However, since the SCI cannot measure the structural similarities between RNA sequences, it is difficult to apply it to other aspects of structural RNA analysis, such as detecting particular families. On the other hand, the stem kernels evaluate common stem structures between two multiple alignments, in other words, the stem kernels are not the measure of the structure conservation, but rather are the measure of the structural similarity between ncRNAs. Therefore, the stem kernels can be applied to various kernel methods including not only SVMs but also kernel principal component analysis (KPCA), kernel canonical correlation analysis (KCCA), and so on [15].
Remote homology search
Furthermore, we conducted a remote homology search of ncRNAs using SVMs with our kernel. Our kernel method was compared with INFERNAL [7] based on profile SCFGs. INFERNAL has been recommended for RNA homology search by the benchmark of currently available RNA homology search tools called BRAliBase III [33]. This benchmark dataset contains tRNAs, 5S rRNAs and U5 spliceosomal RNAs, which have relatively conserved sequences and/or secondary structures, whereby both INFERNAL and our kernel can easily detect homologs (data not shown).
Therefore, we performed a more practical remote homology search on the dataset shown in Table 4, which includes 47 sequences of H/ACA snoRNAs and 41 sequences of C/D snoRNAs in C. elegans from the literature [34]. These mean pairwise identities are too low to be discovered by existing methods. For each family, nonhomologs were generated by shuffling every sequence 10 times. The shuffling processes preserved dinucleotide frequencies. Twenty query sets of 5 and 10 sequences were sampled from each family, respectively. Using these query sets, we attempted to search for homologs among all of the original and the shuffled sequences.
Table 4. Summary of the dataset for the experiment of the remote homology search.
For INFERNAL, each query was aligned by CLUSTALW [29], folded by RNAalifold [35], and converted into a covariance model (CM). The CM searched for homologous sequences in the dataset, calculating a bit score for each sequence. A ROC curve can be plotted using the bit scores as decision values.
For the stem kernel, every sequence for each query was shuffled 10 times in order to generate negative samples. Then, the SVM with the stem kernel learned the discrimination model from the query and the negatives. The model searched for homologous sequences in the dataset, calculating an SVM class probability for each sequence. A ROC curve can be plotted in this case using SVM class probabilities as decision values.
Figures 3 and 4 display the ROC curves of the homology searches of H/ACA snoRNAs and C/D snoRNAs by INFERNAL and SVMs with the stem kernels. The stem kernel produced more precise results than INFERNAL with respect to searching the target families for homologs. In particular, in the H/ACA snoRNAs experiment, the stem kernel was capable of detecting them accurately even with queries of 5 sequences. However, the accurate identification of C/D snoRNAs was problematic for both methods, which can be attributed to the poor secondary structures of C/D snoRNAs. In fact, the identification of C/D snoRNAs is difficult for many structurebased methods.
Note that the sequences in the datasets shown in Table 4 are remotely homologous to each other, which makes it difficult for RNAalifold to calculate common secondary structures from alignments produced by CLUSTALW. INFERNAL searches the common secondary structure of the query sequences for a given sequence, and thus the CM search fails if no acceptable covariance model for the query sequences can be generated. Although using structural alignments for ncRNAs might improve the homology search with INFERNAL, it is not certain that given query sequences have common secondary structures. In such cases, it is difficult for any alignment programs to produce robust alignments with acceptable common secondary structures. In fact, the secondary structures of snoRNAs used in our experiments are highly diverse so that we often did not obtain suitable multiple alignments for building CMs even if using structural alignment programs (data not shown). In contrast, SVMs calculate kernel values, i.e., pairwise similarities, between every pair of examples, and learn the weight parameters for each example in order to maximize the margin between the positives and the negatives. After this, the trained SVMs predict the classification of a new example based on the weighted sum of kernel values of the new example and all the training examples. In other words, SVMs make a decision about the classification based on the majority voting principle with respect to the optimized weights. This approach minimizes the risk of mispredictions and makes decisions which are more robust than those of the methods which use only one representative such as a common secondary structure of the query sequences, that is, SVMs with our kernel require no common secondary structures of the query sequences, and can make robust predictions in performing remote homology search of structural ncRNAs. This approach, however, requires a number of kernel computations for each sequence to be analyzed, proportional to the number of support vectors collected in training SVMs. Therefore, the prediction process should take a long computation time if the training process could not reduce the number of support vectors.
Kernel hierarchical clustering
We attempted to attain a kernel hierarchical clustering using the weighted pair group method algorithm (WPGMA) with the stem kernels for the same dataset as [36], extracted from the Rfam database [26], which contains 503 ncRNA families and a total of 3,901 sequences that have no more than 80% sequence identity and do not exceed 400 nt in length. Figure 5 shows the resulting dendrogram of the dataset, indicating some typical families, where sequences of the same family are likely to be contained in the same cluster (see also Additional files 1 &2. We evaluated the degree of agreement between the obtained clusters and the Rfam classification by converting the problem of cluster comparison into a binary classification problem in the same way as described in [36]: For every clustering cutoff threshold of the distance on the dendrogram, let the number of true positives (TP) be the number of sequence pairs in the same cluster which belong to the same family of Rfam. Analogously, let the number of false positives (FP) be the number of sequence pairs in the same cluster which belong to different families, the number of false negatives (FN) be the number of sequence pairs from the same family which lie in different clusters, and the number of true negatives (TN) be the number of sequence pairs from different families which lie in different clusters. The ROC curve plots the true positive rates as a function of the false positive rates for different clustering thresholds. Figure 6 shows the ROC curves for our kernel and LocARNA [36]. LocARNA produced hierarchical clusters whose ROC score was 0.781, while our kernel produced a score of 0.894.
Figure 5. The dendrogram resulting from applying our kernel and WPGMA to the dataset. Some clusters containing typical families are indicated, such as 5S rRNA, tRNA, miRNA and RNaseP. This dendrogram was produced from Additional file 1 which is a newick format file calculated by our kernel and WPGMA. A magnifiable version of this dendrogram is available as Additional file 2.
Additional file 1. A newick format file used for drawing Figure 5. Figure 5 was produced from this file using the R ape package http://cran.rproject.org/web/packages/ape/ webcite.
Format: NEWI Size: 196KB Download file
Additional file 2. A magnifiable version of Figure 5. Similarly to Figure 5, this figure was produced from Additional file 1 using the R ape package, and was stored in PDF format in order to enable magnification.
Format: PDF Size: 733KB Download file
This file can be viewed with: Adobe Acrobat Reader
Figure 6. ROC curves of the degree of agreement between the clustering and the Rfam families in comparing our kernels with LocARNA.
LocARNA and the DAGbased stem kernels are similar to each other in their approximation technique, in which the base pairs whose basepairing probability is below a predefined threshold are disregarded. One of the most important differences between the above two methods is that LocARNA calculates a score for only the best scoring secondary structure with bifurcations, while stem kernels sum all scores over an ensemble of common stem structures, including any suboptimal structures. In other words, stem kernels can be regarded as a variant of Sankoff algorithm [37], which calculates the partition function without any bifurcations. This feature of stem kernels determines their robustness with respect to measuring structural similarities.
Conclusion
We have developed a new technique for analyzing structural RNA sequences using kernel methods. This technique is based on directed acyclic graphs (DAGs) derived from basepairing probability matrices of RNA sequences, and significantly reduces the computation time for stem kernels. Our method considers only likely base pairs whose basepairing probability is above a predefined threshold. The kernel values are calculated using DAG kernels, where each DAG is produced from these likely base pairs. Furthermore, we have proposed profileprofile stem kernels for multiple alignments of RNA sequences, which utilize the averaged basepairing probability matrices of multiple alignments of RNA sequences.
Our kernels outperformed the existing methods for detection of known ncRNAs by using SVMs and kernel hierarchical clustering. In the experiments where SVMs were used, the stem kernels performed nearly perfect discrimination in the dataset, and collected a smaller number of support vectors in comparison with the local alignment kernels due to the robustness of the stem kernels with respect to secondary structures. Therefore, stem kernels can be used for reliable similarity measurements of structural RNAs, and can be utilized in various applications using kernel methods.
The new technique proposed in this paper significantly increases the computation speed for stem kernels, which is a step toward the realization of a genomescale search of ncRNAs using stem kernels. Since our method is capable of detecting remote homology, it is possible to discover new ncRNAs which cannot be detected with existing methods.
Availability
Our implementation of the profileprofile stem kernels is available at http://www.ncrna.org/software/stemkernels/ webcite under the GNU public license. It takes RNA sequences or multiple alignments, and calculates a kernel matrix, which can be used as an input for a popular SVM tool called LIBSVM [38]. Furthermore, our software is capable of parallel processing using the Message Passing Interface (MPI) [39].
Authors' contributions
KS developed the algorithm, wrote the code and performed all experiments. TM, KA and YS provided helpful insights in the experiments and the discussion, while YS initiated the project. KS drafted the manuscript. All authors read and approved the final manuscript.
Acknowledgements
This work was supported in part by a grant from "Functional RNA Project" funded by the New Energy and Industrial Technology Development Organization (NEDO) of Japan, and was also supported in part by GrantinAid for Scientific Research on Priority Area "Comparative Genomics" No. 17018029 from the Ministry of Education, Culture, Sports, Science and Technology of Japan. We thank Dr. S. Washietl and Dr. I. L. Hofacker for providing us with their largescale dataset of multiple alignments of noncoding RNAs. We also thank our colleagues from the RNA Informatics Team at the Computational Biology Research Center (CBRC) for fruitful discussions.
References

Eddy SR: Noncoding RNA genes and the modern RNA world.
Nat Rev Genet 2001, 2(12):919929. PubMed Abstract  Publisher Full Text

Searls DB: The language of genes.
Nature 2002, 420(6912):211217. PubMed Abstract  Publisher Full Text

Eddy SR, Durbin R: RNA sequence analysis using covariance models.
Nucleic Acids Res 1994, 22(11):20792088. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Sakakibara Y, Brown M, Hughey R, Mian IS, Sjölander K, Underwood RC, Haussler D: Stochastic contextfree grammars for tRNA modeling.
Nucleic Acids Res 1994, 22(23):51125120. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Knudsen B, Hein J: RNA secondary structure prediction using stochastic contextfree grammars and evolutionary history.
Bioinformatics 1999, 15(6):446454. PubMed Abstract  Publisher Full Text

Rivas E, Eddy SR: Noncoding RNA gene detection using comparative sequence analysis.
BMC Bioinformatics 2001, 2:8. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Eddy SR: A memoryefficient dynamic programming algorithm for optimal alignment of a sequence to an RNA secondary structure.
BMC Bioinformatics 2002, 3:18. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Sakakibara Y: Pair hidden Markov models on tree structures.
Bioinformatics 2003, 19(Suppl 1):i232i240. PubMed Abstract  Publisher Full Text

Klein RJ, Eddy SR: RSEARCH: finding homologs of single structured RNA sequences.
BMC Bioinformatics 2003, 4:44. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Sato K, Sakakibara Y: RNA secondary structural alignment with conditional random fields.
Bioinformatics 2005, 21(Suppl 2):ii237ii242. PubMed Abstract  Publisher Full Text

Holmes I: Accelerated probabilistic inference of RNA structure evolution.
BMC Bioinformatics 2005, 6:73. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Dowell RD, Eddy SR: Efficient pairwise RNA structure prediction and alignment using sequence alignment constraints.
BMC Bioinformatics 2006, 7:400. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Pedersen JS, Bejerano G, Siepel A, Rosenbloom K, LindbladToh K, Lander ES, Kent J, Miller W, Haussler D: Identification and classification of conserved RNA secondary structures in the human genome.
PLoS Comput Biol 2006, 2(4):e33. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Do CB, Woods DA, Batzoglou S: CONTRAfold: RNA secondary structure prediction without physicsbased models.
Bioinformatics 2006, 22(14):e90e98. PubMed Abstract  Publisher Full Text

Schölkopf B, Tsuda K, Vert JP: Kernel Methods in Computational Biology. Cambridge, MA: MIT Press; 2004.

Kin T, Tsuda K, Asai K: Marginalized kernels for RNA sequence data analysis.
Genome Inform 2002, 13:112122. PubMed Abstract  Publisher Full Text

Washietl S, Hofacker IL, Stadler PF: Fast and reliable prediction of noncoding RNAs.
Proc Natl Acad Sci U S A 2005, 102(7):24542459. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Hertel J, Stadler PF: Hairpins in a Haystack: recognizing microRNA precursors in comparative genomics data.
Bioinformatics 2006, 22(14):e197e202. PubMed Abstract  Publisher Full Text

Hertel J, Hofacker IL, Stadler PF: SnoReport: Computational identification of snoRNAs with unknown targets.
Bioinformatics 2008, 24(2):158164. PubMed Abstract  Publisher Full Text

Sakakibara Y, Popendorf K, Ogawa N, Asai K, Sato K: Stem kernels for RNA sequence analyses.
J Bioinform Comput Biol 2007, 5(5):11031122. PubMed Abstract  Publisher Full Text

McCaskill JS: The equilibrium partition function and base pair binding probabilities for RNA secondary structure.
Biopolymers 1990, 29(6–7):11051119. PubMed Abstract  Publisher Full Text

Hofacker IL: Vienna RNA secondary structure server.
Nucleic Acids Res 2003, 31(13):34293431. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Haussler D: Convolution kernels on discrete structures. In Tech. Rep. UCSCCRL9910. Department of Computer Science, University of California at Santa Cruz; 1999.

Saigo H, Vert JP, Ueda N, Akutsu T: Protein homology detection using string alignment kernels.
Bioinformatics 2004, 20(11):16821689. PubMed Abstract  Publisher Full Text

Kiryu H, Kin T, Asai K: Robust prediction of consensus secondary structures using averaged base pairing probability matrices.
Bioinformatics 2007, 23(4):434441. PubMed Abstract  Publisher Full Text

GriffithsJones S, Moxon S, Marshall M, Khanna A, Eddy SR, Bateman A: Rfam: annotating noncoding RNAs in complete genomes.
Nucleic Acids Res 2005, (33 Database):D121D124. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Rosenblad MA, Gorodkin J, Knudsen B, Zwieb C, Samuelsson T: SRPDB: Signal Recognition Particle Database.
Nucleic Acids Res 2003, 31:363364. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Brown JW: The Ribonuclease P Database.
Nucleic Acids Res 1999, 27:314. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Thompson JD, Higgins DG, Gibson TJ: CLUSTAL W: improving the sensitivity of progressive multiple sequence alignment through sequence weighting, positionspecific gap penalties and weight matrix choice.
Nucleic Acids Res 1994, 22(22):46734680. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Washietl S, Hofacker IL: Consensus folding of aligned sequences as a new measure for the detection of functional RNAs by comparative genomics.
J Mol Biol 2004, 342:1930. PubMed Abstract  Publisher Full Text

Tax DM, Duin RP: Support vector data description.
Machine Learning 2004, 54:4566. Publisher Full Text

Babak T, Blencowe BJ, Hughes TR: Considerations in the identification of functional RNA structural elements in genomic alignments.
BMC Bioinformatics 2007, 8:33. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Freyhult EK, Bollback JP, Gardner PP: Exploring genomic dark matter: a critical assessment of the performance of homology search methods on noncoding RNA.
Genome Res 2007, 17:117125. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Deng W, Zhu X, Skogerbø G, Zhao Y, Fu Z, Wang Y, He H, Cai L, Sun H, Liu C, Li B, Bai B, Wang J, Jia D, Sun S, He H, Cui Y, Wang Y, Bu D, Chen R: Organization of the Caenorhabditis elegans small noncoding transcriptome: genomic features, biogenesis, and expression.
Genome Res 2006, 16:2029. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Hofacker IL, Fekete M, Stadler PF: Secondary structure prediction for aligned RNA sequences.
J Mol Biol 2002, 319(5):10591066. PubMed Abstract  Publisher Full Text

Will S, Reiche K, Hofacker IL, Stadler PF, Backofen R: Inferring noncoding RNA families and classes by means of genomescale structurebased clustering.
PLoS Comput Biol 2007, 3(4):e65. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Sankoff D: Simultaneous solution of the RNA folding, alignment and protosequence problems.
SIAM Journal on Applied Mathematics 1985, 45(5):810825. Publisher Full Text

Fan RE, Chen PH, Lin CJ: Working set selection using second order information for training support vector machines. [http://www.csie.ntu.edu.tw/~cjlin/libsvm/] webcite

Pacheco P: Parallel Programming with MPI. Morgan Kaufmann; 1996.