How to do exponential regression, but not the straightforward way (logarithm+linear regression)?

200 Views Asked by At

I have data points: $x_k[i]$, $k=1..10$, $i=0..10000$, each $x_k$ is data from a damped oscillation (starts around 1, and has exponential-like decaying. The higher the $k$, the faster the decay).

And I have an exponential function: $e^{-({b_1+b_2k^2})i}$

I'd like to find $b_1$ and $b_2$ which makes the exponential fit to my data points.

Taking the logarithm and using linear regression (least squares) is bad for this problem, because it exaggerates differences for small values, so I get a bad fit at small $i$ values.

Currently, I use a brute-force method (try a lot of $b_1\times b_2$ pairs), which works well (I can use least squares error condition in the original problem space, not in log space), but it is an ugly and inefficient solution.

Is there a better method to solve this?

1

There are 1 best solutions below

2
On

The common approach is to use the linearization that you have mentioned and perform OLS and use the OLS estimators of $\beta_1$ and $\beta_2$ as a starting point in non-linear regression for the Newton-Raphson algorithm. https://en.wikipedia.org/wiki/Gauss%E2%80%93Newton_algorithm

Hopefully, the OLS coefficients will be close enough to the global minimum, and then the algorithm wouldn't need more than few iteration to converge. Any statistical software can easily perform the task.