with the rapid development of dna microarray technology , we can now get the expression levels of thousands of genes via one single experiment with a relative cheap cost 1 .
, 2 .. these microarray data are essential in analyzing health situation of the human body and recognizing symptoms of human illnesses .
mathematically , they can be expressed as a gene expression matrix x = ( xij)nm , where each row represents a gene , while each column represents a sample or a patient for tumor diagnosis .
that is , the numerical value xij denotes the expression level of a specific gene i at a particular sample j. as a matter of fact , there are many microarray datasets available on the web . for medical diagnosis and treatment ,
it is very important to select or discover informative genes of a tumor via the analysis of microarray data , since the informative genes can not only provide valuable information for discovering the crucial reasons of the tumor as well as the treatment methods , but also support to construct an efficient tumor diagnosis system from their expression levels directly without any influence of the other irrelevant genes .
however , most of them are based on ranking genes according to a kind of criterion , such as t , f , rank sum and  test statistics 3 .
recently , the up - and down - regulation probabilities for each gene were defined and then the informative genes can be successfully selected according to the decrease rank of the absolute difference values between the two regulation probabilities 9 . , 10 .. generally , these statistical and information methods just select a number of top genes ( the number is fixed or determined by the threshold given to the criterion ) . in this way , informative genes are selected through individual gene evaluations and thus the relations among the genes are neglected , which may lead to an incomplete selection of informative genes for tumor analysis and diagnosis . the relations or structures of genes can be discovered through unsupervised classification or clustering .
in fact , some typical clustering methods have been already applied to the analysis of informative genes and tumor diagnosis , such as hierarchical clustering 4 .
, k - means ( 13 ) and self - organizing map ( som ) ( 3 ) .
however , as the number of genes is large , hierarchical clustering is very difficult to be implemented and can not determine the informative genes by itself .
moreover , the other classical clustering methods like k - means and som require predetermination of the number of gene clusters . however , we usually do not know the number of gene clusters since it depends on the structures of genes that are implied in the microarray data . in 1993 , a new kind of unsupervised clustering method , called the rival penalized competitive learning ( rpcl ) algorithm 14 . , 15 . , was proposed to automatically determine the number of clusters during the clustering or competitive learning on the sample data . for each input sample ,
the basic idea is that not only the weight vector of the winner unit is modified to adapt to the input , but also the weight vector of its rival ( the 2nd winner ) is de - learned by a smaller learning rate . in this way ,
as the learning and de - learning rates are properly selected and the number of units or weight vectors is larger than the number of actual clusters in the sample data , the rpcl algorithm can automatically allocate an appropriate number of weight vectors for a sample dataset , with the other extra weight vectors being driven far away from the sample data .
recently , the rpcl algorithm was generalized to the distance sensitive rival penalized competitive learning ( dsrpcl ) algorithm through a cost function theory ( 16 ) .
actually , the implementation of the dsrpcl algorithm becomes more efficient and easier since the learning rate can be easily set .
thus , we can use the dsrpcl algorithm to analyze gene clusters from microarray data without knowing the actual number of gene clusters .
in fact , the rpcl and dsrpcl algorithms have already been used to analyze microarray data 17 .
( 17 ) , the rpcl algorithm was applied to classify the genes into a number of clusters that could have certain functional meanings .
moreover , the dsrpcl algorithm was utilized to classify the genes into a number of clusters from which a compact set of informative genes could be established via a post - filtering gene selection method ( 19 ) .
similarly to the dsrpcl algorithm , the cooperative competition clustering algorithm ( 20 ) was established to classify the genes into an appropriate number of clusters and then the informative genes can be selected from each of the obtained clusters . as the dsrpcl algorithm can automatically divide the genes into a number of functional clusters , we may wonder whether there exists a cluster that can be served as a set of informative genes directly .
actually , we can utilize support vector machine ( svm ) ( 21 ) to check which gene cluster contributes best to the tumor diagnosis and whether it can be used as an informative gene set for a tumor .
that is , we can use svm to train a tumor diagnosis system with the m expression profiles on the genes in each cluster and to see which tumor diagnosis system gets the best prediction accuracy . if a tumor diagnosis system gets the best prediction accuracy that is high enough , we consider the corresponding gene cluster is just the set of informative genes for the tumor .
moreover , since the distributions of gene expression levels on the samples should have the similar structures at the critical or powerful informative genes , that is , the informative genes that can strongly discriminate the tumor from the normal via their expression levels on the samples , we can consider these critical or powerful informative genes belong to a sub - cluster in this informative gene set .
thus , we can find these critical or powerful informative genes of the tumor by further clustering and checking on the sub - clusters of this informative gene cluster or set .
as for the critical informative gene selection , guyon et al . have already proposed an svm - based method ( 22 ) .
they used a linear svm to train a tumor diagnosis system and selected the genes with higher weights in the final discriminate function as the critical or powerful genes .
recently , zhang et al . improved this svm - based method by adding the smoothly clipped absolute deviation penalty on the original objective function of the svm ( 23 ) .
however , the major disadvantage of the svm - based method is that the number of informative genes is still determined by the pre - assumed threshold value to the weights , not by the structure of the genes . in this paper , in light of the above ideas , we propose a dsrpcl - svm approach where the dsrpcl algorithm is firstly utilized to classify the genes expressed through the microarray data into a number of clusters and the informative gene cluster or set is then detected with the help of svm .
moreover , the critical or powerful informative genes is found through further classifications and detections on the informative gene clusters .
the performance of this method is demonstrated by experiments on the colon , leukemia , and breast cancer datasets .
given a microarray dataset x = ( xij)nm with n genes and m samples , we let s={xi}i=1n , where x = [ x1 , x2 ,  , xm ] represents the -th gene through its expression levels over all the m samples .
suppose that x is just an input to a simple competitive learning network , that is , a layer of k competitive units .
these competitive units are dominated by the corresponding weight vectors wi = [ wi1 , wi2 ,  , wim ] for i = 1 , 2 ,  , k. all the weight vectors can be represented by a big vector w = vec[w1 , w2 ,  , wk ] . for each input
x , the basic idea of the dsrpcl algorithm is that not only the weight vector of the winner unit ( the closest weight vector to the sample ) is modified to adapt to the input , but also the weight vectors of the rivals or losers ( the other weight vectors ) are punished to keep away from the input . as a weight vector diverges to infinity , the corresponding cluster becomes empty and can be canceled .
therefore , we can automatically obtain the number of gene clusters as well as the centers of these clusters assuming k is larger than the true number of the actual gene clusters . as a result
, the genes are automatically divided into several clusters by classifying each gene into the cluster whose center is closest to it .
theoretically , the dsrpcl algorithm can be realized by minimizing the cost function in equation 1 , where c( ) is the index of the winner unit for the -th gene , wc( ) is the nearest weight vector for x , and p is a positive constant .
ma and wang ( 16 ) obtained the derivatives of e(w ) with respect to wij as in equation 2 , where i , j is the kronecker function . with these derivatives ,
table 1 summarizes the details of the dsrpcl algorithm and its variants , where we denote it as the batch dsrpcl algorithm .
the dsrpcl1 algorithm is the adaptive dsrpcl algorithm , and the dsrpcl2 algorithm modifies only the rival weight vector ( the second winner ) so that e2(w ) is only affected by the largest term with r( ) , which is consistent with the original rpcl algorithm 14 .
, 15 .. the other variant of the dsrpcl algorithm is the simulated annealing rival penalized competitive learning ( sarpcl ) by applying the simulated annealing mechanism to the dsrpcl1 algorithm .
parameters k0 , k1 , c0 and c1 are positive constant numbers that can be selected by experience .
since these dsrpcl algorithms have the similar functions in clustering analysis , we typically use the dsrpcl1 algorithm in our experiments.(1)e(w)=e1(w)+e2(w)=12xwc()2 + 2p,ic()xwip(2)e(w)ij=(i , c()xjij)+,i(1i , c()xwip2(xjij ) according to the properties of the dsrpcl algorithm shown in ma and wang ( 16 ) , when k is selected to be large enough , the dsrpcl algorithm can detect the number of gene clusters during the clustering . from the obtained gene clusters , we can check them with svm and find the informative gene cluster or set .
we further consider the informative gene analysis through the dsrpcl algorithm and svm . in order to do so
, we can implement the dsrpcl algorithm directly on the sample data s={x}=1n from the microarray data with respect to a tumor .
usually , we can overestimate the number of the clusters in s and set it to be k. as a result of the implementation , the dsrpcl algorithm divides the n genes ( represented by x ) into a number of functional gene clusters among which there is an informative gene cluster contributing the best to the recognition or diagnosis of the tumor .
if we think this informative gene cluster is too large , that is , it contains too many genes for tumor analysis , or we just want to get some more critical or powerful informative genes for the tumor , we can implement the dsrpcl algorithm on the previously obtained informative gene cluster or set ( the obtained subset of s ) .
again , the dsrpcl algorithm divides the selected informative genes into a number of gene clusters , among which we can find the most powerful sub - cluster and genes . in such a way , we can finally find a small number of critical or powerful genes for the tumor . on the other hand , the above informative gene search can be only done with the help of a supervised learning system for checking which gene cluster or sub - cluster contributes the best to the recognition or diagnosis of the tumor .
actually , suppose gs={gi1,,gip } is a divided gene cluster or sub - cluster obtained by the dsrpcl algorithm , if the genes in this cluster ( or sub - cluster ) are informative ( or powerful informative ) to the tumor , then a supervised learning system on the sample expression profiles of these genes , x^j=[xi1,j,,xip , j]t(j=1,,m ) , and their corresponding diagnosis results ( if the sample is tumorous , the diagnosis result is 1 ; otherwise the diagnosis result is 0 ) will lead to the highest prediction accuracy or the lowest average error . in this way
, we can find the informative or powerful informative genes through a supervised learning system .
svm ( 21 ) is a powerful learning machine for the supervised learning or classification .
in fact , many researchers have used it to analyze microarray data and demonstrated its advantages 24 .
, 25 . , 26 .. therefore , we also utilize svm to check the informative or powerful informative gene cluster . for comparison
, we use the matlab toolbox osusvm 3.0 to set up three kinds of svms , including linear svm ( no kernel ) , 3-poly svm ( cubic polynomial kernel ) , and radial basis function svm ( rbf kernel ) . to test the effectiveness of our proposed dsrpcl - svm approach for informative gene analysis , we conducted experiments on three real - world microarray datasets : colon cancer dataset .
it contains expression profiles of 2 , 000 genes in 22 normal tissues and 40 colon tumor tissues , which can be retrieved from the web at http://microarray.princeton.edu/oncology/affydata/index.html . in our experiment , we used the training set ( 22 normal and 22 tumorous tissues ) and the test set ( 18 tumorous tissues ) provided at the website .
it contains expression profiles of 7 , 129 genes in 47 acute lymphoblastic leukemia ( all ) and 25 acute myeloid leukemia ( aml ) samples , which can be retrieved from the web at http://www.genome.wi.mit.edu/mpr/data_set_all_aml.htm . in our experiments
, we used the training set ( 27 all and 11 aml ) and the test set ( 20 all and 14 aml ) provided at the website .
it contains expression profiles of 5 , 776 genes in 14 normal tissues and 13 breast tumorous tissues , which can be retrieved from the web at http://genome-www.stanford.edu/breast_cancer/sbcmp/data.shtml . in our experiment
, we used the 14 normal and 13 tumorous samples provided at the website as both the training set and the test set since the number of the samples is very limited .
for the three kinds of svms , there are two parameters in the last two svms ,  and c , and their selection affects the performance of svm . in our experiments , by experience we set  = 0.02 , c = 0.05 on colon cancer data and  = 0.002 , c = 10 on leukemia data and breast cancer data . to improve the efficiency of the dsrpcl1 algorithm
, we set the de - learning rate in the update rule , that is , the corresponding learning rate for the opposite or minus direction learning , to attenuate to zero with the number of iterations . in this way
, the algorithm could make the convergent weight vectors converge to the centers of the actual clusters in the sample data without any deviation , keeping the extra weight vectors being driven far away from the sample data . for the convenience of implementation of the two algorithms , we filtered out 10% obviously irrelevant genes using the cosine method .
that is , we computed the cosine value of the vector of the expressions of each gene at all the samples with the reference vector in which each element is 1 , and then ranked these genes with the decrease of the cosine value and finally filtered out 10% genes from the last .
first , we ran the dsrpcl1 algorithm on the three microarray datasets and obtained five , four , and nine gene clusters ( except the empty clusters represented by the weight vectors of the dsrpcl1 algorithm ) , respectively , where the number of the weight vectors or clusters was always set initially by 10 ( the number of clusters in each microarray data was assumed to be no more than 10 ) . according to these gene clusters obtained by the dsrpcl1 algorithm , we trained the three kinds of svms with the training data on each gene cluster of the three datasets .
then we obtained the prediction or classification accuracy of each trained svm with the test data .
the experiment results on the three datasets are summarized in table 2 . from table 2
, we can find that the dsrpcl1 algorithm not only discovers a good information gene set to a tumor , but also improves the accuracy of tumor diagnosis or classification .
actually , in some cases , the svm on the selected informative gene set ( cluster ) can even reach 100% prediction accuracy .
this means that the optimal gene cluster obtained from a dsrpcl - svm procedure on the microarray data is just the informative gene set to the tumor .
next , we repeated the above dsrpcl - svm procedure ( dsrpcl clustering and svm checking ) on the optimal or informative gene cluster .
that is , we just considered the genes in the optimal cluster and neglected all the other genes . in this way , we clearly obtained a smaller optimal gene cluster or sub - cluster .
if the svm on this smaller optimal gene cluster still has a high prediction accuracy , we could consider the genes in this cluster are more powerful .
in other words , they are powerful informative genes to the tumor . from the second dsrpcl - svm procedure , we also obtained a number of sub - clusters of genes and their prediction accuracies on the three datasets ( table 3 ) . from table 3 , we can find that , after the second dsrpcl - svm procedure on each microarray dataset , a smaller informative gene cluster was obtained , while the best prediction accuracy of svm on this gene cluster was still rather high . in this way
, we could repeat the procedures and ultimately find a set of most powerful genes to the tumor .
table 4 gives the size ( the number of genes ) of the optimal gene cluster and the corresponding highest prediction accuracy of svm after each round of the dsrpcl - svm procedure . from table 4
, we can find that the division of the optimal gene cluster would stop after several dsrpcl - svm procedures .
as we successively divided the optimal gene cluster , the prediction accuracy of svm would drop slightly .
this means that some informative genes were left , while the remaining genes became more powerful . as the division of the dsrpcl - svm procedure on the optimal gene cluster finally stopped , we obtained the most powerful informative genes to the tumor in this indivisible cluster
table 5 is a list of the identity numbers of the powerful genes obtained from the experiments on the three datasets , respectively .
although we do not know the biological meanings of these genes , we are sure that they are critical to the corresponding tumors for the medical diagnosis and treatment . from the further experiments , we can find that the dsrpcl - svm procedure can always find a set of several powerful genes to a tumor or some biological phenotypes .
that is , the powerful genes may be changed greatly with the different initial values of the parameters in the dsrpcl algorithm .
we think that the reasons of the instability or sensitivity to the initial parameter values may be two - fold .
first , the dsrpcl algorithm may be sensitive with the initial values of the parameters when there are just a small number of samples in the dataset .
second , the real powerful genes for a tumor my be dependent and our dsrpcl - svm method can only find a set of powerful genes on which an svm diagnosis system can still be made efficiently .
given a microarray dataset x = ( xij)nm with n genes and m samples , we let s={xi}i=1n , where x = [ x1 , x2 ,  , xm ] represents the -th gene through its expression levels over all the m samples .
suppose that x is just an input to a simple competitive learning network , that is , a layer of k competitive units .
these competitive units are dominated by the corresponding weight vectors wi = [ wi1 , wi2 ,  , wim ] for i = 1 , 2 ,  , k. all the weight vectors can be represented by a big vector w = vec[w1 , w2 ,  , wk ] . for each input
x , the basic idea of the dsrpcl algorithm is that not only the weight vector of the winner unit ( the closest weight vector to the sample ) is modified to adapt to the input , but also the weight vectors of the rivals or losers ( the other weight vectors ) are punished to keep away from the input . as a weight vector diverges to infinity , the corresponding cluster becomes empty and can be canceled .
therefore , we can automatically obtain the number of gene clusters as well as the centers of these clusters assuming k is larger than the true number of the actual gene clusters . as a result
, the genes are automatically divided into several clusters by classifying each gene into the cluster whose center is closest to it .
theoretically , the dsrpcl algorithm can be realized by minimizing the cost function in equation 1 , where c( ) is the index of the winner unit for the -th gene , wc( ) is the nearest weight vector for x , and p is a positive constant .
ma and wang ( 16 ) obtained the derivatives of e(w ) with respect to wij as in equation 2 , where i , j is the kronecker function . with these derivatives ,
table 1 summarizes the details of the dsrpcl algorithm and its variants , where we denote it as the batch dsrpcl algorithm .
the dsrpcl1 algorithm is the adaptive dsrpcl algorithm , and the dsrpcl2 algorithm modifies only the rival weight vector ( the second winner ) so that e2(w ) is only affected by the largest term with r( ) , which is consistent with the original rpcl algorithm 14 .
, 15 .. the other variant of the dsrpcl algorithm is the simulated annealing rival penalized competitive learning ( sarpcl ) by applying the simulated annealing mechanism to the dsrpcl1 algorithm .
parameters k0 , k1 , c0 and c1 are positive constant numbers that can be selected by experience .
since these dsrpcl algorithms have the similar functions in clustering analysis , we typically use the dsrpcl1 algorithm in our experiments.(1)e(w)=e1(w)+e2(w)=12xwc()2 + 2p,ic()xwip(2)e(w)ij=(i , c()xjij)+,i(1i , c()xwip2(xjij ) according to the properties of the dsrpcl algorithm shown in ma and wang ( 16 ) , when k is selected to be large enough , the dsrpcl algorithm can detect the number of gene clusters during the clustering . from the obtained gene clusters , we can check them with svm and find the informative gene cluster or set .
we further consider the informative gene analysis through the dsrpcl algorithm and svm . in order to do so
, we can implement the dsrpcl algorithm directly on the sample data s={x}=1n from the microarray data with respect to a tumor .
usually , we can overestimate the number of the clusters in s and set it to be k. as a result of the implementation , the dsrpcl algorithm divides the n genes ( represented by x ) into a number of functional gene clusters among which there is an informative gene cluster contributing the best to the recognition or diagnosis of the tumor .
if we think this informative gene cluster is too large , that is , it contains too many genes for tumor analysis , or we just want to get some more critical or powerful informative genes for the tumor , we can implement the dsrpcl algorithm on the previously obtained informative gene cluster or set ( the obtained subset of s ) .
again , the dsrpcl algorithm divides the selected informative genes into a number of gene clusters , among which we can find the most powerful sub - cluster and genes . in such a way , we can finally find a small number of critical or powerful genes for the tumor . on the other hand , the above informative gene search can be only done with the help of a supervised learning system for checking which gene cluster or sub - cluster contributes the best to the recognition or diagnosis of the tumor .
actually , suppose gs={gi1,,gip } is a divided gene cluster or sub - cluster obtained by the dsrpcl algorithm , if the genes in this cluster ( or sub - cluster ) are informative ( or powerful informative ) to the tumor , then a supervised learning system on the sample expression profiles of these genes , x^j=[xi1,j,,xip , j]t(j=1,,m ) , and their corresponding diagnosis results ( if the sample is tumorous , the diagnosis result is 1 ; otherwise the diagnosis result is 0 ) will lead to the highest prediction accuracy or the lowest average error . in this way
, we can find the informative or powerful informative genes through a supervised learning system .
svm ( 21 ) is a powerful learning machine for the supervised learning or classification .
in fact , many researchers have used it to analyze microarray data and demonstrated its advantages 24 .
, 25 . , 26 .. therefore , we also utilize svm to check the informative or powerful informative gene cluster . for comparison ,
we use the matlab toolbox osusvm 3.0 to set up three kinds of svms , including linear svm ( no kernel ) , 3-poly svm ( cubic polynomial kernel ) , and radial basis function svm ( rbf kernel ) .
to test the effectiveness of our proposed dsrpcl - svm approach for informative gene analysis , we conducted experiments on three real - world microarray datasets : colon cancer dataset .
it contains expression profiles of 2 , 000 genes in 22 normal tissues and 40 colon tumor tissues , which can be retrieved from the web at http://microarray.princeton.edu/oncology/affydata/index.html . in our experiment , we used the training set ( 22 normal and 22 tumorous tissues ) and the test set ( 18 tumorous tissues ) provided at the website .
it contains expression profiles of 7 , 129 genes in 47 acute lymphoblastic leukemia ( all ) and 25 acute myeloid leukemia ( aml ) samples , which can be retrieved from the web at http://www.genome.wi.mit.edu/mpr/data_set_all_aml.htm . in our experiments , we used the training set ( 27 all and 11 aml ) and the test set ( 20 all and 14 aml ) provided at the website .
it contains expression profiles of 5 , 776 genes in 14 normal tissues and 13 breast tumorous tissues , which can be retrieved from the web at http://genome-www.stanford.edu/breast_cancer/sbcmp/data.shtml . in our experiment , we used the 14 normal and 13 tumorous samples provided at the website as both the training set and the test set since the number of the samples is very limited . for the three kinds of svms , there are two parameters in the last two svms ,  and c , and their selection affects the performance of svm . in our experiments , by experience we set  = 0.02 , c = 0.05 on colon cancer data and  = 0.002 , c = 10 on leukemia data and breast cancer data . to improve the efficiency of the dsrpcl1 algorithm
, we set the de - learning rate in the update rule , that is , the corresponding learning rate for the opposite or minus direction learning , to attenuate to zero with the number of iterations . in this way
, the algorithm could make the convergent weight vectors converge to the centers of the actual clusters in the sample data without any deviation , keeping the extra weight vectors being driven far away from the sample data . for the convenience of implementation of the two algorithms , we filtered out 10% obviously irrelevant genes using the cosine method .
that is , we computed the cosine value of the vector of the expressions of each gene at all the samples with the reference vector in which each element is 1 , and then ranked these genes with the decrease of the cosine value and finally filtered out 10% genes from the last .
first , we ran the dsrpcl1 algorithm on the three microarray datasets and obtained five , four , and nine gene clusters ( except the empty clusters represented by the weight vectors of the dsrpcl1 algorithm ) , respectively , where the number of the weight vectors or clusters was always set initially by 10 ( the number of clusters in each microarray data was assumed to be no more than 10 ) . according to these gene clusters obtained by the dsrpcl1 algorithm , we trained the three kinds of svms with the training data on each gene cluster of the three datasets .
then we obtained the prediction or classification accuracy of each trained svm with the test data .
the experiment results on the three datasets are summarized in table 2 . from table 2
, we can find that the dsrpcl1 algorithm not only discovers a good information gene set to a tumor , but also improves the accuracy of tumor diagnosis or classification .
actually , in some cases , the svm on the selected informative gene set ( cluster ) can even reach 100% prediction accuracy .
this means that the optimal gene cluster obtained from a dsrpcl - svm procedure on the microarray data is just the informative gene set to the tumor .
next , we repeated the above dsrpcl - svm procedure ( dsrpcl clustering and svm checking ) on the optimal or informative gene cluster .
that is , we just considered the genes in the optimal cluster and neglected all the other genes . in this way , we clearly obtained a smaller optimal gene cluster or sub - cluster .
if the svm on this smaller optimal gene cluster still has a high prediction accuracy , we could consider the genes in this cluster are more powerful .
in other words , they are powerful informative genes to the tumor . from the second dsrpcl - svm procedure , we also obtained a number of sub - clusters of genes and their prediction accuracies on the three datasets ( table 3 ) . from table 3
, we can find that , after the second dsrpcl - svm procedure on each microarray dataset , a smaller informative gene cluster was obtained , while the best prediction accuracy of svm on this gene cluster was still rather high . in this way
, we could repeat the procedures and ultimately find a set of most powerful genes to the tumor .
table 4 gives the size ( the number of genes ) of the optimal gene cluster and the corresponding highest prediction accuracy of svm after each round of the dsrpcl - svm procedure . from table 4
, we can find that the division of the optimal gene cluster would stop after several dsrpcl - svm procedures .
as we successively divided the optimal gene cluster , the prediction accuracy of svm would drop slightly .
this means that some informative genes were left , while the remaining genes became more powerful .
as the division of the dsrpcl - svm procedure on the optimal gene cluster finally stopped , we obtained the most powerful informative genes to the tumor in this indivisible cluster .
table 5 is a list of the identity numbers of the powerful genes obtained from the experiments on the three datasets , respectively . although we do not know the biological meanings of these genes , we are sure that they are critical to the corresponding tumors for the medical diagnosis and treatment . from the further experiments
, we can find that the dsrpcl - svm procedure can always find a set of several powerful genes to a tumor or some biological phenotypes .
that is , the powerful genes may be changed greatly with the different initial values of the parameters in the dsrpcl algorithm .
we think that the reasons of the instability or sensitivity to the initial parameter values may be two - fold .
first , the dsrpcl algorithm may be sensitive with the initial values of the parameters when there are just a small number of samples in the dataset .
second , the real powerful genes for a tumor my be dependent and our dsrpcl - svm method can only find a set of powerful genes on which an svm diagnosis system can still be made efficiently .
we investigated the problem of informative gene discovery and analysis from the perspective of the newly established unsupervised clustering method  dsrpcl algorithm .
since the dsrpcl algorithm can detect the number of clusters automatically in a dataset , we apply it to dividing the genes expressed through microarray data into a number of functional gene clusters and use svm to check which cluster is the set of informative genes to the tumor .
moreover , this dsrpcl - svm procedure can be further implemented on the informative gene cluster successively and find out the critical or powerful informative genes of the tumor .
our experiments on the colon , leukemia , and breast cancer datasets demonstrated that this dsrpcl - svm method is really efficient for discovering the informative gene set as well as the powerful informative genes for a tumor through the microarray data .
wx and zc participated in the method design , performed the experimental work and drafted the manuscript .
jm conceived the idea of using this approach , guided the research and completed the manuscript .
wx and zc participated in the method design , performed the experimental work and drafted the manuscript .
jm conceived the idea of using this approach , guided the research and completed the manuscript .
 microarray data based tumor diagnosis is a very interesting topic in bioinformatics . 
 one of the key problems is the discovery and analysis of informative genes of a tumor . 
 although there are many elaborate approaches to this problem , it is still difficult to select a reasonable set of informative genes for tumor diagnosis only with microarray data . in this paper 
 , we classify the genes expressed through microarray data into a number of clusters via the distance sensitive rival penalized competitive learning ( dsrpcl ) algorithm and then detect the informative gene cluster or set with the help of support vector machine ( svm ) . 
 moreover , the critical or powerful informative genes can be found through further classifications and detections on the obtained informative gene clusters . 
 it is well demonstrated by experiments on the colon , leukemia , and breast cancer datasets that our proposed dsrpcl - svm approach leads to a reasonable selection of informative genes for tumor diagnosis . 
Introduction
Method
The DSRPCL algorithm for gene clustering
The DSRPCL-SVM approach to informative gene analysis
Evaluation
Conclusion
Authors contributions
Competing interests