-
Notifications
You must be signed in to change notification settings - Fork 113
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
Cyclic Causal Discovery Algorithms #1577
Comments
Well, CCD I can never get to work correctly (very hit or miss), so I took it out of the interface. CCI for us refers to a certain test, not a search algorithm. We have code for LiNG, but it needs to be recorded. The implementation was not coded well before; after many refactorings, I realized I just needed to recode it from scratch. I'll do that. Maybe GPT4 can help. We do have one algorithm that does well with cyclic graphs, which is FASK... let me see if I can find the paper for that... https://www.biorxiv.org/content/10.1101/245936v1.abstract We compared FASK and a Matlab algorithms called Two Step on a cyclic fMRI task. |
Fask extracts cyclic models from time series with feedback in linear,
non-Gaussian systems. See
https://www.readcube.com/articles/10.1162%2Fnetn_a_00061
Some older versions of TETRAD will have Ling. Joe, where is the FASK code
and are there directions to finding 2 step on github? I don't know where
Kun put it, if he did.
Clark
…On Tue, Apr 4, 2023 at 12:11 AM Joseph Ramsey ***@***.***> wrote:
Well, CCD I can never get to work correctly, so I took it out of the
interface. CCI for us refers to a certain test, not a search algorithm. We
have code for LiNG, but it needs to be recoded.
We do have one algorithm that does well with cyclic graphs, which is
FASK... let me see if I can find the paper for that...
https://www.biorxiv.org/content/10.1101/245936v1.abstract
We compared FASK and a Matlab algorithms called Two Step on a cyclic fMRI
task.
—
Reply to this email directly, view it on GitHub
<#1577 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AD4Y3OP325JV2V2FMXGU2MTW7ONNTANCNFSM6AAAAAAWSEPYKI>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Thank you so much Dr. Ramsey & Dr. Glymour. This is like a big fan moment for me to get a reply from your side. I shall go through the papers that you have mentioned. Thank you so much. On a side note, I must mention that I am finding it difficult to run the rcausal package in R, which is an wrapper written in R for Tetrad library. There is a ccd() function for Cyclic Causal Discovery algorithm (Richardson, 1996) there but it is giving error everytime I run. The error I am getting is as follows,
Error in ccd(df = audiology, continuous = FALSE, depth = -1, verbose = TRUE) : Could you help me with this? I am well aware of the fact that the rcausal package has not been updated since 2019 and this is the next project that you are going to take up in future. |
It's interesting that you should ask this question right at this time; just this week (including work in the last few hours by me) we've been trying to come up with a way to use the most recent Tetrad jar for including Tetrad in R. Maybe you want to be a Guinea pig? This is fresh code; there could still be bugs, but your feedback would be invaluable. Here's the project--the part of the project for incorporating Tetrad into Python already works quite well, but we just added a Python class, TetradSearch, that seems to work quite well from R. I'd be very curious whether you can follow the instructions for getting it to work and if not where you get stuck. |
I did not put CCD into this build, though I could if you really want to use it. I've just had so much trouble with accuracy for it. |
And I'm glad you're able to use Tetrad--that's nice! |
Thanks Dr Ramsey. I am happy to be the guinea pig for this noble cause. It would be great if you could put CCD in this build and I can check on that too. |
I will add it and organize the instructions a little better. :) |
Thank you so much, Dr Ramsey. |
The setup for this may be annoying, but the payoff of going through all the setup will be very nice--it will be so easy to run Tetrad algorithms in R! @bja43, and I thought up this way of doing it yesterday. Very experimental, but very curious about what you think. I've put the instructions in the R README.md file in py-tetrad. I'll edit them there. |
By the way, I edited the above several times, and to anyone who as a result go a slew of emails, I humbly apologize! |
Thank you so much, Dr Ramsey. It would be helpful if you give me sometime to go through the steps and apply it on my MAC. |
Take your time. Also, if a step is not working for you, let me know, but you're using a Mac; I think it should work in principle. |
I was trying to follow what you explicitly wrote in the README file for calling the python class from R.
However I must mention that I have python 3.11 installed on my MAC with pycharm as an IDE. I have installed JPype in the pycharm terminal with the following command -
And there was no error during the installation process. Could you point me to the direction where I am doing wrong? |
I'll add a note--installing JPype was part of the installation process for setting up py-tetrad. Let me fix that. |
OK, I pasted the py-tetrad install instructions into that page; I may simplify it though, especially since as you say all you really need to do it type pip install JPype1. Let me think about it. Anyway here's the revision: https://github.com/cmu-phil/py-tetrad/blob/main/pytetrad/R/README.md |
Yeah hold on let me simplify. |
OK, I simplified it. Hopefully it's clearer! |
I simplified it more... (I'm really bad at writing instructions like this and have to go through several revisions...) |
Maybe hold on a bit, @bja43 is doing some revisions... |
The TETRAD GUI application does not support any cyclic causal discovery algorithms like CCD, CCI, LiNG as of now, right??
The text was updated successfully, but these errors were encountered: