Crossvalidation (statistics)
This article needs additional citations for verification. (August 2017) (Learn how and when to remove this template message)

Crossvalidation, sometimes called rotation estimation^{[1]}^{[2]}^{[3]} or outofsample testing, is any of various similar model validation techniques for assessing how the results of a statistical analysis will generalize to an independent data set. It is mainly used in settings where the goal is prediction, and one wants to estimate how accurately a predictive model will perform in practice. In a prediction problem, a model is usually given a dataset of known data on which training is run (training dataset), and a dataset of unknown data (or first seen data) against which the model is tested (called the validation dataset or testing set).^{[4]}^{[5]} The goal of crossvalidation is to test the model's ability to predict new data that was not used in estimating it, in order to flag problems like overfitting or selection bias^{[6]} and to give an insight on how the model will generalize to an independent dataset (i.e., an unknown dataset, for instance from a real problem).
One round of crossvalidation involves partitioning a sample of data into complementary subsets, performing the analysis on one subset (called the training set), and validating the analysis on the other subset (called the validation set or testing set). To reduce variability, in most methods multiple rounds of crossvalidation are performed using different partitions, and the validation results are combined (e.g. averaged) over the rounds to give an estimate of the model's predictive performance.
In summary, crossvalidation combines (averages) measures of fitness in prediction to derive a more accurate estimate of model prediction performance.^{[7]}
Contents
Motivation[edit]
Suppose we have a model with one or more unknown parameters, and a data set to which the model can be fit (the training data set). The fitting process optimizes the model parameters to make the model fit the training data as well as possible. If we then take an independent sample of validation data from the same population as the training data, it will generally turn out that the model does not fit the validation data as well as it fits the training data. The size of this difference is likely to be large especially when the size of the training data set is small, or when the number of parameters in the model is large. Crossvalidation is a way to estimate the size of this effect.
In linear regression we have real response values y_{1}, ..., y_{n}, and n pdimensional vector covariates x_{1}, ..., x_{n}. The components of the vector x_{i} are denoted x_{i1}, ..., x_{ip}. If we use least squares to fit a function in the form of a hyperplane y = a + β^{T}x to the data (x_{i}, y_{i})_{ 1 ≤ i ≤ n}, we could then assess the fit using the mean squared error (MSE). The MSE for given estimated parameter values a and β on the training set (x_{i}, y_{i})_{ 1 ≤ i ≤ n} is
If the model is correctly specified, it can be shown under mild assumptions that the expected value of the MSE for the training set is (n − p − 1)/(n + p + 1) < 1 times the expected value of the MSE for the validation set^{[8]} (the expected value is taken over the distribution of training sets). Thus if we fit the model and compute the MSE on the training set, we will get an optimistically biased assessment of how well the model will fit an independent data set. This biased estimate is called the insample estimate of the fit, whereas the crossvalidation estimate is an outofsample estimate.
Since in linear regression it is possible to directly compute the factor (n − p − 1)/(n + p + 1) by which the training MSE underestimates the validation MSE under the assumption that the model specification is valid, crossvalidation can be used for checking whether the model has been overfitted, in which case the MSE in the validation set will substantially exceed its anticipated value. (Crossvalidation in the context of linear regression is also useful in that it can be used to select an optimally regularized cost function). In most other regression procedures (e.g. logistic regression), there is no simple formula to compute the expected outofsample fit. Crossvalidation is, thus, a generally applicable way to predict the performance of a model on unavailable data using numerical computation in place of theoretical analysis.
Types[edit]
Two types of crossvalidation can be distinguished: exhaustive and nonexhaustive crossvalidation.
Exhaustive crossvalidation[edit]
Exhaustive crossvalidation methods are crossvalidation methods which learn and test on all possible ways to divide the original sample into a training and a validation set.
Leavepout crossvalidation[edit]
Leavepout crossvalidation (LpO CV) involves using p observations as the validation set and the remaining observations as the training set. This is repeated on all ways to cut the original sample on a validation set of p observations and a training set.^{[9]}
LpO crossvalidation requires training and validating the model times, where n is the number of observations in the original sample, and where is the binomial coefficient. For p > 1 and for even moderately large n, LpO CV can become computationally infeasible. For example, with n = 100 and p = 30 = 30 percent of 100
Leaveoneout crossvalidation[edit]
Leaveoneout crossvalidation (LOOCV) is a particular case of leavepout crossvalidation with p = 1.
The process looks similar to jackknife; however, with crossvalidation one computes a statistic on the leftout sample(s), while with jackknifing one computes a statistic from the kept samples only.
LOO crossvalidation requires less computation time than LpO crossvalidation because there are only passes rather than . However, passes may still require quite a large computation time, in which case other approaches such as kfold cross validation may be more appropriate.^{[10]}
PseudoCodeAlgorithm:
Input:
x, {vector of length N with xvalues of data points}
y, {vector of length N with yvalues of data points}
Output:
err, {estimate for the prediction error}
Steps:
err ← 0
for i ← 1, . . . , N do
// define the crossvalidation subsets
x_in ← (x[1], . . . , x[i − 1], x[i + 1], . . . , x[N])
y_in ← (y[1], . . . , y[i − 1], y[i + 1], . . . , y[N]
x_out ← x[i]
y_out ← interpolate(x_in, y_in, x_out, y_out)
err ← err + (y[i] − y_out)^2
end for
err ← err/N
Nonexhaustive crossvalidation[edit]
Nonexhaustive cross validation methods do not compute all ways of splitting the original sample. Those methods are approximations of leavepout crossvalidation.
kfold crossvalidation[edit]
In kfold crossvalidation, the original sample is randomly partitioned into k equal sized subsamples. Of the k subsamples, a single subsample is retained as the validation data for testing the model, and the remaining k − 1 subsamples are used as training data. The crossvalidation process is then repeated k times, with each of the k subsamples used exactly once as the validation data. The k results can then be averaged to produce a single estimation. The advantage of this method over repeated random subsampling (see below) is that all observations are used for both training and validation, and each observation is used for validation exactly once. 10fold crossvalidation is commonly used,^{[11]} but in general k remains an unfixed parameter.
For example, setting k = 2 results in 2fold crossvalidation. In 2fold crossvalidation, we randomly shuffle the dataset into two sets d_{0} and d_{1}, so that both sets are equal size (this is usually implemented by shuffling the data array and then splitting it in two). We then train on d_{0} and validate on d_{1}, followed by training on d_{1} and validating on d_{0}.
When k = n (the number of observations), the kfold crossvalidation is exactly the leaveoneout crossvalidation.^{[12]}
In stratified kfold crossvalidation, the folds are selected so that the mean response value is approximately equal in all the folds. In the case of binary classification, this means that each fold contains roughly the same proportions of the two types of class labels.
In repeated crossvalidation the data is randomly split into k folds several times. The performance of the model can thereby be averaged over several runs, but this is rarely desirable in practice.^{[13]}
Holdout method[edit]
In the holdout method, we randomly assign data points to two sets d_{0} and d_{1}, usually called the training set and the test set, respectively. The size of each of the sets is arbitrary although typically the test set is smaller than the training set. We then train (build a model) on d_{0} and test (evaluate its performance) on d_{1}.
In typical crossvalidation, results of multiple runs of modeltesting are averaged together; in contrast, the holdout method, in isolation, involves a single run. It should be used with caution because without such averaging of multiple runs, one may achieve highly misleading results. One's indicator of predictive accuracy (F*) will tend to be unstable since it will not be smoothed out by multiple iterations (see below). Similarly, indicators of the specific role played by various predictor variables (e.g., values of regression coefficients) will tend to be unstable.
While the holdout method can be framed as "the simplest kind of crossvalidation",^{[14]} many sources instead classify holdout as a type of simple validation, rather than a simple or degenerate form of crossvalidation.^{[2]}^{[15]}
Repeated random subsampling validation[edit]
This method, also known as Monte Carlo crossvalidation,^{[16]} creates multiple random splits of the dataset into training and validation data.^{[17]} For each such split, the model is fit to the training data, and predictive accuracy is assessed using the validation data. The results are then averaged over the splits. The advantage of this method (over kfold cross validation) is that the proportion of the training/validation split is not dependent on the number of iterations (folds). The disadvantage of this method is that some observations may never be selected in the validation subsample, whereas others may be selected more than once. In other words, validation subsets may overlap. This method also exhibits Monte Carlo variation, meaning that the results will vary if the analysis is repeated with different random splits.
As the number of random splits approaches infinity, the result of repeated random subsampling validation tends towards that of leavepout crossvalidation.
In a stratified variant of this approach, the random samples are generated in such a way that the mean response value (i.e. the dependent variable in the regression) is equal in the training and testing sets. This is particularly useful if the responses are dichotomous with an unbalanced representation of the two response values in the data.
Nested crossvalidation[edit]
When crossvalidation is used simultaneously for selection of the best set of hyperparameters and for error estimation (and assessment of generalization capacity), a nested crossvalidation is required. Many variants exist. At least two variants can be distinguished:
k*lfold crossvalidation[edit]
This is a truly nested variant (for instance used by ^{[18]}), which contains an outer loop of k folds and an inner loop of l folds. The total data set is split in k sets. One by one, a set is selected as (outer) test set and the k1 other sets are combined into the corresponding outer training set. This is repeated for each of the k sets. Each outer training set is further subdivided into l sets. One by one, a set is selected as inner test (validation) set and the l1 other sets are combined into the corresponding inner training set. This is repeated for each of the l sets. The inner training sets are used to fit model parameters, while the outer test set is used as a validation set to provides an unbiased evaluation of the model fit. Typically, this is repeated for many different hyperparameters (or even different model types) and the validation set is used to determine the best hyperparameter set (and model type) for this inner training set. After this, a new model is fit on the entire outer training set, using the best set of hyperparameters from the inner crossvalidation. The performance of this model is then evaluated using the outer test set.
kfold crossvalidation with validation and test set[edit]
This is a type of k*lfold crossvalidation when l=k1. A single kfold crossvalidation is used with both a validation and test set. The total data set is split in k sets. One by one, a set is selected as test set. Then, one by one, one of the remaining sets is used as a validation sets and the other k2 sets are used as training sets until all possible combinations have been evaluated. Similar to the k*lfold cross validation, the training set is used for model fitting and the validation set is used for model evaluation for each of the hyperparameter sets. Finally, for the selected parameter set, the test set is used to evaluate the model with the best parameter set. Here, two variants are possible: either evaluating the model that was trained on the training set or evaluating a new model that was fit on the combination of the train and the validation set.
Measures of fit[edit]
The goal of crossvalidation is to estimate the expected level of fit of a model to a data set that is independent of the data that were used to train the model. It can be used to estimate any quantitative measure of fit that is appropriate for the data and model. For example, for binary classification problems, each case in the validation set is either predicted correctly or incorrectly. In this situation the misclassification error rate can be used to summarize the fit, although other measures like positive predictive value could also be used. When the value being predicted is continuously distributed, the mean squared error, root mean squared error or median absolute deviation could be used to summarize the errors.
Using prior information[edit]
When users apply crossvalidation to select a good configuration , then they might want to balance the crossvalidated choice with their own estimate of the configuration. In this way, they can attempt to counter the volatility of crossvalidation when the sample size is small and include relevant information from previous research. In a forecasting combination exercise, for instance, crossvalidation can be applied to estimate the weights that are assigned to each forecast. Since a simple equalweighted forecast is difficult to beat, a penalty can be added for deviating from equal weights.^{[19]} Or, if crossvalidation is applied to assign individual weights to observations, then one can penalize deviations from equal weights to avoid wasting potentially relevant information.^{[19]} Hoornweg (2018) shows how a tuning parameter can be defined so that a user can intuitively balance between the accuracy of crossvalidation and the simplicity of sticking to a reference parameter that is defined by the user.
If denotes the candidate configuration that might be selected, then the loss function that is to be minimized can be defined as
Relative accuracy can be quantified as , so that the mean squared error of a candidate is made relative to that of a userspecified . The relative simplicity term measures the amount that deviates from relative to the maximum amount of deviation from . Accordingly, relative simplicity can be specified as , where corresponds to the value with the highest permissible deviation from . With , the user determines how high the influence of the reference parameter is relative to crossvalidation.
One can add relative simplicity terms for multiple configurations by specifying the loss function as
Hoornweg (2018) shows that a loss function with such an accuracysimplicity tradeoff can also be used to intuitively define shrinkage estimators like the (adaptive) lasso and Bayesian / ridge regression.^{[19]} Click on the lasso for an example.
Statistical properties[edit]
Suppose we choose a measure of fit F, and use crossvalidation to produce an estimate F^{*} of the expected fit EF of a model to an independent data set drawn from the same population as the training data. If we imagine sampling multiple independent training sets following the same distribution, the resulting values for F^{*} will vary. The statistical properties of F^{*} result from this variation.
The crossvalidation estimator F^{*} is very nearly unbiased for EF ^{[20]}^{[citation needed]}. The reason that it is slightly biased is that the training set in crossvalidation is slightly smaller than the actual data set (e.g. for LOOCV the training set size is n − 1 when there are n observed cases). In nearly all situations, the effect of this bias will be conservative in that the estimated fit will be slightly biased in the direction suggesting a poorer fit. In practice, this bias is rarely a concern.
The variance of F^{*} can be large.^{[21]}^{[22]} For this reason, if two statistical procedures are compared based on the results of crossvalidation, the procedure with the better estimated performance may not actually be the better of the two procedures (i.e. it may not have the better value of EF). Some progress has been made on constructing confidence intervals around crossvalidation estimates,^{[21]} but this is considered a difficult problem.
Computational issues[edit]
Most forms of crossvalidation are straightforward to implement as long as an implementation of the prediction method being studied is available. In particular, the prediction method can be a "black box" – there is no need to have access to the internals of its implementation. If the prediction method is expensive to train, crossvalidation can be very slow since the training must be carried out repeatedly. In some cases such as least squares and kernel regression, crossvalidation can be sped up significantly by precomputing certain values that are needed repeatedly in the training, or by using fast "updating rules" such as the Sherman–Morrison formula. However one must be careful to preserve the "total blinding" of the validation set from the training procedure, otherwise bias may result. An extreme example of accelerating crossvalidation occurs in linear regression, where the results of crossvalidation have a closedform expression known as the prediction residual error sum of squares (PRESS).
Limitations and misuse[edit]
Crossvalidation only yields meaningful results if the validation set and training set are drawn from the same population and only if human biases are controlled.
In many applications of predictive modeling, the structure of the system being studied evolves over time (i.e. it is "nonstationary"). Both of these can introduce systematic differences between the training and validation sets. For example, if a model for predicting stock values is trained on data for a certain fiveyear period, it is unrealistic to treat the subsequent fiveyear period as a draw from the same population. As another example, suppose a model is developed to predict an individual's risk for being diagnosed with a particular disease within the next year. If the model is trained using data from a study involving only a specific population group (e.g. young people or males), but is then applied to the general population, the crossvalidation results from the training set could differ greatly from the actual predictive performance.
In many applications, models also may be incorrectly specified and vary as a function of modeler biases and/or arbitrary choices. When this occurs, there may be an illusion that the system changes in external samples, whereas the reason is that the model has missed a critical predictor and/or included a confounded predictor. New evidence is that crossvalidation by itself is not very predictive of external validity, whereas a form of experimental validation known as swap sampling that does control for human bias can be much more predictive of external validity.^{[23]} As defined by this large MAQCII study across 30,000 models, swap sampling incorporates crossvalidation in the sense that predictions are tested across independent training and validation samples. Yet, models are also developed across these independent samples and by modelers who are blinded to one another. When there is a mismatch in these models developed across these swapped training and validation samples as happens quite frequently, MAQCII shows that this will be much more predictive of poor external predictive validity than traditional crossvalidation.
The reason for the success of the swapped sampling is a builtin control for human biases in model building. In addition to placing too much faith in predictions that may vary across modelers and lead to poor external validity due to these confounding modeler effects, these are some other ways that crossvalidation can be misused:
 By performing an initial analysis to identify the most informative features using the entire data set – if feature selection or model tuning is required by the modeling procedure, this must be repeated on every training set. Otherwise, predictions will certainly be upwardly biased.^{[24]} If crossvalidation is used to decide which features to use, an inner crossvalidation to carry out the feature selection on every training set must be performed.^{[25]}
 By allowing some of the training data to also be included in the test set – this can happen due to "twinning" in the data set, whereby some exactly identical or nearly identical samples are present in the data set. To some extent twinning always takes place even in perfectly independent training and validation samples. This is because some of the training sample observations will have nearly identical values of predictors as validation sample observations. And some of these will correlate with a target at better than chance levels in the same direction in both training and validation when they are actually driven by confounded predictors with poor external validity. If such a crossvalidated model is selected from a kfold set, human confirmation bias will be at work and determine that such a model has been validated. This is why traditional crossvalidation needs to be supplemented with controls for human bias and confounded model specification like swap sampling and prospective studies.
Cross validation for timeseries models[edit]
Since the order of the data is important, crossvalidation might be problematic for timeseries models. A more appropriate approach might be to use forward chaining.
However, if performance is described by a single summary statistic, it is possible that the approach described by ^{[26]} Politis and Romano as a stationary bootstrap will work. The statistic of the bootstrap needs to accept an interval of the time series and return the summary statistic on it. The call to the stationary bootstrap needs to specify an appropriate mean interval length.
Applications[edit]
Crossvalidation can be used to compare the performances of different predictive modeling procedures. For example, suppose we are interested in optical character recognition, and we are considering using either support vector machines (SVM) or knearest neighbors (KNN) to predict the true character from an image of a handwritten character. Using crossvalidation, we could objectively compare these two methods in terms of their respective fractions of misclassified characters. If we simply compared the methods based on their insample error rates, the KNN method would likely appear to perform better, since it is more flexible and hence more prone to overfitting^{[citation needed]} compared to the SVM method.
Crossvalidation can also be used in variable selection.^{[27]} Suppose we are using the expression levels of 20 proteins to predict whether a cancer patient will respond to a drug. A practical goal would be to determine which subset of the 20 features should be used to produce the best predictive model. For most modeling procedures, if we compare feature subsets using the insample error rates, the best performance will occur when all 20 features are used. However under crossvalidation, the model with the best fit will generally include only a subset of the features that are deemed truly informative.
A recent development in medical statistics is its use in metaanalysis. It forms the basis of the validation statistic, Vn which is used to test the statistical validity of metaanalysis summary estimates.^{[28]} It has also been used in a more conventional sense in metaanalysis to estimate the likely prediction error of metaanalysis results.^{[29]}
See also[edit]
Wikimedia Commons has media related to Crossvalidation (statistics). 
 Boosting (machine learning)
 Bootstrap aggregating (bagging)
 Bootstrapping (statistics)
 Model selection
 Resampling (statistics)
 Stability (learning theory)
 Validity (statistics)
Notes and references[edit]
 ^ Geisser, Seymour (1993). Predictive Inference. New York, NY: Chapman and Hall. ISBN 9780412034718.
 ^ ^{a} ^{b} Kohavi, Ron (1995). "A study of crossvalidation and bootstrap for accuracy estimation and model selection". Proceedings of the Fourteenth International Joint Conference on Artificial Intelligence. San Mateo, CA: Morgan Kaufmann. 2 (12): 1137–1143. CiteSeerX 10.1.1.48.529.
 ^ Devijver, Pierre A.; Kittler, Josef (1982). Pattern Recognition: A Statistical Approach. London, GB: PrenticeHall. ISBN 0136542360.
 ^ Galkin, Alexander (November 28, 2011). "What is the difference between test set and validation set?". Retrieved 10 October 2018.
 ^ "Newbie question: Confused about train, validation and test data!". Archived from the original on 20150314. Retrieved 20131114.CS1 maint: BOT: originalurl status unknown (link)

^ Cawley, Gavin C.; Talbot, Nicola L. C. (2010). "On Overfitting in Model Selection and Subsequent Selection Bias in Performance Evaluation" (PDF). 11. Journal of Machine Learning Research: 2079–2107. Cite journal requires
journal=
(help)  ^ Grossman, Robert; Seni, Giovanni; Elder, John; Agarwal, Nitin; Liu, Huan (2010). "Ensemble Methods in Data Mining: Improving Accuracy Through Combining Predictions". Synthesis Lectures on Data Mining and Knowledge Discovery. Morgan & Claypool. 2: 1–126. doi:10.2200/S00240ED1V01Y200912DMK002.
 ^ Trippa, Lorenzo; Waldron, Levi; Huttenhower, Curtis; Parmigiani, Giovanni (March 2015). "Bayesian nonparametric crossstudy validation of prediction methods". The Annals of Applied Statistics. 9 (1): 402–428. arXiv:1506.00474. Bibcode:2015arXiv150600474T. doi:10.1214/14AOAS798. ISSN 19326157.
 ^ Celisse, Alain (1 October 2014). "Optimal crossvalidation in density estimation with the $L^{2}$loss". The Annals of Statistics. 42 (5): 1879–1910. arXiv:0811.0802. doi:10.1214/14AOS1240. ISSN 00905364.
 ^ Molinaro, A. M.; Simon, R.; Pfeiffer, R. M. (20050801). "Prediction error estimation: a comparison of resampling methods". Bioinformatics. 21 (15): 3301–3307. doi:10.1093/bioinformatics/bti499. ISSN 13674803.
 ^ McLachlan, Geoffrey J.; Do, KimAnh; Ambroise, Christophe (2004). Analyzing microarray gene expression data. Wiley.
 ^ "Elements of Statistical Learning: data mining, inference, and prediction. 2nd Edition". web.stanford.edu. Retrieved 20190404.
 ^ Vanwinckelen, Gitte (2 October 2019). "On Estimating Model Accuracy with Repeated CrossValidation". lirias.kuleuven.
 ^ "Cross Validation". Retrieved 11 November 2012.

^ Arlot, Sylvain; Celisse, Alain (2010). "A survey of crossvalidation procedures for model selection". Statistics Surveys. 4: 40–79. arXiv:0907.4728. doi:10.1214/09SS054.
In brief, CV consists in averaging several holdout estimators of the risk corresponding to different data splits.
 ^ Dubitzky, Werner; Granzow, Martin; Berrar, Daniel (2007). Fundamentals of data mining in genomics and proteomics. Springer Science & Business Media. p. 178.
 ^ Kuhn, Max; Johnson, Kjell (2013). Applied Predictive Modeling. New York, NY: Springer New York. doi:10.1007/9781461468493. ISBN 9781461468486.
 ^ "Nested versus nonnested crossvalidation". Retrieved 19 February 2019.
 ^ ^{a} ^{b} ^{c} Hoornweg, Victor (2018). Science: Under Submission. Hoornweg Press. ISBN 9789082918809.
 ^ Christensen, Ronald (May 21, 2015). "Thoughts on prediction and crossvalidation" (PDF). Department of Mathematics and Statistics University of New Mexico. Retrieved May 31, 2017.
 ^ ^{a} ^{b} Efron, Bradley; Tibshirani, Robert (1997). "Improvements on crossvalidation: The .632 + Bootstrap Method". Journal of the American Statistical Association. 92 (438): 548–560. doi:10.2307/2965703. JSTOR 2965703. MR 1467848.
 ^ Stone, Mervyn (1977). "Asymptotics for and against crossvalidation". Biometrika. 64 (1): 29–35. doi:10.1093/biomet/64.1.29. JSTOR 2335766. MR 0474601.
 ^ Consortium, MAQC (2010). "The Microarray Quality Control (MAQC)II study of common practices for the development and validation of microarraybased predictive models". Nature Biotechnology. London: Nature Publishing Group. 28 (8): 827–838. doi:10.1038/nbt.1665. PMC 3315840. PMID 20676074.
 ^ Bermingham, Mairead L.; PongWong, Ricardo; Spiliopoulou, Athina; Hayward, Caroline; Rudan, Igor; Campbell, Harry; Wright, Alan F.; Wilson, James F.; Agakov, Felix; Navarro, Pau; Haley, Chris S. (2015). "Application of highdimensional feature selection: evaluation for genomic prediction in man". Sci. Rep. 5: 10312. Bibcode:2015NatSR...510312B. doi:10.1038/srep10312. PMC 4437376.
 ^ Varma, Sudhir; Simon, Richard (2006). "Bias in error estimation when using crossvalidation for model selection". BMC Bioinformatics. 7: 91. doi:10.1186/14712105791. PMC 1397873. PMID 16504092.
 ^ Politis, Dimitris N.; Romano, Joseph P. (1994). "The Stationary Bootstrap". Journal of the American Statistical Association. 89 (428): 1303–1313. doi:10.1080/01621459.1994.10476870.
 ^ Picard, Richard; Cook, Dennis (1984). "CrossValidation of Regression Models". Journal of the American Statistical Association. 79 (387): 575–583. doi:10.2307/2288403. JSTOR 2288403.
 ^ Willis BH, Riley RD (2017). "Measuring the statistical validity of summary metaanalysis and metaregression results for use in clinical practice". Statistics in Medicine. 36 (21): 3283–3301. doi:10.1002/sim.7372. PMC 5575530. PMID 28620945.
 ^ Riley RD, Ahmed I, Debray TP, Willis BH, Noordzij P, Higgins JP, Deeks JJ (2015). "Summarising and validating test accuracy results across multiple studies for use in clinical practice". Statistics in Medicine. 34 (13): 2081–2103. doi:10.1002/sim.6471. PMC 4973708. PMID 25800943.