Comments (6)
The arrow strength has some sampling for estimation which leads to variations between runs. You can reduce this by changing some parameters like tolerance
(to a smaller number).
Generally, if the rankings change that much between runs, it seems the connections are either equally strong or too weak in general (or the model simply isn't capturing them accurately enough). What is the range of the values?
You can also take a look at estimating confidence intervals, they might provide better insights:
https://www.pywhy.org/dowhy/v0.11.1/user_guide/modeling_gcm/estimating_confidence_intervals.html#conveniently-bootstrapping-graph-training-on-random-subsets-of-training-data
from dowhy.
Thanks for sharing the link and this is helpful.
Is there any recommendation in the library on the following?
- If the causal graph structure is not very certain. The "auto" option takes care of causal mechanisms, but is there anything similar for graph too?
- What are the recommendations to improve this if we get say following evaluation result?
The overall average KL divergence between the generated and observed distribution is 0.6444021604490836
The estimated KL divergence indicates a good representation of the data distribution, but might indicate some smaller mismatches between the distributions.
from dowhy.
This issue is stale because it has been open for 14 days with no activity.
from dowhy.
Sorry for the late reply!
1. If the causal graph structure is not very certain. The "auto" option takes care of causal mechanisms, but is there anything similar for graph too?
You can take a look at https://github.com/py-why/causal-learn, this is a package for inferring the causal graph based on data.
2. What are the recommendations to improve this if we get say following evaluation result?
You could try and set the parameter for the quality in the auto assignment function to BETTER
(see the docstring of the function). Let me know if this improves the results (i.e., lower KL divergence). Otherwise, you might need to manually check which causal mechanisms can be improved. Maybe the performance results of nodes can give some insights.
from dowhy.
This issue is stale because it has been open for 14 days with no activity.
from dowhy.
This issue was closed because it has been inactive for 7 days since being marked as stale.
from dowhy.
Related Issues (20)
- how to use the function of estimate_effect of CausalModel class? HOT 4
- conda release 0.11.1 is missing HOT 1
- File Not Found error in Jupyter Notebook when i use auto.assign_causal_mechnism HOT 8
- buggidy giggidy
- Counterfactual Reasoning with Categorical Variables HOT 3
- Time complexity of constructing cause-and-effect diagram HOT 3
- Support polars data frames HOT 2
- What is the purpose of providing observation data in gcm.conventional_samples()?
- Python 3.12 support HOT 9
- Clarify the differences among refute methods HOT 11
- Feature relevance/Influence HOT 26
- Graphviz installation : --include-path not recognized anymore HOT 4
- Does this package support non-English languages? HOT 3
- Question about Dummy Outcome Refuter HOT 2
- Inconsistency in the placebo_treatment_refuter when using estimate_effect of IV HOT 1
- numpy.dual is dropped but it still occurs in dowhy HOT 2
- NetworkXError: graph should be directed acyclic HOT 4
- Refutation & Overlap Error ("data_subset_refuter", "add_unobserved_common_cause", assess_support_and_overlap_overrule) HOT 2
- No Backdoor Path Available
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dowhy.