Email updates

Keep up to date with the latest news and content from BMC Bioinformatics and BioMed Central.

Open Access Highly Accessed Methodology article

NITPICK: peak identification for mass spectrometry data

Bernhard Y Renard12, Marc Kirchner12, Hanno Steen3, Judith AJ Steen4 and Fred A Hamprecht12*

Author Affiliations

1 Interdisciplinary Center for Scientific Computing, University of Heidelberg, Heidelberg, Germany

2 Department of Pathology, Children’s Hospital Boston, Boston, MA, USA

3 Department of Pathology, Harvard Medical School and Children’s Hospital Boston, Boston, MA, USA

4 Department of Neurobiology, Harvard Medical School and Department of Neurology, Children’s Hospital Boston, Boston, MA, USA

For all author emails, please log on.

BMC Bioinformatics 2008, 9:355  doi:10.1186/1471-2105-9-355

The electronic version of this article is the complete one and can be found online at: http://www.biomedcentral.com/1471-2105/9/355


Received:8 April 2008
Accepted:28 August 2008
Published:28 August 2008

© 2008 Renard et al; licensee 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.

Abstract

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 http://hci.iwr.uni-heidelberg.de/mip/proteomics/ webcite.

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 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, species-dependent 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 isotope-resolved 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-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-11,17-22]. Fitting is carried out via χ2 distances [8,20], least squares [9-11,17,21-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-31]. Among these, Matching[28] and Roussis' method [29] rely on manual preselection of contribution candidates. Sparse non-greedy 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 L0-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 real-world 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 least-squares 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= (m1, m2, ..., mN)T and represent a raw multicomponent mass spectrum by a vector s of size N × 1, where si corresponds to the abundance observed in the ith mass bin mi. 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 ϕi,

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M1','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M1">View MathML</a>

(1)

Each of the concentration coefficients ci, i = 1, ..., K is associated with a column ϕi of the N × K model matrix Φ. We regard these columns as basis functions and their elements ϕji correspond to the mass spectrum abundance expected in the jth mass bin mj of the ith pure component ϕ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-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 ϕ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 ρ = (ρ1,...,ρ5)T according to the mapping f: ℝ → ℝ5 between a mass value and the number of element atoms in an averagine (H7.75833C4.9384N1.35777O1.4773S0.0417) molecule. The calculation of the theoretical isotope distribution of ρ 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 ρi can be factorized according to

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M2','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M2">View MathML</a>

(2)

where pl is the probability of occurrence of the lth isotope <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M3','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M3">View MathML</a>, x = (x1, ..., xk) T denotes the number of times a particular isotope is chosen <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M4','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M4">View MathML</a> and t = (t1, ..., tk)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 model <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M5','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M5">View MathML</a> = (⌊ρ1⌋, ⌊ρ2⌋, ..., ⌊ρ5⌋)T for the integers and the fractional averagine correction <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M6','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M6">View MathML</a> = (ρ1 - ⌊ρ1⌋, ρ2 - ⌊ρ2⌋, ..., ρ5 - ⌊ρ5⌋)T for the remaining fractional masses. The theoretical isotope distribution for <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M7','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M7">View MathML</a> 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 - <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M7','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M7">View MathML</a> and <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M7','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M7">View MathML</a>, respectively. Thus, efficient calculation of the theoretical isotope distribution of the stoichiometry <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M5','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M5">View MathML</a> is carried out based on the Mercury7 algorithm [14], and the theoretical isotope distribution for the fractional stoichiometry ρ is subsequently obtained with five additional convolution steps.

Basis function selection

Given the set of basis functions Φ = [ϕ1ϕ2 ... ϕk], basis function selection and subsequent determination of the contribution coefficients ci 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ϕ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 = nZN, where nZ corresponds to the number of charge states observable in the experiment; hence, for nZ> 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 <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M8','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M8">View MathML</a> for equation (1) is given by

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M9','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M9">View MathML</a>

(3)

where t ≥ 0 is a user-defined tuning parameter [31,32]. Mass spectra intensities si, basis function values ϕji, and basis function contributions ck are strictly non-negative, thus adding a non-negativity constraint to the solution space of <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M8','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M8">View MathML</a>, yielding

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M10','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M10">View MathML</a>

(4)

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) corresponds to <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M11','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M11">View MathML</a> with ci ≥ 0 where the parameter t is related to the Lagrangian multiplier λ which determines the number of free parameters df(λ) in the linear model [32,36-38].

