Outline
Probability 101
Distributions
Curve Fitting
Implementation
Credits
Curve fitting
Ramkumar R
August 19, 2009
Ramkumar R Curve fitting
Outline
Probability 101
Distributions
Curve Fitting
Implementation
Credits
Probability 101
Distributions
Gaussian (Normal)
Chi-square
Curve Fitting
Introduction
Specific fits
Implementation
Credits
Ramkumar R Curve fitting
Outline
Probability 101
Distributions
Curve Fitting
Implementation
Credits
I Random variables
I Probability functions
I Discrete PMF
I CDF
FX (x) = Prob{X ≤ x} (1)
I PDF
fX (x) = F 0 (x) (2)
Ramkumar R Curve fitting
Outline
Probability 101
Distributions
Curve Fitting
Implementation
Credits
Moments
I Central moment — h(x − µ)m i = h(x − hxi)m i
I Zeroth and First — 1 and 0
I Second — Variance σ 2 = h(x − hxi)2 i = hx 2 i − hxi2
I Third and Fourth — Skewness and Kurtosis
I Non-central moment — hX m i
Ramkumar R Curve fitting
Outline
Probability 101
Distributions Gaussian (Normal)
Curve Fitting Chi-square
Implementation
Credits
Gaussian (Normal)
(x − µ)2
1
fX (x) = √ exp − (3)
σ 2π 2σ 2
Ramkumar R Curve fitting
Outline
Probability 101
Distributions Gaussian (Normal)
Curve Fitting Chi-square
Implementation
Credits
Chi-square PDF
k
X
Q= Xi2 (4)
i=1
(
1
2k/2 Γ(k/2)
x k/2 − 1 e −x/2 ; x ≥0
fQ (x; k) = (5)
0 ; x <0
where Xi ’s are normallly distributed random variables with 0 mean
and variance 1.
Ramkumar R Curve fitting
Outline
Probability 101
Distributions Gaussian (Normal)
Curve Fitting Chi-square
Implementation
Credits
Chi-square CDF
After integration, we get the Chi-square CDF in terms of an lower
incomplete γ function defined as
Z x
γ(s, x) = t s−1 e −t dt (6)
0
Then the Chi-square CDF equals
2
γ( k2 , χ2 )
(7)
Γ( k2 )
Ramkumar R Curve fitting
Outline
Probability 101
Distributions Introduction
Curve Fitting Specific fits
Implementation
Credits
What does curve fitting mean?
I Fitting data to a model with adjustable parameters
I Design figure-of-merit function
I Obtain best fit parameters by adjusting parameters to achieve
min in merit function
I More details to take care of
I Assess appropriateness of model; goodness-of-fit
I Accuracy of parameter determination
I Merit function may not be unimodal
Ramkumar R Curve fitting
Outline
Probability 101
Distributions Introduction
Curve Fitting Specific fits
Implementation
Credits
Least squares fitting
Maximizing the product
N
" 2 #
yi − yi(t)
Y 1
P∝ exp − ∆y (8)
2 σ
i=1
ie. Minimizing its negative logarithm
" N #
X [yi − yi(t) ]2
− N log ∆y (9)
2σ 2
i=1
Minimizing this sum over a1 , a2 , ..aM , we get the final form:
N
X
[yi − yi(t) ]2 (10)
i=1
Ramkumar R Curve fitting
Outline
Probability 101
Distributions Introduction
Curve Fitting Specific fits
Implementation
Credits
Chi-square fitting
Modifying equation 8 to replace the σ by σi and going through the
same process, we get
N
yi − yi(t) 2
X
2
χ = (11)
σi
i=1
where
yi(t) = f (a1 , a2 , ..aM ) (12)
For models that are linear in the a’s, however, it turns out that the
probability distribution for different values of chi-square at its
minimum can nevertheless be derived analytically, and is the
chi-sqaure distribution for N-M degrees of freedom.
Ramkumar R Curve fitting
Outline
Probability 101
Distributions
Curve Fitting
Implementation
Credits
gnuplot
gnuplot> fit f(x) ‘foo.data’ u 1:2:3:4 via a, b
I Uses WSSR: Weighted Sum of Squared Residuals
I Marquardt-Levenberg algorithm to find parameters to use in
next iteration
I After fitting, gnuplot reports stdfit, the standard deviation of
the fit
Ramkumar R Curve fitting
Outline
Probability 101
Distributions
Curve Fitting
Implementation
Credits
I Numerical Receipies in C
I The gnuplot manual
I Miscellanous books on elementary probability
I Presentation created using LATEX and Beamer
Presentation source code available on github.com/artagnon/curve-fitting
Ramkumar R Curve fitting