New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create InverseCovariance Subclass of EmpiricalCovariance #3
Comments
I see, are there any particular methods of interest that we would be inheriting from If not, it seems like inheriting from a class that is not intended to be a "base class" or "mixin" could introduce unexpected dependencies / bugs / behaviors. I do see that |
I would want to inherit all the defaults in EmpiricalCovariance for estimating the covariance, but override precision related things as well as the loss functions. Do you have an alternative suggestion? Or are you concerned that EmpiricalCovariance is not a good base class? |
I went back to look at sklearn's EmpiricalCovariance class. Not so sure using it as a Base is a good idea. For example the log-likelihood function depends on what the parameter of interest is. EmpiricalCovariance defines the log-likelihood for the inverse covariance
instead of log_likelihood for the covariance being defined as
Maybe implementation wise, this is just a minor issue? For instance, we could stick with current EmpiricalCovariance as the base and later mark the needed modifications to both EmpiricalCovariance and InverseCovariance? References: |
A few Qs:
|
I'm a bit swamped. Will take some time before I address all comments. You are correct about p. For our class what you printed is correct for inverse covariance log On Mon, Jun 13, 2016, 9:00 PM Jason Laska notifications@github.com wrote:
|
The QUIC algorithm estimates the inverse covariance using the sample covariance estimate$S$ as an input
$ That = max_{\Theta} logdet(Theta) - Trace(Theta_S) - \lambda_| \Theta |_1 $
As a result it makes sense for the sample covariance for QUIC to be computed using the methods inherited from the EmpiricalCovariance class.
Additionally, the log-likelihood and error metrics for the inverse covariance will differ from that of the covariance matrix. Thus corresponding methods in EmpiricalCovariance will need to be overridden where relevant. We need the ones below
The text was updated successfully, but these errors were encountered: