Enhancements to the ADMIXTURE algorithm for individual ancestry estimation
© Alexander and Lange; licensee BioMed Central Ltd. 2011
Received: 2 February 2011
Accepted: 18 June 2011
Published: 18 June 2011
The estimation of individual ancestry from genetic data has become essential to applied population genetics and genetic epidemiology. Software programs for calculating ancestry estimates have become essential tools in the geneticist's analytic arsenal.
Here we describe four enhancements to ADMIXTURE, a high-performance tool for estimating individual ancestries and population allele frequencies from SNP (single nucleotide polymorphism) data. First, ADMIXTURE can be used to estimate the number of underlying populations through cross-validation. Second, individuals of known ancestry can be exploited in supervised learning to yield more precise ancestry estimates. Third, by penalizing small admixture coefficients for each individual, one can encourage model parsimony, often yielding more interpretable results for small datasets or datasets with large numbers of ancestral populations. Finally, by exploiting multiple processors, large datasets can be analyzed even more rapidly.
The enhancements we have described make ADMIXTURE a more accurate, efficient, and versatile tool for ancestry estimation.
of the model using block relaxation. The alternating updates of the parameter matrices Q = (q ik ) and F = (f kj ) both rely on sequential quadratic programming. Convergence is accelerated by applying a quasi-Newton extrapolation algorithm . Further details of our core algorithm are documented elsewhere . The performance of ADMIXTURE is compelling. An ADMIXTURE analysis is typically three to four orders of magnitude faster than a comparable STRUCTURE  analysis.
The advanced features of ADMIXTURE described here allow the user to automate the choice of the number of underlying populations K and to exploit known ancestral populations in a supervised learning mode. Our penalized estimation mechanism can provide many of the benefits of a Bayesian analysis at a fraction of the computation time. These features make ADMIXTURE a suitable replacement for STRUCTURE in most practical applications. Given the ever-increasing size of genotype datasets, the inherent speed of our optimization algorithm, coupled with the parallel-processing mode described here, may render ADMIXTURE the only viable model-based ancestry analysis tool for many users.
where f represents the data likelihood and π represents a prior density on the parameters. STRUCTURE approximates the integral via Monte Carlo methods. Our optimization framework is not well suited to evaluating this integral. As an alternative, we employ cross-validation. In cross-validation, we aim to identify the best K value as judged by prediction of systematically withheld data points. A similar tactic is also employed by the haplotype analysis program fastPHASE  and is inspired by Wold's method for cross-validating PCA models .
across all masked entries over all folds. Minimizing this estimated prediction error on a grid of K values then suggests the most suitable K.
Supervised learning of admixture coefficients
ADMIXTURE's strategy of simultaneously estimating individual ancestry fractions Q and population allele frequencies F is ideal when nothing is known about the contributing ancestral populations. In many scenarios, however, these populations are known and several reference individuals from each population are available. Here it is of interest to estimate the potentially admixed ancestries of the remaining individuals. We term this supervised analysis, as the reference individuals furnish training samples in a supervised learning context. To perform supervised analysis in ADMIXTURE, an .ind file mapping individuals to populations must be provided, and the flag --supervised must be attached to the command line.
Ancestry estimates can be estimated more accurately in supervised analysis because there is less uncertainty in allele frequencies. Interpretation of results is simplified, and run times are shorter owing to the reduced number of parameters to estimate. Both the number of iterations until convergence and the computational complexity per iteration decrease. However, we caution that supervised analysis is only suitable when the reference individuals can be assigned to ancestral populations with certainty and ancestral populations are fairly homogeneous. For exploratory analyses, unsupervised analysis is more appropriate and therefore remains the default in ADMIXTURE.
Penalized estimation and model parsimony
As noted in our later comparison of supervised and unsupervised learning, datasets culled from closely related populations typed at a modest numbers of SNPs can pose substantial challenges in ancestry estimation. For instance, overfitting tends to yield ancestry estimates with inflated amounts of admixture. The Bayesian solution to this problem is to impose an informative prior to steer parameter estimates away from danger when data is sparse. Thus, STRUCTURE imposes Dirichlet prior distributions on ancestry parameters and estimates a hyperparameter α that controls the strength of the prior distributions.
which encourages not only shrinkage but also aggressive parsimony. In particular, the approximate ℓ0 penalty drives small admixture coefficients to zero. Parsimony is desirable because it leads to more easily interpretable and probably more realistic parameter estimates. Estimation is performed by maximizing over its arguments. Increasing λ or the second tuning constant γ elevates the extent of shrinkage and parsimony in the resulting estimates and .
Determination of the penalty tuning constants λ and γ is nontrivial. In our hands cross-validation has proved effective on simple simulated datasets. The tuning constants λ and γ are user-defined options, so users can explore different settings consistent with cross-validation or their own heuristics.
Exploiting Multiple Processors
Very large datasets (millions of SNPs, thousands of individuals) can reduce even ADMIXTURE's efficient algorithms to a crawl. Since our original publication, we have tuned our core algorithm and improved its speed by a factor of two. We have also implemented a parallel execution mode that lets ADMIXTURE exploit multiple processors. This new option employs the OpenMP  framework designed for simple parallelization using compiler #pragma directives. To perform analyses with, for example, four threads, the user need only add the flag -j4 to the command line. Hence
$ admixture Data/hapmap3.bed 3 -j4
analyzes the data file hapmap3.bed using 4 threads, assuming K = 3 ancestral populations. Analyses of our hapmap3 dataset with K = 3 were accelerated by 392% on a four processor machine.
Results and Discussion
The effectiveness of cross-validation
Supervised analysis can yield more precise estimates
To explore the benefits of supervised analysis, we generated a number of artificial datasets and evaluated the empirical precision of parameter estimates compared to the true Q and F. The ancestral allele frequencies F were first generated using the Balding-Nichols model  for 10,000 markers in each of two populations differentiated by an F ST value of .01 (comparable to the genetic distances observed between closely related populations within a continent) and with ancestral allele frequencies drawn uniformly from [0, 1]. Then, for each of 100 datasets, 400 individuals were simulated using ancestries fixed as follows: one hundred individuals with ancestry entirely from population 1, one hundred individuals from population 2, and the remaining two hundred with admixed ancestries spaced uniformly on a grid between population 1 and population 2. Supervised and unsupervised ADMIXTURE analyses performed on these datasets revealed several interesting patterns. First, supervised analysis more accurately recovered the underlying allele frequencies. On average the root-mean-squared error in estimating the vector f1 of reference allele frequencies for population 1 was .046 for unsupervised analysis but .040 for supervised. In general, it appears that errors in estimating F cause overestimation of the F ST between the ancestral populations. Indeed, here the average F ST estimate of .024 for unsupervised analysis fell to .019 for supervised analysis (true F ST of .010).
In our opinion the apparent bias in unsupervised ancestry estimates should not be cause for alarm. The bias becomes much less prominent for larger datasets or datasets where the ancestral populations are better differentiated. Performing the same simulation with an F ST of .05, the bias in Q estimates is mitigated substantially, as seen in Figure 2b. A similar effect is apparent when we increase the number of markers J to 100,000 or more.
Hence, it is evident that supervised analysis, when applicable, can yield more precise estimates that are less susceptible to the biases seen in unsupervised analysis. Another benefit of supervised analysis is that it runs considerably faster. For the 10 simulated datasets with 10,000 markers, supervised analysis took an average of 5.15 seconds, while unsupervised analysis averaged 27.5 seconds.
The effects of penalized estimation
ADMIXTURE is a fully-featured, highly efficient, and easy-to-use tool for ancestry estimation from SNP datasets. The four enhancements described here promote great flexibility in both exploratory and focused studies of genetic ancestry. Cross-validation enables rational choice of the number of ancestral populations. Supervised analysis mode can yield more accurate ancestry estimates when the number and makeup of contributing populations are certain. Parallelizing the code reduces run times and allows more ambitious analyses involving more people and SNPs. Finally, penalizing weak evidence for admixture promotes model parsimony and yields ancestry fractions more in line with users' expectations.
Availability and requirements
Project name: ADMIXTURE
Operating systems: Linux, Mac OS X
Programming languages: C++
Other requirements: None
License: Binaries freely available; source code proprietary
Any restrictions to use by non-academics: None
Acknowledgements and Funding
We thank John Novembre and Marc Suchard for helpful suggestions. This work was supported by Grant T32GM008185 to D.H.A. from the National Institute of General Medical Sciences and by Grants GM53275 and MH59490 to K.L. from the United States Public Health Service.
- Pritchard J, Stephens M, Donnelly P: Inference of population structure using multilocus genotype data. Genetics 2000, 155(2):945.PubMed CentralPubMed
- Tang H, Peng J, Wang P, Risch N: Estimation of individual admixture: analytical and study design considerations. Genetic Epidemiology 2005, 28(4):289–301. 10.1002/gepi.20064View ArticlePubMed
- Zhou H, Alexander D, Lange K: A quasi-Newton acceleration for high-dimensional optimization algorithms. Statistics and Computing Published online 2009., 19(4):
- Alexander D, Novembre J, Lange K: Fast model-based estimation of ancestry in unrelated individuals. Genome Research 2009, 19: 1655–1664. 10.1101/gr.094052.109PubMed CentralView ArticlePubMed
- Scheet P, Stephens M: A fast and flexible statistical model for large-scale population genotype data: applications to inferring missing genotypes and haplotypic phase. American Journal of Human Genetics 2006, 78(4):629–644. 10.1086/502802PubMed CentralView ArticlePubMed
- Wold S: Cross-validatory estimation of the number of components in factor and principal components models. Technometrics 1978, 397–405.
- McCullagh P, Nelder J: Generalized Linear Models. Chapman & Hall/CRC; 1989.View Article
- Candes E, Wakin M, Boyd S: Enhancing sparsity by reweighted ℓ1minimization. Journal of Fourier Analysis and Applications 2008, 14(5):877–905. 10.1007/s00041-008-9045-xView Article
- Dagum L, Menon R: OpenMP: an industry standard API for shared-memory programming. Computational Science & Engineering IEEE 2002, 5: 46–55.View Article
- The International HapMap 3 Consortium: Integrating common and rare genetic variation in diverse human populations. Nature 2010, 467(7311):52–58. 10.1038/nature09298PubMed CentralView Article
- Patterson N, Price AL, Reich D: Population structure and eigenanalysis. PLoS Genetics 2006, 2(12):e190. 10.1371/journal.pgen.0020190PubMed CentralView ArticlePubMed
- Balding D, Nichols R: A method for quantifying differentiation between populations at multi-allelic loci and its implications for investigating identity and paternity. Genetica 1995, 96: 3–12. 10.1007/BF01441146View ArticlePubMed
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.