{'fraction_non_alphanumeric': 0.035170688032323975, 'fraction_numerical': 0.014715672995247824, 'mean_word_length': 4.941080196399345, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 2, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
NITPICK: peak identification for mass spectrometry data

Background The reliable extraction of features from mass spectra is a fundamental step in the automated analysis of proteomic mass spectrometry (MS) experiments. Results This contribution proposes a sparse template regression approach to peak picking called NITPICK. NITPICK is a Non-greedy, Iterative Template-based peak PICKer that deconvolves complex overlapping isotope distributions in multicomponent mass spectra. NITPICK is based on fractional averagine, a novel extension to Senko's well-known averagine model, and on a modified version of sparse, non-negative least angle regression, for which a suitable, statistically motivated early stopping criterion has been derived. The strength of NITPICK is the deconvolution of overlapping mixture mass spectra. Conclusion Extensive comparative evaluation has been carried out and results are provided for simulated and real-world data sets. NITPICK outperforms pepex, to date the only alternate, publicly available, non-greedy feature extraction routine. NITPICK is available as software package for the R programming language and can be downloaded from .


Background
The reliable extraction of proteomic features from complex biological mixtures is of utmost interest for unraveling the intricate biomolecular interplay at the heart of many systems biology research questions. In this context, mass spectrometry (MS) has become a key technology which provides peptide and protein identification, modification characterization and quantification capabilities. In contrast to gene expression microarray technologies, MS analysis yields a direct view on the whole set of proteins (the proteome) present in the system under investigation and can thus contribute to a richer picture of protein interaction, real-time dynamics and their regulation [1]. MS contributes to clinical research and the diagnosis process [2], it is used to detect, grade and characterize cancer diseases [3], it serves as a general purpose tool for microorganism characterization [4,5] and provides sensitive and specific means for pharmaceutical quality control.
MS experiments typically contain tens to thousands of spectra, each of which holds intensity information for Open Access tens to hundreds of thousands of mass channels. These data stem from a set of different mass analysis technologies, combining chemical separation procedures (chromatography), ionization methods (electrospray ionization, matrix-assisted laser desorption/ionization) and mass analyzers (time-of-flight, quadrupole, ion cyclotron motion). Despite physicochemical preprocessing and the availability of high mass resolution instruments, spectra which stem from complex biochemical mixtures (e.g. cell lysate, blood or serum) frequently exhibit overlapping isotope distributions of independent molecular species. Moreover, in many quantitative MS approaches, these mixtures are present by design and their manual unmixing, quantification and interpretation is tedious or unfeasible.
As a consequence, the automated analysis and interpretation of multicomponent mass spectra is highly desirable. An (incomplete) set of challenges for MS feature extraction includes the sheer data set sizes, mixtures of isotope patterns, the presence of multiple charge states, chemical and detector noise, speciesdependent ionization efficiencies, chemical reproducibility and deviations from detector linearity. Among all requirements that derive from these challenges, it is important to emphasize the crucial nature of the feature extraction step: as all subsequent analysis steps rely on the set of extracted features, meaningful biological conclusions are highly dependent on the adequacy and reliability of the feature extraction method.
Apart from few special alternate approaches [6,7], all automated methods for feature extraction from isotoperesolved mass spectra compare the observed (experimental) spectral pattern to a set of precalculated theoretical isotope patterns. The calculation of isotope patterns is based on the estimation of average stoichiometries for a particular molecular mass (averagine [8] and related methods [9]) or on relative isotope abundance estimation [10] or on protein database-driven mean isotope distribution calculation [11]. The computation of isotope patterns is based on efficient implementations [12][13][14] of Yergey's original polynomial method [15,16].
Comparison of theoretical and experimental isotope distributions is typically accomplished based on subtractive fitting and peak selection algorithms, attempting to sequentially detect the dominant components in a mixture spectrum. These subset selection methods attempt to determine a small set of basis functions capable of approximating the observed signal well. Facing the infeasibility of an exhaustive search over all possible subsets of explanatory basis functions, they apply greedy search strategies. Here, "greediness" refers to the fact that these approaches consistently overestimate individual feature contributions and are incapable of excluding a basis function once it has been included in the active set. Hence, although providing sparseness, they are not globally optimal. In the context of mixture modeling of mass spectra, these approaches amount to sequential isotope distribution template matching procedures [6,[8][9][10][11][17][18][19][20][21][22]. Fitting is carried out via c 2 distances [8,20], least squares [9][10][11]17,[21][22][23], weighted least squares [19], or cross-correlation [18,24]. The automatic determination of the charge state associated with an isotope pattern present in an experimental spectrum is based on cross-correlation [19,25] or on dot products in Fourier space [25,26], exploiting the shift theorem of the Fourier transform. There are only few [27] non-greedy feature selection algorithms and mixture model approaches for MS data [28][29][30][31]. Among these, Matching [28] and Roussis' method [29] rely on manual preselection of contribution candidates. Sparse nongreedy procedures include pepex [30] and Du's method [31]. The pepex approach is suitable for single charge data and is based on a non-negative sparse regression scheme, with an approximate L 0 -norm constraint. Du and Angeletti [31] perform data reduction prior to feature extraction and apply a sparseness-promoting variable selection scheme [32]. With the exception of Du's [31] and Kaur's [19] methods, none of the mentioned mixture model approaches provide support for the detection of a sparse set of a priori unknown peptide peaks under an arbitrary set of charge states. Du's method [31] and NITPICK overcome Kaur's greedy iterative weighted least squares fitting approach. In contrast to [31], NITPICK does not rely on a heuristic parameterization and is instead based on statistical model selection, making use of an algorithmically more efficient non-greedy sequential feature selection procedure with a statistically motivated termination criterion. NITPICK was designed to support the calculation of accurate monoisotopic peak lists from raw mass spectra and was specifically tailored to cases where the raw spectra stem from unknown, possibly overlapping experimental isotope patterns of multiple charge states.
The methods section details the mixture modeling approach, fractional averagine for improved stoichiometry estimation and data fitting, and our main contribution, a computationally efficient method for improved non-negative feature selection and the corresponding statistical complexity estimation approach in conjunction with the derivation of a lower bound for early termination. Comparative results on simulated and realworld data sets are given in the results and consequently discussed. Eventually, we conclude and offer perspectives. Derivations of the formulas used in the main article are available in the appendix.

Methods
The NITPICK algorithm (cf. figure 1) models an observed mixture spectrum as a linear combination of theoretical isotope distribution patterns. Statistically, finding a sensible parameterization of this mixture model amounts to a constrained regression problem in which we seek to minimize the raw signal reconstruction error in a leastsquares sense while adhering to a set of additional constraints. Such an approach requires reliable underlying isotope patterns, and we propose an improvement for the well-known averagine model to achieve this goal. We subsequently introduce NITPICK's iterative feature selection procedure, which employs a novel, non-greedy isotope distribution selection method and is based on a statistically motivated termination criterion, attempting to eliminate premature or late iteration termination.

Mixture model
We assume that observed spectra are available in a discrete (not necessarily equispaced) mass binning scheme defined by a mass vector m= (m 1 , m 2 , ..., m N ) T and represent a raw multicomponent mass spectrum by a vector s of size N × 1, where s i corresponds to the abundance observed in the ith mass bin m i . In practical applications, the vector s may also result from preprocessing steps such as relevant region detection [19] and may thus represent only a part of a complete raw spectrum. The basic assumption behind the mixture model approach is that s be a linear combination of mass spectrum abundances of K pure components j i , Each of the concentration coefficients c i , i = 1, ..., K is associated with a column j i of the N × K model matrix Φ. We regard these columns as basis functions and their elements j ji correspond to the mass spectrum abundance expected in the jth mass bin m j of the ith pure component j i .
For the estimation of the concentration vector c, the model matrix Φ has to be available, and in general this is not the case. One hence resorts to approximating the basis functions by a large set of theoretical isotope distributions (i.e. isotope abundance patterns) densely spread over the prespecified mass/charge binning scheme. Effectively, this recasts the original peak picking task into the framework of a feature (i.e. basis function) selection problem.

Model matrix calculation
Given an elemental stoichiometry, the corresponding theoretical isotope distribution is well-defined and can easily be calculated [12][13][14][15]. Hence, if a prespecified set of stoichiometries of potential pure components is available, the calculation of the respective set of theoretical isotope distributions (including chemical modifications and multiple charge states) is straightforward. These isotope distributions are subsequently convolved with instrument-specific, possibly mass-dependent peak shape functions, yielding the basis functions j i .

Fractional averagine
In many practical applications prior knowledge about potential components is not at hand. Thus, one needs to resort to expected average stoichiometry estimates as a best-effort approximation. In this case, the quality of the feature selection procedure is highly dependent on the quality of the stoichiometry model. We therefore extended the widely used averagine approach [8] to amend its discrete and discontinuous nature, gaining models without mass errors and improved true isotope distribution reconstruction properties. Fractional averagine provides a real-valued element stoichiometry r = (r 1 ,...,r 5 ) T according to the mapping f: R R 5 between a mass value and the number of element atoms in an averagine (H 7.75833 C 4.9384 N 1.35777 O 1.4773 S 0.0417 ) molecule. The calculation of the theoretical isotope distribution of r is based on the observation that isotope abundances follow a multinomial distribution [33], and that fractional numbers of trials in a multinomial can be modeled as linear interpolation between the probability functions of the multinomials parameterized with the surrounding integers (see appendix A). For computational ease, calculations are carried out in the realm of the corresponding moment generating function (MGF) [34] of the multinomial probability mass function. For the ith stoichiometry element, the MGF given r i can be factorized according to where p l is the probability of occurrence of the lth and t = (t 1 , ..., t k ) T is the corresponding variable of the MGF. By rearrangement of the MGFs of all elements, it is possible to separate integer and real-valued contributions, yielding the common averagine modelr r = ( r 1 , r 2 , ..., r 5 ) T for the integers and the fractional averagine correction r r = (r 1 -r 1 , r 2 -r 2 , ..., r 5r 5 ) T for the remaining fractional masses. The theoretical isotope distribution for r i is given by the linear combination of a peak of intensity one at mass zero and the theoretical isotope distribution of the ith averagine element, weighted by 1 -r i and r i , respectively. Thus, efficient calculation of the theoretical isotope distribution of the stoichiometryr r is carried out based on the Mercury7 algorithm [14], and the theoretical isotope distribution for the fractional stoichiometry r is subsequently obtained with five additional convolution steps.

Basis function selection
Given the set of basis functions Φ = [j 1 j 2 ... j k ], basis function selection and subsequent determination of the contribution coefficients c i provides a solution to eq. (1). Thus, as the modeling parameters and, in particular, the monoisotopic masses for all basis function are known, one can determine which isotope distributions are present and in what abundance (assuming ∑ k j ki = 1).
In practice, basis functions are calculated for each possible monoisotopic mass and each expected charge state, yielding model matrices Φ with KN (in the case of one basis function per mass/charge bin and charge, we have K = n Z N, where n Z corresponds to the number of charge states observable in the experiment; hence, for n Z > 1, there exists an infinite number of solutions for eq. (1)). This is a problem intrinsic to the proposed mixture modeling approach and has been observed previously [23,28,30]. The least absolute shrinkage and selection operator (LASSO) [32] enjoys favorable properties of regularization and subset selection. Because the LASSO is capable of shrinking coefficients to exactly zero, it offers a non-greedy way to gain sparse models. The LASSO solutionĉ for equation (1) is given bŷ where t ≥ 0 is a user-defined tuning parameter [31,32]. Mass spectra intensities s i , basis function values j ji , and basis function contributions c k are strictly non-negative, thus adding a non-negativity constraint to the solution space ofĉ , yieldinĝ For fixed t, this is a quadratic programming problem with linear inequality constraints which can be solved by an active set algorithm, sequentially introducing the inequality constraints and seeking a feasible solution satisfying the Kuhn-Tucker conditions [32,35,36]. Equation (4) where the parameter t is related to the Lagrangian multiplier l which determines the number of free parameters df(l) in the linear model [32,[36][37][38].
Common procedures for the optimal selection of l or df(l) are based on the minimization of the prediction error. This involves estimation of training optimism via C p -statistics, the Akaike Information Criterion (AIC), or the Bayesian Information Criterion (BIC) [37]. Alternatively, direct estimation of prediction error can be carried out via cross-validation or generalized cross-validation (GCV) [37]. All these methods require the LASSO tracê defines the set of LASSO regularization parameters for which the prediction error is calculated. In general, the calculation of the LASSO trace is computationally intensive and it is not clear how the elements of  should be selected [36]. Least angle regression (LARS) [39] is an algorithmically different approach to variable selection which can be modified such that the LARS algorithm implements the non-negative LASSO from equation (4). The LASSOmodified LARS is a constructive active set procedure which constructs the LASSO regularization path in a stepwise manner. Denote by  (l) the set of indices i {1. ..., K} of those j i which are in the active set for a particular choice of l. Starting from l = ∞ and letting l 0, the algorithm computes non-negative LASSO solutions for all l for which the active set changes, thus implicitly defining  . The LASSO-modified LARS guarantees  (l j ) ≠  (l j+1 ), but it allows for the deletion of previously selected basis functions, and hence |  (l j ) | need not increase monotonically for increasing j. Basis functions can be required to enter the active set in their predefined directions [39] which allows the implementation of a non-negativity constraint. Necessary matrix inversions are constrained and can be implemented as iterative updates, thus the procedure is computationally efficient.

Complexity estimation
It is desirable to terminate active set updates as soon as the basis functions in the active set are able to explain the observed data sufficiently well, i.e. until the increase in explanatory power does not justify the increase in model complexity anymore. We now describe a modification to the non-negative LASSO-modified LARS, which enables us to sequentially build a BIC trace along the LASSO regularization path and to identify minima along this trace. Upon termination, the proposed procedure returns the estimateĉ  and the set  0 of active basis functions.

BIC measure
The LARS C p -type risk reestimation formula [39] for optimal selection of l does not hold under the nonnegative LASSO modification. Instead, we recalculate a BIC measure in each LARS iteration [40]. For the calculation of the unbiased training error MSE(l) in eq. (5) we require an additional non-negative least squares fit The noise variance s 2 in eq. (5) is estimated as the mean residual sum of squares of a low-bias non-negative least squares estimate [37].

Estimation of df(l)
The calculation of BIC(l) in eq.(5) requires an estimate for the degrees of freedom df(l), which can be obtained via the generalized degrees of freedom (GDF) [38]. The GDF of an NN-LASSO-modified LARS model based on an active set  (l) are given by Because the coefficientsˆ( ) Setting the derivative to zero, we obtain Hence, given an active set  (l), the generalized degrees of freedom from eq. (7) can be written as which is monotonously increasing for decreasing l (see appendix B for a proof).

Optimal termination
The minimal possible training error of the model is attained when all variables are in the active set, in which case the respective coefficientsĉ q are given byĉ q = arg min c ||s -Fc|| 2 subject to c i ≥ 0, and the corresponding error is MSE = − Thus, a lower bound for BIC(l) is given by (see appendix C for a proof). In general, BIC(l) will have several minima for increasing values of GDF(l), hence we track the minimum BIC(l min ) through the NN-LASSO-modified LARS cycles and accept l min as a minimizer as soon as the lower bound BIC min (l) of a subsequent LARS step exceeds the current best estimate BIC(l min ), i.e. BIC(l min ) < BIC min (l) (see figure 2).

Regression on selected models
The sum constraint in equation (4) is ultimately responsible for the sparseness property of the LASSO. Its regularizing effect is similar to the one of the regularization term found in ridge regression, especially with respect to the fact that all LASSO estimatesĉ i , i = 1, ..., K are subject to shrinkage [32,37] and represent biased versions of the least squares estimates. Given an active set  , the shrinkage bias on theĉ i can effectively be removed by introducing a subsequent non-negative least squares regression step after the basis functions have been selected by the LASSO procedure [32]. This also holds true for the NN-LASSO-modified LARS procedure, and the corresponding unbiased quantification estimateĉ  q is given by equation (6) with  (l) =  .

Postprocessing
The estimateĉ is subject to modeling errors and these shortcomings lead to suboptimal NN-LASSO-modified LARS estimates and active sets. In particular, the estimation depends on the match between the observed and theoretical peak shape function. Especially in high mass resolution experiments, one can frequently observe spurious peak detections in bins directly adjacent to monoisotopic mass bins of true peaks [30]. A possible remedy is a local maximum detection implemented as a postprocessing filter (·) applied to the active basis function index set  : where n G k j defines an m/zneighborhood of size G around each peak and b j is the mass/charge bin index of the monoisotopic mass m 0 of the jth theoretical isotope distribution j j . If   ≠ ′ ,

Stoichiometry models
The fractional averagine stoichiometry model was compared against the classical averagine model based on the analysis of their respective approximation errors using simulated theoretical peptide isotope distributions.

Data Set
All UniProt (version 51.4.) [41] human proteins were subjected to in silico tryptic digestion. For each of the R digestion product peptides P r r , { ,..., ∈ 1 R} , exact element stoichiometries r r r x and exact theoretical isotope NITPICK workflow overview. Raw spectrum preprocessing, relevant region detection, region-wise peak picking, merging of detected peaks and peak list postprocessing. At the heart of the method lies an iterative feature selection procedurecontrolled by a statistical termination criterion, as illustrated by the large box in the center. As a tightlyinterconnected prerequisite to the main workflow, the column on the left depicts the steps required for thecalculation of the regression model matrix. Numbers in parentheses give the manuscript sections in whichthe specific steps are detailed.
distributions d r x were calculated. Peptides with monoisotopic masses above m/z 5000 were discarded.

Comparison of deviations
Classical and fractional averagine were used to estimate approximate element stoichiometriesr r r and r r r , respectively, for all peptides  r in the data set. Based onr r r and r r r , the corresponding theoretical isotope distribution intensity vectorsd r and d r were calculated. Figure 3 shows the cumulative distribution of the squared differences between the classical averagine and the true theoretical isotope distribution intensity vectors

Peak picking
For peak picking/feature extraction performance evaluation, we determine representative peak picking statistics: we calculate accuracy, sensitivity, specificity, and positive and negative predictive values on simulation data. Further, and in contrast to previous contributions, we explicitly perform manual validation on a real-world data set.

Data sets
Simulation data sets For the simulation, all UniProt (version 51.4.) [41] human protein sequences were subjected to in silico tryptic digestion. Simulation sets were generated by random drawing of digestion product peptides and intensities. To ensure a fair comparison with the pepex procedure (which was selected for benchmarking as the only publicly available procedure implementing nongreedy feature extraction) which is limited to singly charged data sets, all simulated peptide were endowed with a single charge. Mercury7 [14] was used for the calculation of the respective theoretical isotopic distributions. After convolution with an m/z-dependent Gaussian aperture function [42], intensity-weighted linear combinations of peptide spectra were calculated and a Poisson noise model (see appendix D) was applied to obtain spectra of different signal to noise (SNR) ratios. Simulations were performed in the densely populated m/z 500-700 range (see Additional file 1 for the data sets).

Real-world data set
Experiments on real-world data were performed using Bovine Serum Albumin (BSA) LC/(ESI-)MS calibration data. The data set was acquired on a QSTAR XL mass spectrometer (Applied Biosystems/MDS Sciex) equipped with microsale capillary HPLC system (Famos Autosampler, LC packings, Agilent 1100 HPLC pump). A mixture spectrum with many overlapping peaks was obtained by integration of the LC/MS data set over the retention time domain (see Additional files 2 and 3). Peak identification was carried out in the m/z 500-700 range and peak

Performance estimation
We characterize peak picking performance based on a set of measures from statistical test theory, all of which depend on the availability of the numbers of true positives (TP), true negatives (TN), false positives (FP) and false negatives (FN).
Ground truth is based on knowledge of the complete set of peptide signals present in a mass spectrum. For simulated data sets, this information is available. In real-world experiments, the definition of ground truth is complicated by sample complexity, stochastic sample modification, nonpeptidic components and limited dynamic range. As a consequence, TNs, FNs and the overall number of true peaks are not available for real-world data, limiting the available statistical measures to positive predictive values and the ratio of true positives (sensitivity ratios).
Nevertheless, we can determine the number of TPs and FPs in both cases: we check whether a detected peak really exists and if it has been assigned its correct monoisotopic mass m 0 and charge z. If so, it is counted as true positive (TP) or, otherwise, as false positive (FP).

Simulation data
As the complete set of simulated peaks is known, the remaining set of undetected peaks can be determined and its members are counted as false negatives (FN). With the true number of positives and negatives available the calculation of the number of true negatives (TN) is straightforward, thus enabling the use of related statistical test error measures for performance characterization:

Real-world data
Resorting to LC/MS data and creating a semi-artificial data set by integration over the retention time domain was motivated by the fact that this approach yields a data set accessible to human manual validation. With LC resolution power available to the human expert (and resorting to comparatively simple mixtures), all peaks detected in the integrated mixture can still be manually verified. Exemplary peak picking results are illustrated below.

Pepex
We chose to compare NITPICK to a conceptually similar, model-based approach called pepex [30]. In contrast to model-free approaches and in accordance with NITPICK, pepex models observed spectra based on a linear mixture model, which is augmented by a complexity constraint. It uses the averagine model to describe unknown features and is capable of terminating its feature selection routine after a sufficient number of basis functions has been selected. However, as the publicly available implementation of the pepex approach is limited to charge state z = 1 data sets, NITPICK comparison against pepex was limited to the simulated data set.
For the analysis, the pepex algorithm was tailored to the problem at hand: its parameters were heavily optimized to maximize peak picking performance on the simulation data set. As a consequence, the reported results underestimate the pepex generalization error and overestimate its performance (see Additional file 4). For NITPICK, no specific parameter optimization was carried out, postprocessing was kept to a minimum (G = 3), and the reported results are representative (see Additional file 5).

MarkerView
We also compared NITPICK's ability to extract peak information from a retention time integrated mixture spectrum against the proprietary MarkerView application (Applied Biosystems/MDS Sciex, Concord, Canada) version 1.2, which includes an LC/MS peak picking algorithm. In contrast to NITPICK, MarkerView was provided with the original LC/MS data set and thus had retention time information available. Peak picking was carried out in the m/z 400-1400 range and detected peaks were manually validated (see Additional files 6 and 7).

Stoichiometry models
In comparison (see figure 3, classical averagine in dashed black, fractional averagine in solid red), Senko's classical averagine [25] features a larger number of very small deviances from the truth than fractional averagine. This is caused by the rounding to integers property of the classical approach, yielding exact models more often. At the same time, the deviance distribution of the fractional averagine model has a significantly lighter tail, i.e. the model generates significantly less stoichiometries whose theoretical isotope distributions have large deviations. The cumulative distribution based on the fractional averagine model approaches 1 more quickly, and its use yields an overall decrease in theoretical isotope distribution deviations. This finding is supported by the corresponding one-sided non-parametric Mann-Whitney test (p < 2.6 × 10 -11 ). Because the overall impact on the peak picking performance depends on the squared mean error magnitude (7.6 × 10 -4 for classical averagine, 6.3 × 10 -4 for fractional averagine, corresponding to a 17% decrease for fractional averagine), fractional averagine clearly is the preferable model.

Peak picking
Simulation data set Figure 4 shows the results for the peak detection performance analysis. As expected, ACC, NPV and PPV improve with increasing SNR. Postprocessing causes a decrease in NPV and an increase in PPV for all SNR levels as the removal of spurious peaks decreases FP but also, erroneously, increases FN. The ACC plot (top left) illustrates the fact that NITPICK is successful at simultaneously maximizing PPV and NPV. Postprocessing can then be used to trade specificity for sensitivity as supported by the sensitivity-specificity trace in figure 4 (bottom right). Here, each dot marks sensitivity and specificity of a given NITPICK postprocessing parameterization. Lines connect points of different SNRs. As expected, the introduction of a postprocessing step increases specificity and decreases sensitivity. Further analysis of FNs in the simulated data reveals that false negatives are predominantly due to low-intensity components in complex mixtures (data not shown).

Comparative results
In comparison with pepex, NITPICK exhibits better results with respect to all statistical measures in figure 4. It is especially obvious that pepex suffers from a severe increase in false positives (FPs) for very low SNR situations, yielding significant decreases in accuracy (ACC) and specificity (SP). For PPV, although the pepex approach outperforms NITPICK when no postprocessing is applied, it is inferior to the full NITPICK algorithm with simple spurious peak removal corresponding to eq. (12). With respect to sensitivity (SE) and specificity (SP), figure 4 reveals constant high (above 0.99) and superior specificity values for NITPICK at greatly increased sensitivity. Thus one can conclude that the NITPICK algorithm is more sensitive than pepex and, at the same time, provides picked peaks with higher confidence.

Real-world data set
We give peak picking illustrations for the mass ranges m/z 507-525 (with a zoom on m/z 518-525), m/z 636-646, m/z 695-725 and m/z 775-782, detailing positive and negative peak picking performance aspects. In the m/z 507-525 mass range (figure 5), all picked peaks could be verified, including the monoisotopic masses of the mixture distribution with components located at m/z 523.23 (z=3) and m/z 523.82 (z=5). Upon re-examination of the raw data, we detected a missed low-intensity peak at m/z 515.76. Figure 6 zooms onto two cases of overlapping isotope distributions in the m/z 518-525 mass range. At m/z 518.22 and m/z 519.11 NITPICK resolves two distinct monoisotopic masses, in spite of their unfavorable mass distance. Although the second isotope peak of the doubly charged ion with monoisotopic mass m/z 518.22 exhibits a heavy overlap with the monoisotopic peak of the ion at m/z 519.11, NITPICK is still able to correctly detect the monoisotopic peaks of the two isotope distributions. NITPICK also separates two isotope distributions located at m/z 523.23 (z=3) and m/z 523.82 (z=4). The detection of the monoisotopic mass at m/z 523.82 is particularly non-trivial because of its heavy overlap with an isotope peak of the isotope distribution located at m/z 523.23 and also because the detected monoisotopic mass peak at m/z 523.82 is not the most abundant peak within its isotope distribution.
In the m/z 636-646 mass range (figure 7) we observe an example of incomplete unmixing: the isotope distribution (z=3) with monoisotopic mass located at m/z 636.29 heavily overlaps the distribution (z=3) located at m/z 636.64 (left triangle marker). The overlap proves inseparable and the monoisotopic mass of the second distribution is wrongly detected at m/z 636.96. Further, due to conservative noise level/complexity estimation, the isotope distribution located at m/z 642.33 (right triangle marker) is not detected. Note that in both of the correctly detected distributions located at m/z 636.29 and m/z 639.65, the monoisotopic mass peak does not correspond to the most prominent peak.
In the m/z 695-725 mass range (figure 8), with one exception, all detected peaks could be verified. The  In the m/z 775-782 range (figure 9), the separation of two heavily overlapping isotope distribution clearly illustrates the benefits of NITPICK's intensity modelbased approach to the peak picking/feature extraction problem: the second isotope peak of the isotope distribution located at m/z 779.32 (z=2) and the monoisotopic peak of the distribution located at m/z 780.35 (z=2) overlap completely and can only be distinguished by taking intensity information into account.
Overall, the results obtained on real-world data are in agreement with simulation results: after manual validation of 192 peaks detected in the real-world dataset, we observe 127 true positives, yielding a positive predictive value of PPV = 66.15%.

Comparison with MarkerView
On the BSA data set, MarkerView detected 388 peaks, for 96 (24.7%) of which charge state information was available. Peaks without charge state assignment were counted as true peaks if their detected mass/charge ratio was correct. This resulted in 205 true positives for 82 (40.0%) of which charge state information was available.   As expected, with retention time information available, MarkerView manages to detect a significantly larger number of peaks. Surprisingly, though, retention time information did not contribute to an increased PPV. The partial lack of charge state information also caused the performance interpretation to favor MarkerView: for peaks with correct mass/charge ratio, we assumed completely error-free charge state assignments, which is unlikely to hold true in reality. In contrast, in absence of retention time information, NITPICK delivered charge state information for each and every peak and peaks were counted as true positives if and only if their assigned charge state was correct. MarkerView's PPV and SER are subject to overestimation, whereas NITPICK's PPV is not. Even under this pro-MarkerView bias, if joint maximization of PPV and sensitivity is desired, NITPICK arguably proved competitive with MarkerView: despite the 1.6-fold increase in sensitivity, only slightly more than half of the peaks reported by MarkerView are true positives.
Analysis CPU time on the real-world spectrum was 114s on a 2 GHz AMD Opteron machine. Measurements are based on native, interpreted R code. Preliminary tests with an in-house C++ implementation (to be published elsewhere) yielded a speed increase by a factor of ≈ 20.

Conclusions
We present NITPICK, an iterative, non-greedy, globally optimal mixture modeling approach for feature extraction from multicomponent mass spectra. The calculation of the set of explanatory theoretical isotope distributions is based on fractional averagine, a mass error-free extension to the well-known averagine [8] model. Subsequent feature selection is driven by a  Observed (top) and reconstructed (bottom) mass spectrum in the m/z 775-782 range. The separation of two heavily overlapping isotope distribution clearly illustrates the benefits of NITPICK's intensity model-based approach to the peak picking/feature extraction problem: the second isotope peak ofthe isotope distribution located at m/z 779.32 (charge 2) and the monoisotopic peak of the distributionlocated at m/z 780.35 (charge 2) are exactly superimposed and can only be distinguished by takingintensity information into account. BMC Bioinformatics 2008, 9:355 http://www.biomedcentral.com/1471-2105/9/355 modified least angle regression [8] algorithm for which we derived a suitable, statistically motivated early stopping criterion. Experiments show that NITPICK is able to unmix and deconvolve complex mixture mass spectra.
The algorithm was thoroughly evaluated on simulated and real-world data sets and was found to perform better than a conceptually similar algorithm. NITPICK was even found to deliver competitive results when compared against a vendor-supplied algorithm which, in contrast to NITPICK, had retention time resolution available.
We would like to note that although the analysis at hand was confined to a proteomics data set, the application of the proposed methodology is in no way limited to this type of data and can easily be adapted to similar problems outside the field of proteomics.
NITPICK is available as software package for the R programming language and can be downloaded from http://hci.iwr.uni-heidelberg.de/mip/proteomics/.

Perspectives
The constrained least squares regression model in equation (3) implicitly assumes Gaussian noise on the observed spectra. Especially with low-intensity time-offlight spectra the Gaussian approximation is crude, yielding suboptimal estimates. The incorporation of a data type-and intensity-dependent procedure pursuing a suitable Poisson regression approach [36] in appropriate cases could improve on this shortcoming.
The non-negative least squares step in equation (6) assumes error-free basis functions j i . Although fractional averagine improves over the classical averagine model, this assumption is still violated. Possible remedies include direct intensity estimation techniques [43,44] and enhanced sparse feature selection methodology which allows for errors in explanatory variables. Alternatively, extended stoichiometry models could provide problem-tailored basis functions if model bias is not an issue.
For charge states z < 3 and mass ranges m/z d 1400, there exist so-called forbidden regions [45] within the mass spectrum, i.e. mass ranges which are inaccessible to peptides (including modifications). Such information has been reported to be suitable as a preprocessing filter [31].
Further computational efficiency could be achieved by a complexity-driven hierarchical estimation approach, resorting to subtractive feature extraction for simple signals and to the full mixture modeling for complex samples only.

Appendix
A Computation of fractional averagine For the computation of the isotopic distribution of fractional averagine, we build on the fact that the distribution of the isotopes of an element follows a multinomial [33]. The multinomial is discrete, hence for fractional counts of events we can interpolate between the two adjacent integer multinomials for each element such that ,..., with c = min j N(j ≥ c), c = max j N(j ≤ c) and X i representing the number of times the ith isotope of an element occurs. Under the (reasonable) assumption of independence of the atomic distributions of the elements, the resulting joint distribution for a molecule follows from the multiplication of the distributions of its elements.
By changing the order of multiplication and separating the highest possible integer number from the remaining fractional numbers, the calculation of fractional averagine can be related to the Mercury7 algorithm [14], yielding a highly efficient calculation scheme (see eq. (2)). For the convolution of the Mercury integer results and the fractionals we follow [46]: Let g p (i) represent the ith element of the probability vector of the first and f p (j) the jth element of the second distribution, then can be used to compute h p (k), the kth element of the new vector of probabilities for the joint distribution. Similarly, the corresponding mass vector h m can be computed using the probability vectors g p and f p and the corresponding mass vectors g m and f m using BMC Bioinformatics 2008, 9:355 http://www.biomedcentral.com/1471-2105/9/355 B Proof of the monotony of the GDF for the non-negative lasso As long as a given set F F ( ) l is valid, it can be easily shown that the GDF are monotonous in l. Starting with the GDF(l) of equation (10), To show that the GDF are monotonously increasing for decreasing values of l, it suffices to analyze the following part of the formula, where e i denotes the ith canonical unit vector of length N and I ee N ii is the identity matrix of size N.
is the inverse of a covariance matrix and, thus, positive-semidefinite, and l is by definition always greater or equal 0. Thus, the second part of equation (16) is monotone with regard to l and therefore the GDFs are monotone as long as a given active set is valid.
It remains to be shown that changes of F F ( ) l do not influence the monotony, so it needs to be shown that neither the addition of j j to the set F F ( ) l nor the removal of j k from F F ( ) l lead to a decrease of cov(s, F F   ( ) ( ) l l c q ) as given in (10). A formal proof is given further below, nevertheless, this can also be argued intuitively.
In the non-negative LARS implementation as described above and in [39], a variable j j will be added to the active set f l ( ) only if it is positively correlated with the remaining residuals, i. e. if cov , This obviously leads to an increase of cov (s, Thus, as long as changes of the set F F ( ) l appear one at a time (which is ensured by the active set implementation), they do not influence the monotonous character of the estimate of the degrees of freedom.
More formally, when a variable j j is added to the current set of variables F F is strictly positive by definition and gives the magnitude of the change.ˆ(ˆ) is the vector of the current correlation and In addition, We need to show that cov , cov , It is also known from the idea of the non-negative lasso that all variables in X A are positively correlated with the remaining residuals, so

≥ ( )
Using this result, This is always fulfilled for the non-negative lasso as it is the constraint on its initial optimization problem. The case of the removal of j k from F F ( ) l can be argued almost identically with the only difference being that now which is also always positive and thus can be dropped from the resulting inequality in exactly the same fashion asĝ could be dropped for the case of the addition of a variable. Consequently, changes in F F ( ) l do not change the monotony of the GDF estimate.
C Lower bound properties of BIC min BIC min is a lower bound for BIC, if 8k ≥ i which is always fulfilled because MSE ≤ MSE(l i ) and df (l i ) ≤ df (l k ) for i ≤ k and N ≥ 1, s e 2 > 0.

D SNR definition for simulated spectra
Given the undistorted simulated signal s, the effect of Poisson noise is simulated with s i v i , where v i is drawn from a Poisson distribution with mean ks i + 1. The signal-to-noise ratio (SNR) thus depends on the parameter k. In order to determine k for a selected set of SNR values, we consider the definition