在Julia中快速计算基因型矩阵的主成分
Fast computation of the principal components of genotype matrices in Julia
AI总结:
本文提出了一种随机矩阵模型,用于快速计算基因组关联研究中基因型矩阵的主成分,采用GKL bidiagonalization方法,比现有工具快36倍。
摘要:
在基因组关联研究(GWASs)中,找到基因数据矩阵的最大几个主成分是常见任务,用于降维和识别变异因素。我们描述了一种简单的随机矩阵模型,显示奇异值具有遵循Marchenko-Pastur分布的批量行为,并有少量大异常值。我们还实现了Golub-Kahan-Lanczos(GKL)双对角化方法,在Julia编程语言中提供厚重启和全/部分重新正交化策略以控制舍入误差。我们的GKL双对角化实现比用于基因组数据分析的现有工具如EIGENSOFT和FlashPCA快36倍,后者使用密集LAPACK例行和随机子空间迭代。
英文摘要:
Finding the largest few principal components of a matrix of genetic data is a common task in genome-wide association studies (GWASs), both for dimensionality reduction and for identifying unwanted factors of variation. We describe a simple random matrix model for matrices that arise in GWASs, showing that the singular values have a bulk behavior that obeys a Marchenko-Pastur distributed with a handful of large outliers. We also implement Golub-Kahan-Lanczos (GKL) bidiagonalization in the Julia programming language, providing thick restarting and a choice between full and partial reorthogonalization strategies to control numerical roundoff. Our implementation of GKL bidiagonalization is up to 36 times faster than software tools used commonly in genomics data analysis for computing principal components, such as EIGENSOFT and FlashPCA, which use dense LAPACK routines and randomized subspace iteration respectively.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。