What to do with variances in a covariance matrix?

Click For Summary
SUMMARY

The discussion focuses on utilizing a covariance matrix obtained from the Levenberg-Marquardt method for parameter estimation in a model describing time differences of a pulsar's pulse due to planetary radial velocity. The covariance matrix provides variances on its diagonal, which represent the errors in the parameter estimates. If the matrix is the Hessian, inverting it yields the variance/covariance matrix, allowing for the calculation of standard errors. The standard error can be derived by taking the square root of the diagonal elements of the covariance matrix.

PREREQUISITES
  • Understanding of covariance matrices and their significance in statistical modeling.
  • Familiarity with the Levenberg-Marquardt optimization algorithm.
  • Knowledge of Jacobian and Hessian matrices in the context of parameter fitting.
  • Basic statistical concepts, including variance and standard error.
NEXT STEPS
  • Learn about the Levenberg-Marquardt algorithm and its applications in curve fitting.
  • Study the properties and applications of Jacobian and Hessian matrices in optimization.
  • Explore how to compute standard errors from covariance matrices in statistical analysis.
  • Investigate advanced statistical methods for parameter estimation and error analysis.
USEFUL FOR

Researchers and data analysts working with parameter estimation in models, particularly in astrophysics or any field utilizing curve fitting techniques. This discussion is beneficial for those seeking to understand the implications of covariance matrices in their analyses.

snipertje
Messages
11
Reaction score
0
How to get a covariance matrix is well defined, but I don't really know how to use it once obtained.

I'm trying to find the best parameters for a data set with a given function. I'm having four parameters a1,a2,a3,a4 and from these parameters I have the covariance matrix. I'm supposed to get the 'errors' of the parameters from the matrix. I know that the covariance between the same element gives the variance so the elements on the diagonal of the matrix (when i=j) give the variances. I can't really figure out what the variance means, is it an absolute error in the parameters or maybe a relative error? Or maybe it's something quite different, can anyone explain me what the variance means?
 
Physics news on Phys.org
snipertje said:
I'm trying to find the best parameters for a data set with a given function. I'm having four parameters a1,a2,a3,a4 and from these parameters I have the covariance matrix.

Let's clarify what you are doing. You have some data. What is the format of the data?

You say you have 4 parameters. Does this mean that you have determined the numerical values of thse parameters? If so, did you do this with a curve fitting method? What method?

You say that you have the covariance matrix. Is the covariance matrix for the parameters? Or is it for the components of the data? Do you know how this matrix was computed or is it merely an output of some curve fitting software?
 
Stephen Tashi said:
Let's clarify what you are doing. You have some data. What is the format of the data?

You say you have 4 parameters. Does this mean that you have determined the numerical values of thse parameters? If so, did you do this with a curve fitting method? What method?

You say that you have the covariance matrix. Is the covariance matrix for the parameters? Or is it for the components of the data? Do you know how this matrix was computed or is it merely an output of some curve fitting software?
The data I have is the time differences of a measured pulse from a pulsar due to the radial velocity caused by a planet, the times at which this is measured and the errors of the measurement.

From theory follows this formula ΔT=a1+a2*sin(a3*t+a4) (note: ΔT and t are independent). I use the Levenberg-Marquardt method to find the best fitting parameter values. This numerical method uses a covariance matrix, which is returned once you stop the 'routine'. So what I have now is the best parameter values, but I somehow need to get the 'errors' in these values from the covariance matrix of these parameters.

I hope it's a bit more clear now.
 
snipertje said:
The data I have is the time differences of a measured pulse from a pulsar due to the radial velocity caused by a planet, the times at which this is measured and the errors of the measurement.

From theory follows this formula ΔT=a1+a2*sin(a3*t+a4) (note: ΔT and t are independent). I use the Levenberg-Marquardt method to find the best fitting parameter values. This numerical method uses a covariance matrix, which is returned once you stop the 'routine'. So what I have now is the best parameter values, but I somehow need to get the 'errors' in these values from the covariance matrix of these parameters.

I hope it's a bit more clear now.

Hi snipertje!

Yeah, much more clear now! When fitting several parameters into a model, typically pseudo-Newtonian methods like the one you mention are used which means Jacobian and Hessian matrices are going to be involved in the process.

Now, fortunately, it turns out that the inverse of the Hessian matrix approximates the variance/covariance matrix of the parameters involved in the model.

I'm explaining all this because you must make sure if the matrix you have is the Hessian returned by the algorithm or the approximation given by the Hessian (the actual variance/covariance matrix you won't have it).

If it is the approximation of the variance/covariance matrix simply square root the diagonal (that is the variance of each parameter) and that will be the standard error you're looking for.

If it is the Hessian, then invert the matrix and treat it like if it was the variance/covariance matrix to calculate the standard error.

I hope this helps! :smile:
 
Last edited:
viraltux said:
Hi snipertje!

Yeah, much more clear now! When fitting several parameters into a model, typically pseudo-Newtonian methods like the one you mention are used which means Jacobian and/or Hessian matrices are going to be involved in the process.

Now, fortunately, it turns out that the inverse of the Hessian matrix approximates the variance/covariance matrix of the parameters involved in the model.

I'm explaining all this because you must make sure if the matrix you have is the Hessian returned by the algorithm or the approximation given by the Hessian (the actual variance/covariance matrix you won't have it).

If it is the approximation of the variance/covariance matrix simply square root the diagonal (that is the variance of each parameter) and that will be the standard error you're looking for.

If it is the Hessian, then invert the matrix and treat it like if it was the variance/covariance matrix to calculate the standard error.

I hope this help! :smile:

This is exactly what I wanted to know, thanks a lot. I'm pretty sure that it indeed is the Hessian which the method uses, but the subroutine I use inverts it when you tell it to stop, so I get precisely what you say here. Cheers
 

Similar threads

  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 14 ·
Replies
14
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
Replies
13
Views
2K
  • · Replies 7 ·
Replies
7
Views
2K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 5 ·
Replies
5
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K