Common procedures for the optimal selection of λ or df(λ) are based on the minimization of the prediction error. This involves estimation of training optimism via Cp-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 trace <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M8','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M8">View MathML</a>(λl), where λl ∈ ℒ and <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M13','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M13">View MathML</a> 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 LASSO-modified LARS is a constructive active set procedure which constructs the LASSO regularization path in a stepwise manner. Denote by <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>(λ) the set of indices i ∈ {1. ..., K} of those ϕi which are in the active set for a particular choice of λ. Starting from λ = ∞ and letting λ → 0, the algorithm computes non-negative LASSO solutions for all λ for which the active set changes, thus implicitly defining ℒ. The LASSO-modified LARS guarantees <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>(λj) ≠ <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>(λj+1), but it allows for the deletion of previously selected basis functions, and hence |<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>(λ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 to |<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>(λ) | × |<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>(λ)|-sized scatter matrices <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M15','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M15">View MathML</a> 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 <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M16','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M16">View MathML</a> and the set <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M17','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M17">View MathML</a> of active basis functions.

BIC measure

The LARS Cp-type risk reestimation formula [39] for optimal selection of λ does not hold under the non-negative LASSO modification. Instead, we recalculate a BIC measure

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M18','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M18">View MathML</a>

(5)

in each LARS iteration [40]. For the calculation of the unbiased training error MSE(λ) in eq. (5) we require an additional non-negative least squares fit

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M19','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M19">View MathML</a>

(6)

The noise variance σ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(λ)

The calculation of BIC(λ) in eq.(5) requires an estimate for the degrees of freedom df(λ), 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 <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>(λ) are given by

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M20','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M20">View MathML</a>

(7)

Because the coefficients <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M21','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M21">View MathML</a> > 0 are non-negative, the estimate <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M22','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M22">View MathML</a> solves

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M23','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M23">View MathML</a>

(8)

which is differentiable with respect to <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M21','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M21">View MathML</a>. Setting the derivative to zero, we obtain

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M24','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M24">View MathML</a>

(9)

Hence, given an active set <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>(λ), the generalized degrees of freedom from eq. (7) can be written as

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M25','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M25">View MathML</a>

(10)

which is monotonously increasing for decreasing λ (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 <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M26','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M26">View MathML</a> are given by <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M26','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M26">View MathML</a> = arg minc ||s - Φc||2 subject to ci ≥ 0, and the corresponding error is <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M27','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M27">View MathML</a>. Thus, a lower bound for BIC(λ) is given by

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M28','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M28">View MathML</a>

(11)

(see appendix C for a proof). In general, BIC(λ) will have several minima for increasing values of GDF(λ), hence we track the minimum BIC(λmin) through the NN-LASSO-modified LARS cycles and accept λmin as a minimizer as soon as the lower bound BICmin(λ) of a subsequent LARS step exceeds the current best estimate BIC(λmin), i.e. BIC(λmin) < BICmin(λ) (see figure 2).

thumbnailFigure 1. 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 procedure controlled by a statistical termination criterion, as illustrated by the large box in the center. As a tightly interconnected prerequisite to the main workflow, the column on the left depicts the steps required for the calculation of the regression model matrix. Numbers in parentheses give the manuscript sections in which the specific steps are detailed.

thumbnailFigure 2. Efficient automated determination of the number of components in an area with overlapping peaks using the BICmin(λ) termination criterion. The mean squared error MSE (scaled, dotted) decreases monotonically over the LARS steps and the generalized degrees of freedom GDF(λ) (dashed) increase monotonically. The resulting BIC(λ) measure (solid) exhibits a minimum BIC(λ9) in the 9th LARS step and λ9 is accepted as a minimizer because the lower bound BICmin10) exceeds BIC(λ9) in the 10th LARS step.

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 <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M29','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M29">View MathML</a>, i = 1, ..., K are subject to shrinkage [32,37] and represent biased versions of the least squares estimates. Given an active set <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>, the shrinkage bias on the <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M29','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M29">View MathML</a> 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 <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M30','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M30">View MathML</a> is given by equation (6) with <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>(λ) = <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>.

Postprocessing

The estimate <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M8','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M8">View MathML</a> 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 <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M14','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M14">View MathML</a>:

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M31','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M31">View MathML</a>

(12)

where <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M32','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M32">View MathML</a> defines an m/z-neighborhood of size G around each peak and bj is the mass/charge bin index of the monoisotopic mass m0 of the jth theoretical isotope distribution ϕj. If <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M33','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M33">View MathML</a>, <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M22','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M22">View MathML</a> is reestimated using eq. (6) with <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M34','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M34">View MathML</a>

Results

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 <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M93','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M93">View MathML</a>, exact element stoichiometries <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M36','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M36">View MathML</a> and exact theoretical isotope distributions <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M37','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M37">View MathML</a> 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 stoichiometries <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M38','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M38">View MathML</a> and <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M94','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M94">View MathML</a>, respectively, for all peptides <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M35','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M35">View MathML</a> in the data set. Based on <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M38','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M38">View MathML</a> and <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M94','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M94">View MathML</a>, the corresponding theoretical isotope distribution intensity vectors <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M39','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M39">View MathML</a> and <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M95','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M95">View MathML</a> were calculated. Figure 3 shows the cumulative distribution of the squared differences between the classical averagine and the true theoretical isotope distribution intensity vectors (<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M40','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M40">View MathML</a>, dashed black), and fractional averagine and the true theoretical isotope distribution intensity vectors (<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M41','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M41">View MathML</a>, solid red).

thumbnailFigure 3. Comparison of the impact of averagine and fractional averagine stoichiometry estimation errors on the estimation of theoretical isotope distributions. The cumulative histograms of least squares deviations from the true theoretical isotope distribution illustrate the superior overall performance of fractional averagine (solid line) compared to Senko's classical averagine (dashed line): fractional averagine causes a 17% decrease in mean squared error magnitude.

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 non-greedy 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).

