Genes work coordinately as gene modules or gene networks. Various computational approaches have been proposed to find gene modules based on gene expression data, for example, gene clustering is a popular method for grouping genes with similar gene expression patterns. However, traditional gene clustering often yields unsatisfactory results for regulatory module identification because the resulting gene clusters are co-expressed but not necessarily co-regulated.