Application of independent component analysis to microarrays