Additional file 1. A zip folder containing all simulation files (R data files).

Format: ZIP Size: 11.8MB Download fileOpen Data

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 shape functions were modeled according to mass-dependent Gaussian distributions with standard deviations σ(m/z) = 0.005 m/z [42].

Additional file 2. The zipped original LC/MS .wiff-file on which MarkerView was run (as acquired by the AB/Sciex QStar instrument)

Format: ZIP Size: 1.8MB Download fileOpen Data

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, non-peptidic 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 m0 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:

• accuracy (ACC) measures the rate of correct peak vs. no peak decisions, i.e. <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M42','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M42">View MathML</a>

• the negative predictive value (NPV) gives the rate at which there is no peak at positions where the procedure was unable to find a peak, <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M43','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M43">View MathML</a>

• the positive predictive value (PPV) measures the rate of correct peak detections among all peaks detected by the procedure, <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M44','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M44">View MathML</a>

• sensitivity (SE) measures the method's ability to detect a peak if it exists, <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M45','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M45">View MathML</a>

• specificity (SP) measures the method's ability to correctly identify the absence of peaks in the spectrum, <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M46','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M46">View MathML</a>

All measures have been computed with and without the application of postprocessing.

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.

Comparative results

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).

Additional file 3. The original spectrum of BSA-sample.wiff integrated over retention time (23.817-29.278 minutes) on which NITPICK was run.

Format: TXT Size: 570KB Download fileOpen Data

Additional file 4. A zip-folder containing all pepex results on the simulated data.

Format: ZIP Size: 15.6MB Download fileOpen Data

Additional file 5. A zip-folder containing all NITPICK results on the simulated data sets and for each SNR (SNR in 5, 10, 25, 50, 100) a R data file called

• resultList_0_’SNR’_0.1.RDA gives the peaks found by NITPICK for all spectra of a certain SNR

• lengthResultList_0_’SNR’_0.1.RDA gives the number of peaks found by NITPICK for each spectrum

• correct_0_’SNR’_0.1.RDA gives the number of correctly identified peaks found by NITPICK for each spectrum

• tooMany_0_’SNR’_0.1.RDA gives the number of incorrectly identified peaks found by NITPICK for each spectrum

• pp_resultList_0_3_0_’SNR’_0.1.RDA gives the peaks found by NITPICK for all spectra of a certain SNR after postprocessing with g=3

• lengthResultList_0_3_0_’SNR’_0.1.RDA gives the number of peaks found by NITPICK for each spectrum after postprocessing with g=3

• correct_0_3_0_’SNR’_0.1.RDA gives the number of correctly identified peaks found by NITPICK for each spectrum after postprocessing with g=3

• tooMany_0 3_0_’SNR’_0.1.RDA gives the number of incorrectly identified peaks found by NITPICK for each spectrum after postprocessing with g=3

Format: ZIP Size: 1.3MB Download fileOpen Data

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).

Additional file 6. Excel sheet containing the peaks detected by NITPICK (mz-position, charge, intensity) as well as their manual validation.

Format: XLS Size: 50KB Download file

This file can be viewed with: Microsoft Excel ViewerOpen Data

