cmu-phil / tetrad

Repository for the Tetrad Project, www.phil.cmu.edu/tetrad.
GNU General Public License v2.0
402 stars 110 forks source link

Proposal for cleaning up algorithms, test, scores for public consumption. #1007

Closed jdramsey closed 5 years ago

jdramsey commented 5 years ago

@cg09 @espinoj @yuanzhou @kvb2univpitt @chirayukong

All,

At the CCD meeting this morning, a suggestion was made that we should try to clarify the list of algorithms we put into the public version of Tetrad, maybe removing or fixing algorithms that don’t work all that well and consolidating a bit. The same could be said for the tests and scores we put into the public interface; the idea there is that we should removes ones that are misguided or serve no useful purpose. With some help from Clark, we’ve come up with the following proposal. Greg had proposed I put these into Github issues, so here goes. Please comment.

I list the algorithms that currently appear in the public development version of Tetrad (which will be made public unless we adjust them):

BPC - We should add MimBuild in as an option for this (a new checkbox that adds in the MimBuild edges in the output.

FAS - Good.

FASK - Good. We may want to add some new options at some point based on recent work.

FASK Concatenated -- this can go. You can concatenate the data yourself and run FASK.

FCI - Good.

FGES - Good. FGES-MB - Good. FOFC - As with BPC, we should add MimBuild in as an option for this (a new checkbox that adds in the MimBuild edges in the output.

FTFC - Good.

GFCI - Good.

GLASSO -- This implementation is a little flakey, and for our purposes there’s nothing it seems to do that FAS can’t do better.

IMaGES Continuous

IMaGES Discrete

…...it would still be good to find a way to combine these two into one IMaGES algorithm with different scores. There was an implementation issue with that.

LiNGAM - This implementation is wrong. We should either fix this or remove it. Peter and I are working on a fix.

MBFS - Good.

MGM - Good.

MIMBuild - Make this an option in BPC and FOFC and remove it.

MultiFask - Good.

R3 - Good.

RFCI - Good.

RFCI-BSC - Good.

RSkew - Good.

Skew - Good.

TsFCI - Good.

TsGFCI - Good.

TsIMaGES - Good.

Variants of PC -- Rename to PC Variants to get it further up alphabetically in the list. Otherwise good.

The algorithm I was worried about, IGCI, had already been removed, so that’s OK.

For tests:

We can remove Correlation T Test, since it's literally equivalent to Fisher Z.

For scores:

Remove SEM BIC Score Deterministic. This is not well thought out. I checked the code.

-Joe

jdramsey commented 5 years ago

@ps7z Peter, could you comment on this if you get a chance?

ps7z commented 5 years ago

Joe,

I basically agree with this list. With respect to glasso, could we check it against another implementation to see if it is working right? If it is, I think we should include it even if it doesn’t work better than other algorithms, since it is something that people might have heard of that would interest them in using Tetrad.

Peter

From: Joseph Ramsey notifications@github.com Reply-To: cmu-phil/tetrad reply@reply.github.com Date: Thursday, March 28, 2019 at 3:06 PM To: cmu-phil/tetrad tetrad@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: [cmu-phil/tetrad] Proposal for cleaning up algorithms, test, scores for public consumption.cg (#1007)

@cg09https://github.com/cg09 @espinojhttps://github.com/espinoj @yuanzhouhttps://github.com/yuanzhou @kvb2univpitthttps://github.com/kvb2univpitt @chirayukonghttps://github.com/chirayukong

All,

At the CCD meeting this morning, a suggestion was made that we should try to clarify the list of algorithms we put into the public version of Tetrad, maybe removing or fixing algorithms that don’t work all that well and consolidating a bit. The same could be said for the tests and scores we put into the public interface; the idea there is that we should removes ones that are misguided or serve no useful purpose. With some help from Clark, we’ve come up with the following proposal. Greg had proposed I put these into Github issues, so here goes. Please comment.

I list the algorithms that currently appear in the public development version of Tetrad (which will be made public unless we adjust them):

BPC - We should add MimBuild in as an option for this (a new checkbox that adds in the MimBuild edges in the output.

FAS - Good.

FASK - Good. We may want to add some new options at some point based on recent work.

FASK Concatenated -- this can go. You can concatenate the data yourself and run FASK.

FCI - Good.

FGES - Good. FGES-MB - Good. FOFC - As with BPC, we should add MimBuild in as an option for this (a new checkbox that adds in the MimBuild edges in the output.

FTFC - Good.

GFCI - Good.

GLASSO -- This implementation is a little flakey, and for our purposes there’s nothing it seems to do that FAS can’t do better.

IMaGES Continuous

IMaGES Discrete

…...it would still be good to find a way to combine these two into one IMaGES algorithm with different scores. There was an implementation issue with that.

LiNGAM - This implementation is wrong. We should either fix this or remove it. Peter and I are working on a fix.

MBFS - Good.

MGM - Good.

MIMBuild - Make this an option in BPC and FOFC and remove it.

MultiFask - Good.

R3 - Good.

RFCI - Good.

RFCI-BSC - Good.

RSkew - Good.

Skew - Good.

TsFCI - Good.

TsGFCI - Good.

TsIMaGES - Good.

Variants of PC -- Rename to PC Variants to get it further up alphabetically in the list. Otherwise good.

The algorithm I was worried about, IGCI, had already been removed, so that’s OK.

For tests:

We can remove Correlation T Test, since it's literally equivalent to Fisher Z.

For scores:

Remove SEM BIC Score Deterministic. This is not well thought out. I checked the code.

-Joe

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/cmu-phil/tetrad/issues/1007, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKStwl6hMR7IncAzYZtWol9NteGAotgVks5vbRKqgaJpZM4cQ7lN.