Additional file 7. Excel sheet containing the peaks detected by MarkerView (mz-position, charge, if available) as well as their manual validation.

Format: XLS Size: 109KB Download file

This file can be viewed with: Microsoft Excel ViewerOpen Data

Discussion

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).

thumbnailFigure 4. Evaluation and comparison with the pepex algorithm on simulated data. Accuracy (top left), negative predictive values (top right), positive predictive values (bottom left) and sensitivity-specificity traces (bottom right). Plots show NITPICK results in solid red, NITPICK results without postprocessing in dashed blue and pepex results (optimized, see text) in dashed-dotted black. NITPICK is clearly superior in terms of accuracy, specificity and sensitivity.

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.

thumbnailFigure 5. Peak picking in the m/z 507-525 mass range. Illustration of observed (top) and reconstructed (bottom) spectra. All detected peaks could be confirmed, 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).

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.

thumbnailFigure 6. Zoom on the m/z 518–525 mass range. NITPICK proves capable of resolving overlapping isotope distributions and assigning correct monoisotopic masses for the distributions located at m/z 518.22 and 519.11 and at m/z 523.23 and 523.82. See text for details.

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.

thumbnailFigure 7. Peak picking results in the m/z 636–646 mass range. Illustration of observed (top) and reconstructed (bottom) spectra. At m/z 636.64 and m/z 636.96 we observe incomplete unmixing: The isotope distribution (z=3) with monoisotopic mass m0 located at m/z 636.29 heavily overlaps the distribution (z=3) with m0 = 636.64 m/z (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 distributions located at m/z 636.29 and m/z 639.65, the monoisotopic mass peak does not correspond to the most intensive peak.

In the m/z 695–725 mass range (figure 8), with one exception, all detected peaks could be verified. The wrongly detected peak at m/z 714.29 corresponds to the first isotope peak of the isotope distribution located at m/z 713.78 (z = 2). Especially in the m/z 718 to m/z 724 region the algorithm proves capable of resolving nontrivial low-intensity mixtures.

thumbnailFigure 8. Peak picking in the m/z 695–725 mass range. Illustration of observed (top) and reconstructed (bottom) spectra. With a single exception, all detected peaks could be manually confirmed. The peak detected at m/z 714.29 corresponds to the first isotope peak of the isotope distribution located at m/z 713.78 (z=2). In the m/z 718–724 region the algorithm proves capable of resolving nontrivial low-intensity mixtures.

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 model-based 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%.

thumbnailFigure 9. 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 of the isotope distribution located at m/z 779.32 (charge 2) and the monoisotopic peak of the distribution located at m/z 780.35 (charge 2) are exactly superimposed and can only be distinguished by taking intensity information into account.

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. In comparison to NITPICK, this yields a sensitivity ratio of <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M47','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M47">View MathML</a> and a positive predictive value of PPV = 0.53.

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.

Conclusion and perspectives

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 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/ webcite.

Perspectives

The constrained least squares regression model in equation (3) implicitly assumes Gaussian noise on the observed spectra. Especially with low-intensity time-of-flight 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 ϕ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 ≲ 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

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M48','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M48">View MathML</a>

(13)

with ⌈c⌉ = <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M96','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M96">View MathML</a>, ⌊c⌋ = <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M97','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M97">View MathML</a> and Xi 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 gp(i) represent the ith element of the probability vector of the first and fp(j) the jth element of the second distribution, then

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M49','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M49">View MathML</a>

(14)

can be used to compute hp(k), the kth element of the new vector of probabilities for the joint distribution. Similarly, the corresponding mass vector hm can be computed using the probability vectors gp and fp and the corresponding mass vectors gm and fm using

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M50','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M50">View MathML</a>

(15)

B Proof of the monotony of the GDF for the non-negative lasso

As long as a given set <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a> is valid, it can be easily shown that the GDF are monotonous in λ. Starting with the GDF(λ) of equation (10),

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M52','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M52">View MathML</a>

(16)

To show that the GDF are monotonously increasing for decreasing values of λ, it suffices to analyze the following part of the formula,

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M53','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M53">View MathML</a>

(17)

where ei denotes the ith canonical unit vector of length N and <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M54','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M54">View MathML</a> is the identity matrix of size N.

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M55','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M55">View MathML</a> is the least squares regression coefficient for the corresponding least squares problem of the active set. It is known that all non-negative lasso coefficients <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M56','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M56">View MathML</a> are greater or equal zero, so

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M57','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M57">View MathML</a>

(18)

as <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M15','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M15">View MathML</a> is the inverse of a covariance matrix and, thus, positive-semidefinite, and λ is by definition always greater or equal 0. Thus, the second part of equation (16) is monotone with regard to λ and therefore the GDFs are monotone as long as a given active set is valid.

It remains to be shown that changes of <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a> do not influence the monotony, so it needs to be shown that neither the addition of ϕj to the set <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a> nor the removal of ϕk from <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a> lead to a decrease of cov(s, <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M58','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M58">View MathML</a>) 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 will be added to the active set <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M59','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M59">View MathML</a> only if it is positively correlated with the remaining residuals, i. e. if

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M60','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M60">View MathML</a>

(19)

This obviously leads to an increase of cov (s, <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M58','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M58">View MathML</a>) as less unexplained variation remains. A variable ϕk is removed from the active set <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a> only if cov (ϕk, s - <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M58','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M58">View MathML</a>) < 0, so if the residuals are negatively correlated with the variable its removal leads to an increase of cov (s, <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M58','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M58">View MathML</a>) as well.

Thus, as long as changes of the set <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a> 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 is added to the current set of variables <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a>, the solution for <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M61','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M61">View MathML</a> can be constructed from the solution of <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a> in the following manner [39]:

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M62','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M62">View MathML</a>

(20)

where

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M63','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M63">View MathML</a>

(21)

is strictly positive by definition and gives the magnitude of the change.

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M64','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M64">View MathML</a>

(22)

is the vector of the current correlation and

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M65','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M65">View MathML</a>

(23)

In addition,

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M66','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M66">View MathML</a>

(24)

and

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M67','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M67">View MathML</a>

(25)

leading to

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M68','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M68">View MathML</a>

(26)

We need to show that

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M69','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M69">View MathML</a>

(27)

Using the construction of <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M70','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M70">View MathML</a> from above, this leads to

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M71','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M71">View MathML</a>

(28)

It is known from its definition that <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M72','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M72">View MathML</a> is strictly positive, thus it can be dropped from the inequality and

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M73','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M73">View MathML</a>

(29)

It is also known from the idea of the non-negative lasso that all variables in XA are positively correlated with the remaining residuals, so

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M74','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M74">View MathML</a>

(30)

Using this result,

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M75','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M75">View MathML</a>

(31)

holds true and it suffices to show that

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M76','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M76">View MathML</a>

(32)

When further recalling the fact from [39] that <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M77','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M77">View MathML</a>, this can be reduced to

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M78','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M78">View MathML</a>

(33)

but as <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M79','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M79">View MathML</a> is strictly positive by definition, it follows that

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M80','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M80">View MathML</a>

(34)

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 ϕk from <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a> can be argued almost identically with the only difference being that now

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M81','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M81">View MathML</a>

(35)

where

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M82','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M82">View MathML</a>

(36)

which is also always positive and thus can be dropped from the resulting inequality in exactly the same fashion as <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M72','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M72">View MathML</a> could be dropped for the case of the addition of a variable. Consequently, changes in <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M51','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M51">View MathML</a> do not change the monotony of the GDF estimate.

C Lower bound properties of BICmin

BICmin is a lower bound for BIC, if ∀k i

BICmin(i) ≤ BIC(k),(37)

which equals

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M83','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M83">View MathML</a>

(38)

which is always fulfilled because MSE ≤ MSE(λi) and df (λi) ≤ df (λk) for i k and N ≥ 1, <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M84','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M84">View MathML</a> > 0.

D SNR definition for simulated spectra

Given the undistorted simulated signal s, the effect of Poisson noise is simulated with si vi, where vi is drawn from a Poisson distribution with mean ksi + 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

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M85','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M85">View MathML</a>

(39)

The empirical variance of the original signal s multiplied by a scalar k is defined as

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M86','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M86">View MathML</a>

(40)

where <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M87','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M87">View MathML</a> denotes the mean over all si. For Poisson noise, location and dispersion parameters coincide, i.e. with X ~ <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M88','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M88">View MathML</a>(λ) we have Var(X) = <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M89','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M89">View MathML</a>(X) = λ, and we approximate the variance of a set of Poisson variables ni ~ <a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M88','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M88">View MathML</a>(ksi), i = 1, ..., N by their average

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M90','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M90">View MathML</a>

(41)

For a given SNR, this allows the estimation of k because

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M91','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M91">View MathML</a>

(42)

and thus

<a onClick="popup('http://www.biomedcentral.com/1471-2105/9/355/mathml/M92','MathML',630,470);return false;" target="_blank" href="http://www.biomedcentral.com/1471-2105/9/355/mathml/M92">View MathML</a>

(43)

Authors' contributions

BYR and MK have developed the methodology, implemented the software, carried out the data analysis and drafted the manuscript. HS and JAJS have contributed to the basic methodology and the manuscript, carried out critical review and provided application feedback and evaluation for the proposed methods. FAH has suggested the fractional averagine approach, and has contributed to the manuscript and the overall project design. All authors have read and approved the final manuscript.

Acknowledgements

The authors would like to thank Yin Yin Lin (Dept. of Pathology, Children's Hospital, Boston, MA, USA) for LC/MS data acquisition, Lyle Burton (AB/MDS Sciex, Concord, Canada) for MarkerView 1.2 evaluation versions, Ullrich Köthe, Linus Görlitz, Björn Menze, Michael Kelm (Interdisciplinary Center for Scientific Computing (IWR), University of Heidelberg, Germany), and Flavio Monigatti (Dept. of Pathology, Children's Hospital, Boston, MA, USA) for comments, suggestions, and fruitful discussions. We gratefully acknowledge financial support by the Hans L. Merkle foundation (M.K.), the Karl Steinbuch Scholarship (B.Y.R.), dm/Filiadata GmbH (B.Y.R.), Robert Bosch GmbH (F.A.H.), the Children's Hospital Trust (J.A.J.S. and H.S.), and the DFG under grant no. HA4364/2-1 (B.Y.R., F.A.H).

References

  1. Jensen ON: Interpreting the protein language using proteomics.

    Nature Reviews Molecular Cell Biology 2006, 7(6):391-403. PubMed Abstract | Publisher Full Text OpenURL

  2. Beretta L: Proteomics from the Clinical Perspective: Many Hopes and Much Debate.

    Nature Methods 2007, 4(10):785-786. PubMed Abstract | Publisher Full Text OpenURL

  3. Schwartz SA, Weil RJ, Johnson MD, Toms SA, Caprioli RM: Protein Profiling in Brain Tumors Using Mass Spectrometry: Feasibility of a New Technique for the Analysis of Protein Expression.

    Clinical Cancer Research 2004, 10:981-987. PubMed Abstract | Publisher Full Text OpenURL

  4. Claydon MA, Davey SN, Edwards-Jones V, Gordon DB: The Rapid Identification of Intact Microorganisms Using Mass Spectrometry.

    Nature Biotechnology 1996, 14:1584-1586. PubMed Abstract | Publisher Full Text OpenURL

  5. Pineda FJ, Antoine MD, Demirev PA, Feldman AB, Jackman J, Longenecker M, Lin JS: Microorganism Identification by Matrix-Assisted Laser/Desorption Ionization Mass Spectrometry and Model-Derived Ribosomal Protein Biomarkers.

    Analytical Chemistry 2003, 75(15):3817-3822. PubMed Abstract | Publisher Full Text OpenURL

  6. Zhang Z, Marshall AG: A Universal Algorithm for Fast and Automated Charge State Deconvolution of Electrospray Mass-to-Charge Ratio Spectra.

    Journal of the American Society for Mass Spectrometry 1998, 9(3):225-33. PubMed Abstract | Publisher Full Text OpenURL

  7. Yu W, Wu B, Lin N, Stone K, Williams K, Zhao H: Detecting and Aligning Peaks in Mass Spectrometry Data with Applications to MALDI.

    Computational Biology and Chemistry 2006, 30:27-38. Publisher Full Text OpenURL

  8. Senko M, Beu S, McLafferty F: Determination of Monoisotopic Masses and Ion Populations for Large Biomolecules from Resolved Isotopic Distributions.

    Journal of the American Society for Mass Spectrometry 1995, 6:229-233. Publisher Full Text OpenURL

  9. Horn DM, Zubarev RA, McLafferty FW: Automated Reduction and Interpretation of High Resolution Electrospray Mass Spectra of Large Molecules.

    Journal of the American Society for Mass Spectrometry 2000, 11(4):320-332. PubMed Abstract | Publisher Full Text OpenURL

  10. Wehofsky M, Hoffmann R, Hubert M, Spengler B: Isotopic Deconvolution of Matrix-Assisted Laser Desorption/Ionization Mass Spectra for Substance-Class Specific Analysis of Complex Samples.

    European Journal of Mass Spectrometry 2001, 7:39-46. Publisher Full Text OpenURL

  11. Gras R, Muller M, Gasteiger E, Gay S, Binz PA, Bienvenut W, Hoogland C, Sanches JC, Bairoch A, Hochstrasser DF, Appel RD: Improving Protein Identification from Peptide Mass Fingerprinting through a Parameterized Multi-Level Scoring Algorithm and an Optimized Peak Detection.

    Electrophoresis 1999, 20:3535-3550. PubMed Abstract | Publisher Full Text OpenURL

  12. Rockwood A, Van Orden S, Smith R: Rapid Calculation of Isotope Distributions.

    Analytical Chemistry 1995, 67:2699-2704. Publisher Full Text OpenURL

  13. Rockwood A, Van Orden SL, Smith RD: Ultrahigh-Speed Calculation of Isotope Distributions.

    Analytical Chemistry 1996, 68:2027-2030. Publisher Full Text OpenURL

  14. Rockwood A, Haimi P: Efficient Calculation of Accurate Masses of Isotopic Peaks.

    Journal of the American Society for Mass Spectrometry 2006, 17:415-419. PubMed Abstract | Publisher Full Text OpenURL

  15. Yergey JA: A General Approach to Calculating Isotopic Distributions for Mass Spectrometry.

    International Journal of Mass Spectrometry and Ion Physics 1983, 52:337-349. Publisher Full Text OpenURL

  16. Senko M: Isopro 3.0. [http://members.aol.com/msmssoft/] webcite

    1997. PubMed Abstract | Publisher Full Text OpenURL

  17. Breen EJ, Hopwood FG, Williams KL, Wilkins MR: Automatic Poisson Peak Harvesting for High Throughput Protein Identification.

    Electrophoresis 2000, 21:2243-2251. PubMed Abstract | Publisher Full Text OpenURL

  18. Chen L, Sze SK, Yang H: Automated Intensity Descent Algorithm for Interpretation of Complex High-Resolution Mass Spectra.

    Analytical Chemistry 2006, 78:5006-5018. PubMed Abstract | Publisher Full Text OpenURL

  19. Kaur P, O'Connor PB: Algorithms for automatic interpretation of high resolution mass spectra.

    Journal of the American Society for Mass Spectrometry 2006, 17(3):459-468. PubMed Abstract | Publisher Full Text OpenURL

  20. Szymura JA, Lamkiewicz J: Band Composition Analysis: a new Procedure for Deconvolution of the Mass Spectra of Organometallic Compounds.

    Journal of Mass Spectrometry 2003, 38:817-822. PubMed Abstract | Publisher Full Text OpenURL

  21. Wehofsky M, Hoffmann R: Automated Deconvolution and Deisotoping of Electrospray Mass Spectra.

    Journal of Mass Spectrometry 2002, 37:223-229. PubMed Abstract | Publisher Full Text OpenURL

  22. Zhang X, Hines W, Adamec J, Asara JM, Naylor S, Regnier FE: An Automated Method for the Analysis of Stable Isotope Labeling Data in Proteomics.

    Journal of the American Society for Mass Spectrometry 2005, 16:1181-1191. PubMed Abstract | Publisher Full Text OpenURL

  23. Mason CJ, Therneau TM, Eckel-Passow JE, Johnson KL, Oberg AL, Olson JE, Nair KS, Muddiman DC, Bergen HRI: A Method for Automatically Interpreting Mass Spectra of 18O Labeled Isotopic Clusters.

    Molecular & Cellular Proteomics 2006, 6:305-318. Publisher Full Text OpenURL

  24. Wang W, Zhou H, Lin H, Roy S, Shaler TA, Hill LR, Norton S, Kumar P, Anderle M, Becker CH: Quantification of Proteins and Metabolites by Mass Spectrometry without Isotopic Labeling or Spiked Standards.

    Analytical Chemistry 2003, 75:4818-4826. PubMed Abstract | Publisher Full Text OpenURL

  25. Senko MW, Beu SC, McLafferty FW: Automated Assignment of Charge States from Resolved Isotopic Peaks for Multiply Charged Ions.

    Journal of the American Society for Mass Spectrometry 1995, 6:52-56. Publisher Full Text OpenURL

  26. Tabb DL, Shah MB, Strader MB, Conelly HM, Hettich RL, Hurst GB: Determination of Peptide and Protein ion Charge States by Fourier Transformation of Isotope-Resolved Mass Spectra.

    Journal of the American Society for Mass Spectrometry 2006, 17:903-915. PubMed Abstract | Publisher Full Text OpenURL

  27. Listgarten J, Emili A: Statistical and Computational Methods for Comparative Proteomic Profiling Using Liquid Chromatography-Tandem Mass Spectrometry.

    Molecular and Cellular Proteomics 2005, 4(4):419-434. Publisher Full Text OpenURL

  28. Fernández-de-Cossio J, Gonzalez LJ, Satomi Y, Betancourt L, Ramos Y, Huerta V, Besada V, Padron G, Minamino N, Takao T: Automated Interpretation of Mass Spectra of Complex Mixtures by Matching of Isotope Peak Distributions.

    Rapid Communications in Mass Spectrometry 2004, 18:2465-2472. PubMed Abstract | Publisher Full Text OpenURL

  29. Roussis SG, Proulx R: Reduction of Chemical Formulas from the Isotopic Peak Distributions of High-Resolution Mass Spectra.

    Analytical Chemistry 2003, 75:1470-1482. PubMed Abstract | Publisher Full Text OpenURL

  30. Samuelsson J, Dalevi D, Levander F, Rögnvaldsson T: Modular, Scriptable and Automated Analysis Tools for High-Throughput Peptide Mass Fingerprinting.

    Bioinformatics 2004, 20:3628-3635. PubMed Abstract | Publisher Full Text OpenURL

  31. Du P, Angeletti RH: Automatic Deconvolution of Isotope-Resolved Mass Spectra Using Variable Selection and Quantized Peptide Mass Distribution.

    Analytical Chemistry 2006, 78:3385-3392. PubMed Abstract | Publisher Full Text OpenURL

  32. Tibshirani R: Regression Shrinkage and Selection via the LASSO.

    Journal of the Royal Statistical Society 1996, Series B 58:267-288. OpenURL

  33. Kaur P, O'Connor PB: Use of Statistical Methods for Estimation of Total Number of Charges in a Mass Spectrometry Experiment.

    Analytical Chemistry 2004, 76:2756-2762. PubMed Abstract | Publisher Full Text OpenURL

  34. Casella G, Berger RL: Statistical Inference. Duxbury Press; 2001. OpenURL

  35. Lawson CL, Hanson RJ: Solving Least Squares Problems. Prentice-Hall, Englewood Cliffs, N J; 1974. OpenURL

  36. Park MY, Hastie T: An L1 Regularization-path Algorithm for Generalized Linear Models.

    Journal of the Royal Statistical Society, Series B 2007, 69:659-677. Publisher Full Text OpenURL

  37. Hastie T, Tibshirani R, Friedman J: The Elements of Statistical Learning; Data Mining, Inference, and Prediction. Springer Verlag New York; 2001. OpenURL

  38. Ye J: On Measuring and Correcting the Effects of Data Mining and Model Selection.

    Journal of the American Statistical Association 1998, 93:120-131. Publisher Full Text OpenURL

  39. Efron B, Hastie T, Johnstone I, Tibshirani R: Least Angle Regression.

    Annals of Statistics 2004, 32(2):407-499. Publisher Full Text OpenURL

  40. Zou H, Hastie T, Tibshirani R: On the "Degrees of Freedom" of the Lasso.

    Annals of Statistics 2007, 35(5):2173-2192. Publisher Full Text OpenURL

  41. Bairoch A, Apweiler R: The SWISS-PROT Protein Sequence Database and its Supplement TrEMBL in 2000.

    Nucleic Acids Research 2000, 28:45-48. PubMed Abstract | Publisher Full Text | PubMed Central Full Text OpenURL

  42. Tibshirani R, Hastie T, Narasimhan B, Soltys S, Shi G, Koong A, Le QT: Sample Classification from Protein Mass Spectrometry, by Peak Probability Contrasts.

    Bioinformatics 2004, 20(17):3034-3044. PubMed Abstract | Publisher Full Text OpenURL

  43. Wallace WE, Kearsley AJ, Guttman CM: An Operator-Independent Approach to Mass Spectral Peak Identification and Integration.

    Analytical Chemistry 2004, 76:2446-2452. PubMed Abstract | Publisher Full Text OpenURL

  44. Kearsley AJ, Wallace WE, Bernal J, Guttman CM: A Numerical Method for Mass Spectral Data Analysis.

    Applied Mathematics Letters 2005, 18:1412-1417. Publisher Full Text OpenURL

  45. Mann M: Useful Tables of Possible and Probable Peptide Masses.

    43rd Conference on Mass Spectrometry and Allied Topics 1995. OpenURL

  46. Rockwood AL, Kushnir MM, Nelson GJ: Dissociation of individual isotopic peaks: predicting isotopic distributions of product ions in MSn.

    Journal of the American Society for Mass Spectrometry 2003, 14(4):311-22. PubMed Abstract | Publisher Full Text OpenURL