-
-Factorizing the Joint Distribution
-
-
-
-Factorizing the Joint Distribution
-
-We have seen how these graphical models can be used to determine whether or not we can identify a treatment effect.
-However, we can also use them as a computational tool, to help us find the simplest representation of the joint distribution of the data.
-This is useful because it allows us to find the simplest model that is consistent with our assumptions about conditional independence.
-
-
-
-Factorizing the Joint Distribution
-
-To understand why this is useful, we’ll follow this example (from Mark Paskin).
-Suppose we have a DGP with five variables:
-
-- \(E\in\{true, false\}\) - Has an earthquake happened? Earthquakes are unlikely
-- \(B\in\{true, false\}\) - Has a burglary happened? Burglaries are unlikely, but more likely than earthquakes
-- \(A\in\{true, false\}\) - Is the alarm going off? The alarm is triggered by both earthquakes and burglaries
-- \(J\in\{true, false\}\) - Is John calling? John calls when he hears the alarm, but he often misses it
-- \(M\in\{true, false\}\) - Is Mary calling? Mary calls when she hears the alarm, but she also calls to chat
-
-
-
-
-Factorizing the Joint Distribution
-
-- The goal is to compute \(P(B|J=true)\) from the joint distribution \(P(E,B,A,J,M)\). We’ll start by drawing the graphical model, to understand the conditional independence relationships.
-
-
-
-
-Factorizing the Joint Distribution
-
-
-- In order to represent the full joint distribution, we could use the chain rule of probabilities:
-
-\[
-P(E,B,A,J,M) = P(E)P(B|E)P(A|E,B)P(J|E,B,A)P(M|E,B,A,J)
-\]
-
-- Q: How many probabilities would we need to compute to represent the joint distribution this way?
-
-
-
-Factorizing the Joint Distribution
-
-
-- In order to represent the full joint distribution, we could use the chain rule of probabilities:
-
-\[
-\underbrace{P(E,B,A,J,M)}_{31} = \underbrace{P(E)}_{1} \underbrace{P(B|E)}_{2} \underbrace{P(A|E,B)}_{4} \underbrace{P(J|E,B,A)}_{8} \underbrace{P(M|E,B,A,J)}_{16}
-\]
-
-- Q: How many probabilities would we need to store to represent the joint distribution this way?
-
-- A: There are \(2^5\) possible outcomes. We need 31 probabilities. (why not 32?)
-
-
-
-
-Factorizing the Joint Distribution
-
-
-- However, we can use the conditional independence relationships to simplify this representation.
-
-- For example, we know that \(P(B|E) = P(B)\), because \(B\) and \(E\) are independent.
-- We also know that \(P(A|E,B) = P(A|B)\), because \(A\) is independent of \(E\), given \(B\).
-
-- This means that we can simplify the joint distribution to:
-
-\[
-\underbrace{P(E,B,A,J,M)}_{10} = \underbrace{P(E)}_1 \underbrace{P(B)}_1 \underbrace{P(A|E,B)}_4 \underbrace{P(J|A)}_2 \underbrace{P(M|A)}_2
-\]
-
-
-Factorizing the Joint Distribution
-
-Beyond causal inference, graphical models are a useful tool for computing all kinds of conditional probabilities.
-This is useful in many inference problems, and in structural econometrics
-
-- The likelihood function is the conditional probability of the data, given the parameter values
-- In Bayesian inference the posterior is the conditional probability of the parameters, given the data (and our priors)
-
-
-
-
-Variable Elimination
-
-In order to simplify a conditional distribution, we can use variable elimination.
-For example, let’s say we want to compute the probability of a burglary, given that John calls.
-
-\[
-\begin{aligned}
-&p_{B \mid J}(b, \text { true }) \propto \sum_e \sum_a \sum_m p_{E B A J M}(e, b, a, \text { true }, m) \\
-& =\sum_e \sum_a \sum_m p_E(e) \cdot p_B(b) \cdot p_{A \mid E B}(a, e, b) \cdot p_{J \mid A}(\text { true }, a) \cdot p_{M \mid A}(m, a)
-\end{aligned}
-\]
-
-- Then, we can reduce the computational complexity by eliminating variables one at a time, exploiting the distributive property of multiplication
-
-- \(xy + xz = x(y + z)\).
-
-
-
-
-Variable Elimination
-
-- Variable elimination works like this:
-
-- Repeat the following steps:
-
-
-- choose a variable to eliminate
-- push in its sum as far as possible
-- compute the sum, resulting in a new factor
-
-
-
-
-Variable Elimination
-\[
-\begin{aligned}
-&\sum_e \sum_a \sum_m p_E(e) \cdot p_B(b) \cdot p_{A \mid E B}(a, e, b) \cdot p_{J \mid A}(\text { true }, a) \cdot p_{M \mid A}(m, a) \\
-& =\sum_e \sum_a p_E(e) \cdot p_B(b) \cdot p_{A \mid E B}(a, e, b) \cdot p_{J \mid A}(\text { true }, a) \cdot \sum_m p_{M \mid A}(m, a) \\
-& =\sum_e \sum_a p_E(e) \cdot p_B(b) \cdot p_{A \mid E B}(a, e, b) \cdot p_{J \mid A}(\text { true }, a) \cdot \psi_A(a) \\
-& =\sum_e p_E(e) \cdot p_B(b) \cdot \sum_a p_{A \mid E B}(a, e, b) \cdot p_{J \mid A}(\text { true }, a) \cdot \psi_A(a) \\
-& =\sum_e p_E(e) \cdot p_B(b) \cdot \psi_{E B}(e, b) \\
-& =p_B(b) \cdot \sum_e p_E(e) \cdot \psi_{E B}(e, b) \\
-& =p_B(b) \cdot \psi_B(b)
-\end{aligned}
-\]
-
-
-Variable Elimination
-
-- That’s a lot of math! But let’s focus on the first step: \[
-\begin{aligned}
-& p_{B \mid J}(b, \text { true }) \propto \\
-&\underbrace{\underbrace{\sum_e \sum_a \sum_m}_{2^3 = 8\text{ iterations}} \underbrace{p_E(e) \cdot p_B(b) \cdot p_{A \mid E B}(a, e, b) \cdot p_{J \mid A}(\text { true }, a) \cdot p_{M \mid A}(m, a)}_{4\text{ multiplications}}}_{8*4=32\text{ multiplications }+7\text{ additions}=39\text{ total operations}}
-\end{aligned}
-\]
-
-
-
-Variable Elimination
-
-- That’s a lot of math! But let’s focus on the first step: \[
-\begin{aligned}
-& p_{B \mid J}(b, \text { true }) \propto \\
-&\underbrace{\underbrace{\sum_e \sum_a \sum_m}_{2^3 = 8\text{ iterations}} \underbrace{p_E(e) \cdot p_B(b) \cdot p_{A \mid E B}(a, e, b) \cdot p_{J \mid A}(\text { true }, a) \cdot p_{M \mid A}(m, a)}_{4\text{ multiplications}}}_{8*4=32\text{ multiplications }+7\text{ additions}=39\text{ total operations}} \\\\
-& =\underbrace{\underbrace{\sum_e \sum_a}_{2^2 = 4\text{ iterations}} \underbrace{p_E(e) \cdot p_B(b) \cdot p_{A \mid E B}(a, e, b) \cdot p_{J \mid A}(\text { true }, a) \cdot }_{4\text{ multiplications}} \underbrace{\sum_m p_{M \mid A}(m, a)}_{1\text{ addition}}}_{4*(4\text{ multiplications} + 1\text{ addition}) + 3\text{ additions} = 23\text{ total operations}} \\
-\end{aligned}
-\]
-
-
-
-Variable Elimination
-
-Variable elimination is an algorithm that exploits our conditional independence assumptions to reduce the computational complexity of conditional probabilities.
-In this case, we were able to reduce the number of operations from 39 to 23 operations in just one step, each further step will continue to reduce the complexity.
-This is a very simple example, because we only have 5 variables. In practice, we might have hundreds or thousands of variables, and the computational complexity can become very large.
-Systematic patterns of conditional independence can be exploited to reduce the complexity of inference problems in some large models.
-
Credits
diff --git a/lectures/lectures/causal_graphical_models.ipynb b/lectures/lectures/causal_graphical_models.ipynb
index a9bd2b7..901d0e6 100644
--- a/lectures/lectures/causal_graphical_models.ipynb
+++ b/lectures/lectures/causal_graphical_models.ipynb
@@ -6,7 +6,7 @@
"source": [
"# ECON526: Quantitative Economics with Data Science Applications\n",
"\n",
- "Directed Graphical Models and Causality\n",
+ "Introduction to Directed Acyclic Graphs\n",
"\n",
"Phil Solimine (University of British Columbia)\n",
"\n",
@@ -84,7 +84,7 @@
"\n",
"- A directed graphical model might look something like this:"
],
- "id": "275de8ce-9151-4e06-b894-00611be3713a"
+ "id": "85cc77ac-a74c-44e4-afdc-29fa59e143ba"
},
{
"cell_type": "code",
@@ -112,7 +112,7 @@
"g.edge('Z', 'Y')\n",
"g"
],
- "id": "2a5ee5d2"
+ "id": "9dd3b9a6"
},
{
"cell_type": "markdown",
@@ -124,7 +124,7 @@
"\n",
"## Directed Graphical Models"
],
- "id": "fd5e110b-5897-4d09-99e3-ef0a2a966f60"
+ "id": "34a34acc-8cef-416c-a6d8-76a69815f7a3"
},
{
"cell_type": "code",
@@ -148,7 +148,7 @@
"g.edge(\"severeness\", \"medicine\")\n",
"g"
],
- "id": "57be38c5"
+ "id": "a75db644"
},
{
"cell_type": "markdown",
@@ -173,7 +173,7 @@
"\n",
"## Directed Graphical Models"
],
- "id": "4889b381-ee31-481a-9405-d9493ff037da"
+ "id": "496d6749-371a-4218-b834-5efbc07d1bd3"
},
{
"cell_type": "code",
@@ -205,7 +205,7 @@
"\n",
"g"
],
- "id": "f5d47833"
+ "id": "63fd93a3"
},
{
"cell_type": "markdown",
@@ -253,7 +253,7 @@
"\n",
"Now let’s look at another common structure:"
],
- "id": "ae7c3355-83ee-4510-9e17-04f732e5ae0d"
+ "id": "171c8f12-d930-430c-a318-0f92b1067554"
},
{
"cell_type": "code",
@@ -284,7 +284,7 @@
"\n",
"g"
],
- "id": "0c97f505"
+ "id": "3adadb58"
},
{
"cell_type": "markdown",
@@ -295,7 +295,7 @@
"\n",
"## Directed Graphical Models"
],
- "id": "ebe6faec-5ace-44bc-a37e-994b33165750"
+ "id": "00c19592-fd0d-4afd-b137-37b8a33de17f"
},
{
"cell_type": "code",
@@ -313,7 +313,7 @@
"source": [
"g"
],
- "id": "3c903f53"
+ "id": "797fc24c"
},
{
"cell_type": "markdown",
@@ -330,7 +330,7 @@
"\n",
"## Directed Graphical Models"
],
- "id": "aec8e61c-ed8f-4150-99a2-bd6e6b10aad8"
+ "id": "465dd26a-b281-42d9-a870-d1c9340b3322"
},
{
"cell_type": "code",
@@ -348,7 +348,7 @@
"source": [
"g"
],
- "id": "cb0623af"
+ "id": "c2c392cd"
},
{
"cell_type": "markdown",
@@ -363,7 +363,7 @@
"\n",
"Finally, let’s look at a third common structure, called a **collider**:"
],
- "id": "28fbe80e-235c-4dfa-b273-d5f3a818bd1d"
+ "id": "75cc42a0-c68a-412c-8ba2-e205d94d8c93"
},
{
"cell_type": "code",
@@ -394,7 +394,7 @@
"\n",
"g"
],
- "id": "023b3fbf"
+ "id": "eadccd31"
},
{
"cell_type": "markdown",
@@ -435,7 +435,7 @@
"- Let’s say we were interested in the effect of online classes on\n",
" college dropout rates. The treatment effect we want to identify is:"
],
- "id": "17a0d5bd-9cfe-4501-b726-d7809748cc4d"
+ "id": "dc86fee0-90fd-4b90-ad05-90d18732cf07"
},
{
"cell_type": "code",
@@ -455,7 +455,7 @@
"g.edge(\"OnlineClass\", \"Dropout\", style=\"dashed\")\n",
"g"
],
- "id": "a9a51bf5"
+ "id": "09fbd1eb"
},
{
"cell_type": "markdown",
@@ -466,7 +466,7 @@
"- In addition to `OnlineClass`, there are **many** variables that\n",
" might cause a student to drop out of college."
],
- "id": "684a804a-2e8d-4409-ad4f-a6f6ae2ca032"
+ "id": "cbc4651e-856f-47f1-8d8d-38d6ed344434"
},
{
"cell_type": "code",
@@ -490,7 +490,7 @@
"\n",
"g"
],
- "id": "caabe963"
+ "id": "779be6e4"
},
{
"cell_type": "markdown",
@@ -501,7 +501,7 @@
"- Some of these variables might **also** determine whether or not a\n",
" student takes an online class."
],
- "id": "e977a379-da4e-4d51-bca9-e057a0430c01"
+ "id": "b09b0cf1-6a64-4f4a-8d09-67c15aa79731"
},
{
"cell_type": "code",
@@ -521,7 +521,7 @@
"\n",
"g"
],
- "id": "4dc4eafc"
+ "id": "b6b15dfa"
},
{
"cell_type": "markdown",
@@ -532,7 +532,7 @@
"- Then there are some other variables that affect just `OnlineClass`\n",
" and not `Dropout`"
],
- "id": "aff1b5ba-9ee6-4e43-a7b0-2bbbc59c409d"
+ "id": "bf47df39-8d40-447f-9d15-99dbba5a7f40"
},
{
"cell_type": "code",
@@ -553,7 +553,7 @@
"\n",
"g"
],
- "id": "5a55117a"
+ "id": "5ed83819"
},
{
"cell_type": "markdown",
@@ -563,7 +563,7 @@
"\n",
"- There are relationships between some of these variables as well"
],
- "id": "43d48b68-8696-4fd7-957a-8cf788454485"
+ "id": "cc3c2f99-e1f1-4f66-a558-d5fba395d6d1"
},
{
"cell_type": "code",
@@ -586,7 +586,7 @@
"\n",
"g"
],
- "id": "62897f63"
+ "id": "d8e0b476"
},
{
"cell_type": "markdown",
@@ -598,7 +598,7 @@
" variables, there might be an indirect relationship through a third\n",
" variable"
],
- "id": "7ecffc84-d215-4160-b653-a0d11449daf8"
+ "id": "c53a26d8-170c-422e-8381-c8e406f55614"
},
{
"cell_type": "code",
@@ -627,7 +627,7 @@
"\n",
"g"
],
- "id": "8eed9cd8"
+ "id": "d06bfd0e"
},
{
"cell_type": "markdown",
@@ -638,7 +638,7 @@
"- And then there are some variables that we know are correlated, but\n",
" due to some other combination of unknown factors"
],
- "id": "7ecbde3b-faab-48d6-a88d-332e0b3d978b"
+ "id": "7dc322d9-32e5-4983-9d0f-ca2c05590f40"
},
{
"cell_type": "code",
@@ -676,7 +676,7 @@
"\n",
"g"
],
- "id": "6d4e03d5"
+ "id": "aef21e18"
},
{
"cell_type": "markdown",
@@ -798,7 +798,7 @@
"image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSI2NjVwdCIgaGVpZ2h0PSI0MDRwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCA2NjQuNjcg\nNDA0LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDQwMCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC00\nMDAgNjYwLjY3LC00MDAgNjYwLjY3LDQgLTQsNCIvPgo8IS0tIE9ubGluZUNsYXNzIC0tPgo8ZyBp\nZD0ibm9kZTEiIGNsYXNzPSJub2RlIj4KPHRpdGxlPk9ubGluZUNsYXNzPC90aXRsZT4KPGVsbGlw\nc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjMxNy40MyIgY3k9Ii05MCIgcng9IjUz\nLjg5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMzE3LjQzIiB5PSIt\nODYuMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4w\nMCI+T25saW5lQ2xhc3M8L3RleHQ+CjwvZz4KPCEtLSBEcm9wb3V0IC0tPgo8ZyBpZD0ibm9kZTIi\nIGNsYXNzPSJub2RlIj4KPHRpdGxlPkRyb3BvdXQ8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25l\nIiBzdHJva2U9ImJsYWNrIiBjeD0iMTczLjQzIiBjeT0iLTE4IiByeD0iNDAuMDkiIHJ5PSIxOCIv\nPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIxNzMuNDMiIHk9Ii0xNC4zIiBmb250LWZh\nbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5Ecm9wb3V0PC90\nZXh0Pgo8L2c+CjwhLS0gT25saW5lQ2xhc3MmIzQ1OyZndDtEcm9wb3V0IC0tPgo8ZyBpZD0iZWRn\nZTEiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPk9ubGluZUNsYXNzJiM0NTsmZ3Q7RHJvcG91dDwvdGl0\nbGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS1kYXNoYXJyYXk9IjUs\nMiIgZD0iTTI4OC4yOSwtNzQuODNDMjY1LjM2LC02My42OSAyMzMuMzIsLTQ4LjExIDIwOC45LC0z\nNi4yNCIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIyMTAu\nMTQsLTMyLjk2IDE5OS42MiwtMzEuNzMgMjA3LjA4LC0zOS4yNSAyMTAuMTQsLTMyLjk2Ii8+Cjwv\nZz4KPCEtLSBBdmFpbGFibGVUaW1lIC0tPgo8ZyBpZD0ibm9kZTMiIGNsYXNzPSJub2RlIj4KPHRp\ndGxlPkF2YWlsYWJsZVRpbWU8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJs\nYWNrIiBjeD0iMjE5LjQzIiBjeT0iLTE2MiIgcng9IjYzLjg5IiByeT0iMTgiLz4KPHRleHQgdGV4\ndC1hbmNob3I9Im1pZGRsZSIgeD0iMjE5LjQzIiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1l\ncyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkF2YWlsYWJsZVRpbWU8L3RleHQ+\nCjwvZz4KPCEtLSBBdmFpbGFibGVUaW1lJiM0NTsmZ3Q7T25saW5lQ2xhc3MgLS0+CjxnIGlkPSJl\nZGdlNyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+QXZhaWxhYmxlVGltZSYjNDU7Jmd0O09ubGluZUNs\nYXNzPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTI0MS42Niwt\nMTQ1LjEyQzI1NS4xNywtMTM1LjQ3IDI3Mi41OCwtMTIzLjA0IDI4Ny4zLC0xMTIuNTIiLz4KPHBv\nbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMjg5LjUxLC0xMTUuMjQg\nMjk1LjYxLC0xMDYuNTggMjg1LjQ0LC0xMDkuNTQgMjg5LjUxLC0xMTUuMjQiLz4KPC9nPgo8IS0t\nIEF2YWlsYWJsZVRpbWUmIzQ1OyZndDtEcm9wb3V0IC0tPgo8ZyBpZD0iZWRnZTIiIGNsYXNzPSJl\nZGdlIj4KPHRpdGxlPkF2YWlsYWJsZVRpbWUmIzQ1OyZndDtEcm9wb3V0PC90aXRsZT4KPHBhdGgg\nZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTIxMy44OCwtMTQzLjg3QzIwNiwtMTE5LjU2\nIDE5MS41MSwtNzQuODIgMTgyLjE4LC00Ni4wMSIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ry\nb2tlPSJibGFjayIgcG9pbnRzPSIxODUuNDEsLTQ0LjYyIDE3OC45OSwtMzYuMTkgMTc4Ljc1LC00\nNi43OCAxODUuNDEsLTQ0LjYyIi8+CjwvZz4KPCEtLSBBZ2UgLS0+CjxnIGlkPSJub2RlNCIgY2xh\nc3M9Im5vZGUiPgo8dGl0bGU+QWdlPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tl\nPSJibGFjayIgY3g9IjMyMC40MyIgY3k9Ii0zMDYiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRl\neHQtYW5jaG9yPSJtaWRkbGUiIHg9IjMyMC40MyIgeT0iLTMwMi4zIiBmb250LWZhbWlseT0iVGlt\nZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5BZ2U8L3RleHQ+CjwvZz4KPCEt\nLSBBZ2UmIzQ1OyZndDtEcm9wb3V0IC0tPgo8ZyBpZD0iZWRnZTMiIGNsYXNzPSJlZGdlIj4KPHRp\ndGxlPkFnZSYjNDU7Jmd0O0Ryb3BvdXQ8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9\nImJsYWNrIiBkPSJNMjk1Ljk2LC0yOTcuODFDMjQ3LjAzLC0yODMuNDEgMTQxLjcyLC0yNTIuNCAx\nNDEuNDMsLTI1MiA5NC44OSwtMTg5LjY5IDEzNS4zMSwtOTEuMTMgMTU5LjA2LC00NC43NSIvPgo8\ncG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIxNjIuMjcsLTQ2LjE1\nIDE2My44MywtMzUuNjcgMTU2LjA4LC00Mi44OSAxNjIuMjcsLTQ2LjE1Ii8+CjwvZz4KPCEtLSBB\nZ2UmIzQ1OyZndDtBdmFpbGFibGVUaW1lIC0tPgo8ZyBpZD0iZWRnZTEwIiBjbGFzcz0iZWRnZSI+\nCjx0aXRsZT5BZ2UmIzQ1OyZndDtBdmFpbGFibGVUaW1lPC90aXRsZT4KPHBhdGggZmlsbD0ibm9u\nZSIgc3Ryb2tlPSJibGFjayIgZD0iTTMxMC45MSwtMjg4Ljg1QzMwMC4wMywtMjcwLjcxIDI4MS40\nLC0yNDAuNTkgMjYzLjQzLC0yMTYgMjU2LjQsLTIwNi4zOSAyNDguMTksLTE5Ni4yNCAyNDAuNzcs\nLTE4Ny40MyIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIy\nNDMuMzksLTE4NS4xIDIzNC4yNCwtMTc5Ljc2IDIzOC4wNiwtMTg5LjY0IDI0My4zOSwtMTg1LjEi\nLz4KPC9nPgo8IS0tIFByZWZlcmVuY2VzIC0tPgo8ZyBpZD0ibm9kZTkiIGNsYXNzPSJub2RlIj4K\nPHRpdGxlPlByZWZlcmVuY2VzPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJi\nbGFjayIgY3g9IjM1OC40MyIgY3k9Ii0xNjIiIHJ4PSI1MS45OSIgcnk9IjE4Ii8+Cjx0ZXh0IHRl\neHQtYW5jaG9yPSJtaWRkbGUiIHg9IjM1OC40MyIgeT0iLTE1OC4zIiBmb250LWZhbWlseT0iVGlt\nZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5QcmVmZXJlbmNlczwvdGV4dD4K\nPC9nPgo8IS0tIEFnZSYjNDU7Jmd0O1ByZWZlcmVuY2VzIC0tPgo8ZyBpZD0iZWRnZTExIiBjbGFz\ncz0iZWRnZSI+Cjx0aXRsZT5BZ2UmIzQ1OyZndDtQcmVmZXJlbmNlczwvdGl0bGU+CjxwYXRoIGZp\nbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik0zMjQuOTMsLTI4OC4xNUMzMzEuNDEsLTI2My45\nNCAzNDMuNDMsLTIxOS4wNSAzNTEuMTcsLTE5MC4xMyIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIg\nc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIzNTQuNiwtMTkwLjgzIDM1My44MSwtMTgwLjI3IDM0Ny44\nNCwtMTg5LjAyIDM1NC42LC0xOTAuODMiLz4KPC9nPgo8IS0tIFNFUyAtLT4KPGcgaWQ9Im5vZGUx\nMSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+U0VTPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIg\nc3Ryb2tlPSJibGFjayIgY3g9IjUyNy40MyIgY3k9Ii0yMzQiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0\nZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjUyNy40MyIgeT0iLTIzMC4zIiBmb250LWZhbWls\neT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5TRVM8L3RleHQ+Cjwv\nZz4KPCEtLSBBZ2UmIzQ1OyZndDtTRVMgLS0+CjxnIGlkPSJlZGdlMTUiIGNsYXNzPSJlZGdlIj4K\nPHRpdGxlPkFnZSYjNDU7Jmd0O1NFUzwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0i\nYmxhY2siIGQ9Ik0zNDMuODMsLTI5Ni42MUMzNTEuNjQsLTI5My44NCAzNjAuNCwtMjkwLjc2IDM2\nOC40MywtMjg4IDQxMS42MywtMjczLjE1IDQ2MS42NSwtMjU2LjU4IDQ5My44NywtMjQ1Ljk4Ii8+\nCjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjQ5NS4yNywtMjQ5\nLjIxIDUwMy42NywtMjQyLjc2IDQ5My4wOCwtMjQyLjU2IDQ5NS4yNywtMjQ5LjIxIi8+CjwvZz4K\nPCEtLSBXb3JrSG91cnMgLS0+CjxnIGlkPSJub2RlMTIiIGNsYXNzPSJub2RlIj4KPHRpdGxlPldv\ncmtIb3VyczwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSIy\nMDIuNDMiIGN5PSItMjM0IiByeD0iNTEuOTkiIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0i\nbWlkZGxlIiB4PSIyMDIuNDMiIHk9Ii0yMzAuMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21h\nbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+V29ya0hvdXJzPC90ZXh0Pgo8L2c+CjwhLS0gQWdl\nJiM0NTsmZ3Q7V29ya0hvdXJzIC0tPgo8ZyBpZD0iZWRnZTE2IiBjbGFzcz0iZWRnZSI+Cjx0aXRs\nZT5BZ2UmIzQ1OyZndDtXb3JrSG91cnM8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9\nImJsYWNrIiBkPSJNMzAwLjk0LC0yOTMuNDRDMjgzLjQxLC0yODMuMDQgMjU3LjI4LC0yNjcuNTQg\nMjM2LjMzLC0yNTUuMTEiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBv\naW50cz0iMjM4LjA5LC0yNTIuMDkgMjI3LjcxLC0yNTAgMjM0LjUyLC0yNTguMTEgMjM4LjA5LC0y\nNTIuMDkiLz4KPC9nPgo8IS0tIEdlbmRlciAtLT4KPGcgaWQ9Im5vZGU1IiBjbGFzcz0ibm9kZSI+\nCjx0aXRsZT5HZW5kZXI8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNr\nIiBjeD0iNDEzLjQzIiBjeT0iLTMwNiIgcng9IjM2LjI5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1h\nbmNob3I9Im1pZGRsZSIgeD0iNDEzLjQzIiB5PSItMzAyLjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBO\nZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkdlbmRlcjwvdGV4dD4KPC9nPgo8IS0t\nIEdlbmRlciYjNDU7Jmd0O0Ryb3BvdXQgLS0+CjxnIGlkPSJlZGdlNCIgY2xhc3M9ImVkZ2UiPgo8\ndGl0bGU+R2VuZGVyJiM0NTsmZ3Q7RHJvcG91dDwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0\ncm9rZT0iYmxhY2siIGQ9Ik00MTkuNTEsLTI4OC4wN0M0MjIuODgsLTI3Ny43OSA0MjYuNzIsLTI2\nNC4zMSA0MjguNDMsLTI1MiA0MzkuODEsLTE2OS45OSA0NDUuNzEsLTEyMi45MyAzODAuNDMsLTcy\nIDMzNS4yNSwtMzYuNzUgMjY5LjIyLC0yNC43NSAyMjMuOTYsLTIwLjc2Ii8+Cjxwb2x5Z29uIGZp\nbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjIyNC4wMiwtMTcuMjYgMjEzLjc4LC0x\nOS45NyAyMjMuNDgsLTI0LjI0IDIyNC4wMiwtMTcuMjYiLz4KPC9nPgo8IS0tIEdlbmRlciYjNDU7\nJmd0O0F2YWlsYWJsZVRpbWUgLS0+CjxnIGlkPSJlZGdlMjMiIGNsYXNzPSJlZGdlIj4KPHRpdGxl\nPkdlbmRlciYjNDU7Jmd0O0F2YWlsYWJsZVRpbWU8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBz\ndHJva2U9ImJsYWNrIiBkPSJNMzkzLjc2LC0yOTAuNkMzNTkuNjcsLTI2NS42NSAyODkuNDQsLTIx\nNC4yNSAyNDkuMywtMTg0Ljg3Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNr\nIiBwb2ludHM9IjI1MS4zNSwtMTgyLjAzIDI0MS4yMSwtMTc4Ljk1IDI0Ny4yMiwtMTg3LjY4IDI1\nMS4zNSwtMTgyLjAzIi8+CjwvZz4KPCEtLSBHZW5kZXImIzQ1OyZndDtQcmVmZXJlbmNlcyAtLT4K\nPGcgaWQ9ImVkZ2UxMiIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+R2VuZGVyJiM0NTsmZ3Q7UHJlZmVy\nZW5jZXM8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNDE2LjQx\nLC0yODcuODFDNDE4LjgzLC0yNjkuMjggNDIwLjQxLC0yMzkuMzEgNDEwLjQzLC0yMTYgNDA1LjQz\nLC0yMDQuMzQgMzk2LjU5LC0xOTMuODEgMzg3LjU5LC0xODUuMjYiLz4KPHBvbHlnb24gZmlsbD0i\nYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMzg5Ljg4LC0xODIuNjEgMzgwLjA5LC0xNzgu\nNTcgMzg1LjIyLC0xODcuODQgMzg5Ljg4LC0xODIuNjEiLz4KPC9nPgo8IS0tIEdlbmRlciYjNDU7\nJmd0O1dvcmtIb3VycyAtLT4KPGcgaWQ9ImVkZ2UyMSIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+R2Vu\nZGVyJiM0NTsmZ3Q7V29ya0hvdXJzPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJi\nbGFjayIgZD0iTTM4NC4wOSwtMjk1LjI3QzM0OC44NiwtMjgzLjU4IDI4OS4zOSwtMjYzLjg1IDI0\nOC4xMywtMjUwLjE2Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2lu\ndHM9IjI0OS4xNywtMjQ2LjgyIDIzOC41OCwtMjQ2Ljk5IDI0Ni45NywtMjUzLjQ2IDI0OS4xNywt\nMjQ2LjgyIi8+CjwvZz4KPCEtLSBSYWNlIC0tPgo8ZyBpZD0ibm9kZTYiIGNsYXNzPSJub2RlIj4K\nPHRpdGxlPlJhY2U8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBj\neD0iMjI0LjQzIiBjeT0iLTMwNiIgcng9IjI4LjciIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hv\ncj0ibWlkZGxlIiB4PSIyMjQuNDMiIHk9Ii0zMDIuMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBS\nb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+UmFjZTwvdGV4dD4KPC9nPgo8IS0tIFJhY2Um\nIzQ1OyZndDtEcm9wb3V0IC0tPgo8ZyBpZD0iZWRnZTUiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPlJh\nY2UmIzQ1OyZndDtEcm9wb3V0PC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFj\nayIgZD0iTTIwMi4zMywtMjk0LjU2QzE3OC4zNSwtMjgyLjg0IDE0Mi4xNiwtMjYzLjkyIDEzMi40\nMywtMjUyIDExMS4wOSwtMjI1Ljg4IDExMy44MywtMjEzLjMgMTA4LjQzLC0xODAgMTAwLjc0LC0x\nMzIuNjIgODcuODMsLTExNS4zNiAxMDguNDMsLTcyIDExNS4wNywtNTggMTI3LjQzLC00Ni40OCAx\nMzkuNiwtMzcuOCIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRz\nPSIxNDEuNTUsLTQwLjcxIDE0Ny45MiwtMzIuMjQgMTM3LjY2LC0zNC44OCAxNDEuNTUsLTQwLjcx\nIi8+CjwvZz4KPCEtLSBSYWNlJiM0NTsmZ3Q7QXZhaWxhYmxlVGltZSAtLT4KPGcgaWQ9ImVkZ2Uy\nMiIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+UmFjZSYjNDU7Jmd0O0F2YWlsYWJsZVRpbWU8L3RpdGxl\nPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMjAyLjU4LC0yOTQuMTVDMTgw\nLjMzLC0yODIuNTkgMTQ4LjE2LC0yNjQuMjkgMTQxLjQzLC0yNTIgMTMzLjc0LC0yMzcuOTcgMTMz\nLjk0LC0yMzAuMTQgMTQxLjQzLC0yMTYgMTQ4Ljk3LC0yMDEuNzYgMTYyLjI0LC0xOTAuNjMgMTc1\nLjczLC0xODIuMzMiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50\ncz0iMTc3LjYyLC0xODUuMjggMTg0LjU2LC0xNzcuMjggMTc0LjE0LC0xNzkuMjEgMTc3LjYyLC0x\nODUuMjgiLz4KPC9nPgo8IS0tIFJhY2UmIzQ1OyZndDtQcmVmZXJlbmNlcyAtLT4KPGcgaWQ9ImVk\nZ2UxMyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+UmFjZSYjNDU7Jmd0O1ByZWZlcmVuY2VzPC90aXRs\nZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTIzOC41MSwtMjkwLjA3QzI2\nMS43MSwtMjY1LjQ5IDMwOC4xMiwtMjE2LjMxIDMzNS45MSwtMTg2Ljg2Ii8+Cjxwb2x5Z29uIGZp\nbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjMzOC41NywtMTg5LjE0IDM0Mi44OSwt\nMTc5LjQ3IDMzMy40OCwtMTg0LjM0IDMzOC41NywtMTg5LjE0Ii8+CjwvZz4KPCEtLSBSYWNlJiM0\nNTsmZ3Q7V29ya0hvdXJzIC0tPgo8ZyBpZD0iZWRnZTIwIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5S\nYWNlJiM0NTsmZ3Q7V29ya0hvdXJzPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJi\nbGFjayIgZD0iTTIxOS4xLC0yODguMDVDMjE2LjY1LC0yODAuMjYgMjEzLjY4LC0yNzAuODIgMjEw\nLjk0LC0yNjIuMDgiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50\ncz0iMjE0LjE5LC0yNjAuNzcgMjA3Ljg2LC0yNTIuMjggMjA3LjUyLC0yNjIuODYgMjE0LjE5LC0y\nNjAuNzciLz4KPC9nPgo8IS0tIEFjYWRlbWljcyAtLT4KPGcgaWQ9Im5vZGU3IiBjbGFzcz0ibm9k\nZSI+Cjx0aXRsZT5BY2FkZW1pY3M8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9\nImJsYWNrIiBjeD0iMTI3LjQzIiBjeT0iLTMwNiIgcng9IjUwLjA5IiByeT0iMTgiLz4KPHRleHQg\ndGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTI3LjQzIiB5PSItMzAyLjMiIGZvbnQtZmFtaWx5PSJU\naW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkFjYWRlbWljczwvdGV4dD4K\nPC9nPgo8IS0tIEFjYWRlbWljcyYjNDU7Jmd0O0Ryb3BvdXQgLS0+CjxnIGlkPSJlZGdlNiIgY2xh\nc3M9ImVkZ2UiPgo8dGl0bGU+QWNhZGVtaWNzJiM0NTsmZ3Q7RHJvcG91dDwvdGl0bGU+CjxwYXRo\nIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik04OS4xMSwtMjk0LjEzQzY4LjQyLC0yODYu\nMSA0NC42NywtMjcyLjg1IDMyLjQzLC0yNTIgLTguMDgsLTE4My4wMSAtMTMuMTIsLTEzNy43NyAz\nMi40MywtNzIgNTIuOTEsLTQyLjQxIDkyLjExLC0yOS4zMiAxMjMuOTksLTIzLjU0Ii8+Cjxwb2x5\nZ29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjEyNC43NCwtMjYuOTYgMTM0\nLjA1LC0yMS45MSAxMjMuNjIsLTIwLjA1IDEyNC43NCwtMjYuOTYiLz4KPC9nPgo8IS0tIEFjYWRl\nbWljcyYjNDU7Jmd0O1dvcmtIb3VycyAtLT4KPGcgaWQ9ImVkZ2UxOSIgY2xhc3M9ImVkZ2UiPgo8\ndGl0bGU+QWNhZGVtaWNzJiM0NTsmZ3Q7V29ya0hvdXJzPC90aXRsZT4KPHBhdGggZmlsbD0ibm9u\nZSIgc3Ryb2tlPSJibGFjayIgZD0iTTE0NC44MiwtMjg4Ljc2QzE1NC41NywtMjc5LjY2IDE2Ni45\nLC0yNjguMTYgMTc3LjY0LC0yNTguMTMiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0i\nYmxhY2siIHBvaW50cz0iMTgwLjIsLTI2MC41MyAxODUuMTMsLTI1MS4xNSAxNzUuNDMsLTI1NS40\nMSAxODAuMiwtMjYwLjUzIi8+CjwvZz4KPCEtLSBJbnRlcm5ldEFjY2VzcyAtLT4KPGcgaWQ9Im5v\nZGU4IiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5JbnRlcm5ldEFjY2VzczwvdGl0bGU+CjxlbGxpcHNl\nIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSI1ODguNDMiIGN5PSItMTYyIiByeD0iNjMu\nMDkiIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSI1ODguNDMiIHk9Ii0x\nNTguMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4w\nMCI+SW50ZXJuZXRBY2Nlc3M8L3RleHQ+CjwvZz4KPCEtLSBJbnRlcm5ldEFjY2VzcyYjNDU7Jmd0\nO09ubGluZUNsYXNzIC0tPgo8ZyBpZD0iZWRnZTgiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkludGVy\nbmV0QWNjZXNzJiM0NTsmZ3Q7T25saW5lQ2xhc3M8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBz\ndHJva2U9ImJsYWNrIiBkPSJNNTQzLjM3LC0xNDkuMzZDNDk1LjI2LC0xMzYuOTMgNDE5LjE0LC0x\nMTcuMjcgMzY4Ljc1LC0xMDQuMjYiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxh\nY2siIHBvaW50cz0iMzY5LjU4LC0xMDAuODYgMzU5LjAzLC0xMDEuNzUgMzY3LjgzLC0xMDcuNjQg\nMzY5LjU4LC0xMDAuODYiLz4KPC9nPgo8IS0tIFByZWZlcmVuY2VzJiM0NTsmZ3Q7T25saW5lQ2xh\nc3MgLS0+CjxnIGlkPSJlZGdlOSIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+UHJlZmVyZW5jZXMmIzQ1\nOyZndDtPbmxpbmVDbGFzczwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2si\nIGQ9Ik0zNDguNSwtMTQ0LjA1QzM0My42NywtMTM1LjggMzM3Ljc1LC0xMjUuNyAzMzIuMzgsLTEx\nNi41NCIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIzMzUu\nMzMsLTExNC42NSAzMjcuMjYsLTEwNy43OSAzMjkuMjksLTExOC4xOSAzMzUuMzMsLTExNC42NSIv\nPgo8L2c+CjwhLS0gTG9jYXRpb24gLS0+CjxnIGlkPSJub2RlMTAiIGNsYXNzPSJub2RlIj4KPHRp\ndGxlPkxvY2F0aW9uPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIg\nY3g9IjYxNC40MyIgY3k9Ii0yMzQiIHJ4PSI0Mi40OSIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5j\naG9yPSJtaWRkbGUiIHg9IjYxNC40MyIgeT0iLTIzMC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3\nIFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5Mb2NhdGlvbjwvdGV4dD4KPC9nPgo8IS0t\nIExvY2F0aW9uJiM0NTsmZ3Q7SW50ZXJuZXRBY2Nlc3MgLS0+CjxnIGlkPSJlZGdlMTQiIGNsYXNz\nPSJlZGdlIj4KPHRpdGxlPkxvY2F0aW9uJiM0NTsmZ3Q7SW50ZXJuZXRBY2Nlc3M8L3RpdGxlPgo8\ncGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNjA4LjEzLC0yMTYuMDVDNjA1LjIx\nLC0yMDguMTggNjAxLjY2LC0xOTguNjIgNTk4LjM4LC0xODkuNzkiLz4KPHBvbHlnb24gZmlsbD0i\nYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNjAxLjYxLC0xODguNDMgNTk0Ljg0LC0xODAu\nMjggNTk1LjA0LC0xOTAuODcgNjAxLjYxLC0xODguNDMiLz4KPC9nPgo8IS0tIFNFUyYjNDU7Jmd0\nO1ByZWZlcmVuY2VzIC0tPgo8ZyBpZD0iZWRnZTE3IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5TRVMm\nIzQ1OyZndDtQcmVmZXJlbmNlczwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxh\nY2siIGQ9Ik01MDQuOTgsLTIyMy43QzQ3OC4yNiwtMjEyLjY0IDQzMy4wOCwtMTkzLjkyIDM5OS45\nNCwtMTgwLjE5Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9\nIjQwMS4wOCwtMTc2Ljg4IDM5MC41LC0xNzYuMjkgMzk4LjQsLTE4My4zNSA0MDEuMDgsLTE3Ni44\nOCIvPgo8L2c+CjwhLS0gV29ya0hvdXJzJiM0NTsmZ3Q7QXZhaWxhYmxlVGltZSAtLT4KPGcgaWQ9\nImVkZ2UxOCIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+V29ya0hvdXJzJiM0NTsmZ3Q7QXZhaWxhYmxl\nVGltZTwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik0yMDYuNTQs\nLTIxNi4wNUMyMDguNDMsLTIwOC4yNiAyMTAuNzMsLTE5OC44MiAyMTIuODUsLTE5MC4wOCIvPgo8\ncG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIyMTYuMjcsLTE5MC44\nMiAyMTUuMjMsLTE4MC4yOCAyMDkuNDcsLTE4OS4xNyAyMTYuMjcsLTE5MC44MiIvPgo8L2c+Cjwh\nLS0gVTEgLS0+CjxnIGlkPSJub2RlMTMiIGNsYXNzPSJub2RlIj4KPHRpdGxlPlUxPC90aXRsZT4K\nPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLWRhc2hhcnJheT0iNSwy\nIiBjeD0iMTk1LjQzIiBjeT0iLTM3OCIgcng9IjI3IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNo\nb3I9Im1pZGRsZSIgeD0iMTk1LjQzIiB5PSItMzc0LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcg\nUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlUxPC90ZXh0Pgo8L2c+CjwhLS0gVTEmIzQ1\nOyZndDtSYWNlIC0tPgo8ZyBpZD0iZWRnZTI0IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5VMSYjNDU7\nJmd0O1JhY2U8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMjAy\nLjMsLTM2MC40MUMyMDUuNjQsLTM1Mi4zNCAyMDkuNzUsLTM0Mi40MyAyMTMuNTEsLTMzMy4zNSIv\nPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIyMTYuODEsLTMz\nNC41MyAyMTcuNCwtMzIzLjk2IDIxMC4zNCwtMzMxLjg2IDIxNi44MSwtMzM0LjUzIi8+CjwvZz4K\nPCEtLSBVMSYjNDU7Jmd0O0FjYWRlbWljcyAtLT4KPGcgaWQ9ImVkZ2UyNSIgY2xhc3M9ImVkZ2Ui\nPgo8dGl0bGU+VTEmIzQ1OyZndDtBY2FkZW1pY3M8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBz\ndHJva2U9ImJsYWNrIiBkPSJNMTgxLjM0LC0zNjIuNUMxNzIuMzgsLTM1My4yOCAxNjAuNTksLTM0\nMS4xNCAxNTAuMzEsLTMzMC41NiIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFj\nayIgcG9pbnRzPSIxNTIuNjQsLTMyNy45MyAxNDMuMTYsLTMyMy4yIDE0Ny42MiwtMzMyLjgxIDE1\nMi42NCwtMzI3LjkzIi8+CjwvZz4KPCEtLSBVMiAtLT4KPGcgaWQ9Im5vZGUxNCIgY2xhc3M9Im5v\nZGUiPgo8dGl0bGU+VTI8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNr\nIiBzdHJva2UtZGFzaGFycmF5PSI1LDIiIGN4PSIzNjYuNDMiIGN5PSItMzc4IiByeD0iMjciIHJ5\nPSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIzNjYuNDMiIHk9Ii0zNzQuMyIg\nZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+VTI8\nL3RleHQ+CjwvZz4KPCEtLSBVMiYjNDU7Jmd0O1JhY2UgLS0+CjxnIGlkPSJlZGdlMjYiIGNsYXNz\nPSJlZGdlIj4KPHRpdGxlPlUyJiM0NTsmZ3Q7UmFjZTwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUi\nIHN0cm9rZT0iYmxhY2siIGQ9Ik0zNDUuMTcsLTM2Ni41MkMzMjEuMzYsLTM1NC43OCAyODIuNTYs\nLTMzNS42NiAyNTUuMzgsLTMyMi4yNiIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJi\nbGFjayIgcG9pbnRzPSIyNTYuODEsLTMxOS4wNiAyNDYuMywtMzE3Ljc4IDI1My43MiwtMzI1LjM0\nIDI1Ni44MSwtMzE5LjA2Ii8+CjwvZz4KPCEtLSBVMiYjNDU7Jmd0O1NFUyAtLT4KPGcgaWQ9ImVk\nZ2UyNyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+VTImIzQ1OyZndDtTRVM8L3RpdGxlPgo8cGF0aCBm\naWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMzg4LjQxLC0zNjcuMzVDNDA4LjA4LC0zNTgu\nMDQgNDM3LjAzLC0zNDIuNjUgNDU4LjQzLC0zMjQgNDgwLjA1LC0zMDUuMTUgNDk5LjU2LC0yNzgu\nNjYgNTEyLjI3LC0yNTkuNDkiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2si\nIHBvaW50cz0iNTE1LjI4LC0yNjEuMjggNTE3Ljc4LC0yNTAuOTkgNTA5LjQsLTI1Ny40OCA1MTUu\nMjgsLTI2MS4yOCIvPgo8L2c+CjwhLS0gVTMgLS0+CjxnIGlkPSJub2RlMTUiIGNsYXNzPSJub2Rl\nIj4KPHRpdGxlPlUzPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIg\nc3Ryb2tlLWRhc2hhcnJheT0iNSwyIiBjeD0iMjg1LjQzIiBjeT0iLTM3OCIgcng9IjI3IiByeT0i\nMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjg1LjQzIiB5PSItMzc0LjMiIGZv\nbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlUzPC90\nZXh0Pgo8L2c+CjwhLS0gVTMmIzQ1OyZndDtHZW5kZXIgLS0+CjxnIGlkPSJlZGdlMjgiIGNsYXNz\nPSJlZGdlIj4KPHRpdGxlPlUzJiM0NTsmZ3Q7R2VuZGVyPC90aXRsZT4KPHBhdGggZmlsbD0ibm9u\nZSIgc3Ryb2tlPSJibGFjayIgZD0iTTMwNS43MSwtMzY1LjkxQzMyNS44NywtMzU0Ljg4IDM1Ny4x\nMiwtMzM3Ljc5IDM4MC43OCwtMzI0Ljg1Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9\nImJsYWNrIiBwb2ludHM9IjM4Mi42NywtMzI3LjgxIDM4OS43NiwtMzE5Ljk0IDM3OS4zMSwtMzIx\nLjY3IDM4Mi42NywtMzI3LjgxIi8+CjwvZz4KPCEtLSBVMyYjNDU7Jmd0O0FjYWRlbWljcyAtLT4K\nPGcgaWQ9ImVkZ2UyOSIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+VTMmIzQ1OyZndDtBY2FkZW1pY3M8\nL3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMjYzLjQ2LC0zNjcu\nMjdDMjM4LjY3LC0zNTYuMjggMTk3LjgzLC0zMzguMTkgMTY3LjM2LC0zMjQuNjkiLz4KPHBvbHln\nb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMTY4LjQzLC0zMjEuMzQgMTU3\nLjg3LC0zMjAuNDkgMTY1LjU5LC0zMjcuNzQgMTY4LjQzLC0zMjEuMzQiLz4KPC9nPgo8IS0tIFU0\nIC0tPgo8ZyBpZD0ibm9kZTE2IiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5VNDwvdGl0bGU+CjxlbGxp\ncHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS1kYXNoYXJyYXk9IjUsMiIgY3g9\nIjQ0Mi40MyIgY3k9Ii0zNzgiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJt\naWRkbGUiIHg9IjQ0Mi40MyIgeT0iLTM3NC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFu\nLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5VNDwvdGV4dD4KPC9nPgo8IS0tIFU0JiM0NTsmZ3Q7\nR2VuZGVyIC0tPgo8ZyBpZD0iZWRnZTMwIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5VNCYjNDU7Jmd0\nO0dlbmRlcjwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik00MzUu\nNTUsLTM2MC40MUM0MzIuMjEsLTM1Mi4zNCA0MjguMSwtMzQyLjQzIDQyNC4zNCwtMzMzLjM1Ii8+\nCjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjQyNy41MSwtMzMx\nLjg2IDQyMC40NSwtMzIzLjk2IDQyMS4wNCwtMzM0LjUzIDQyNy41MSwtMzMxLjg2Ii8+CjwvZz4K\nPCEtLSBVNCYjNDU7Jmd0O1NFUyAtLT4KPGcgaWQ9ImVkZ2UzMSIgY2xhc3M9ImVkZ2UiPgo8dGl0\nbGU+VTQmIzQ1OyZndDtTRVM8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNr\nIiBkPSJNNDU5LjcsLTM2NC4wOUM0NzEuNzUsLTM1NC4yNyA0ODcuNDIsLTMzOS44IDQ5Ny40Mywt\nMzI0IDUwOS41MSwtMzA0LjkxIDUxNy4zMSwtMjgwLjQxIDUyMS45MSwtMjYxLjk1Ii8+Cjxwb2x5\nZ29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjUyNS4zNCwtMjYyLjY2IDUy\nNC4yMSwtMjUyLjEzIDUxOC41MiwtMjYxLjA3IDUyNS4zNCwtMjYyLjY2Ii8+CjwvZz4KPCEtLSBV\nNSAtLT4KPGcgaWQ9Im5vZGUxNyIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+VTU8L3RpdGxlPgo8ZWxs\naXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2UtZGFzaGFycmF5PSI1LDIiIGN4\nPSI1OTYuNDMiIGN5PSItMzA2IiByeD0iMjciIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0i\nbWlkZGxlIiB4PSI1OTYuNDMiIHk9Ii0zMDIuMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21h\nbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+VTU8L3RleHQ+CjwvZz4KPCEtLSBVNSYjNDU7Jmd0\nO0xvY2F0aW9uIC0tPgo8ZyBpZD0iZWRnZTMyIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5VNSYjNDU7\nJmd0O0xvY2F0aW9uPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0i\nTTYwMC43OCwtMjg4LjA1QzYwMi43OSwtMjgwLjI2IDYwNS4yMSwtMjcwLjgyIDYwNy40NiwtMjYy\nLjA4Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjYxMC44\nOCwtMjYyLjgzIDYwOS45OCwtMjUyLjI4IDYwNC4xLC0yNjEuMDkgNjEwLjg4LC0yNjIuODMiLz4K\nPC9nPgo8IS0tIFU1JiM0NTsmZ3Q7U0VTIC0tPgo8ZyBpZD0iZWRnZTMzIiBjbGFzcz0iZWRnZSI+\nCjx0aXRsZT5VNSYjNDU7Jmd0O1NFUzwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0i\nYmxhY2siIGQ9Ik01ODIuMTMsLTI5MC41QzU3Mi41MSwtMjgwLjczIDU1OS42NSwtMjY3LjY5IDU0\nOC44MiwtMjU2LjciLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50\ncz0iNTUxLjIyLC0yNTQuMTUgNTQxLjcsLTI0OS40OSA1NDYuMjMsLTI1OS4wNiA1NTEuMjIsLTI1\nNC4xNSIvPgo8L2c+CjwvZz4KPC9zdmc+Cg==\n"
}
},
- "id": "7d5f84ed-e13d-480d-a69f-97c544f4e1af"
+ "id": "6877493a-8806-4f59-a66b-20709be19c9d"
},
{
"cell_type": "code",
@@ -843,7 +843,7 @@
"\n",
"g"
],
- "id": "f5aa195a"
+ "id": "c2e63ae0"
},
{
"cell_type": "markdown",
@@ -862,7 +862,7 @@
"\n",
"- The simplest cycles look like this:"
],
- "id": "a0d0626d-a1dc-43f3-86e9-3e68565d4d4a"
+ "id": "706d6fa2-da17-4c18-a00b-9f8a5ad88afd"
},
{
"cell_type": "code",
@@ -888,7 +888,7 @@
"\n",
"g"
],
- "id": "0b7d6e2b"
+ "id": "aa4e719f"
},
{
"cell_type": "markdown",
@@ -899,7 +899,7 @@
"- Why can’t we have cycles? Surely there are feedback loops in the\n",
" real world."
],
- "id": "f71ceb6d-e796-411e-afec-2c510263ba8e"
+ "id": "3ba790df-f6f1-4b99-89e6-30ef83783c36"
},
{
"cell_type": "code",
@@ -921,7 +921,7 @@
"\n",
"g"
],
- "id": "e9ba0317"
+ "id": "06685f87"
},
{
"cell_type": "markdown",
@@ -952,875 +952,6 @@
" causality, where the arrow of time is fundamental.\n",
" - Similar to the time-series concept of **Granger Causality**.\n",
"\n",
- "# Dependence Flows\n",
- "\n",
- "## Dependence Flows\n",
- "\n",
- "- In order to determine whether or not we can identify a treatment\n",
- " effect, we need to understand how dependence **flows** through a\n",
- " graphical model.\n",
- "\n",
- "- We have seen that conditioning on a node can either make or break\n",
- " the dependence relationship between two other nodes\n",
- "\n",
- "- To identify the treatment effect, we want the *link between the\n",
- " treatment and the outcome to be unblocked*.\n",
- "\n",
- "- However, we also need to make sure that there is *no other\n",
- " dependence path* between the treatment and the outcome that is\n",
- " unblocked.\n",
- "\n",
- "## The Rules of Bayes-Ball\n",
- "\n",
- "- We can think about the flow of dependence as a game of “Bayes-ball”\n",
- "- The rules of Bayes-ball are reasonably simple. A dependence path is\n",
- " blocked if and only if:\n",
- " 1. It contains a *non-collider* that is conditioned on\n",
- " 2. It contains a *collider* that is not conditioned on, and neither\n",
- " are *any of its descendants*\n",
- "\n",
- "![](attachment:./data/fig/graph-flow.png)\n",
- "\n",
- "## Directed Graphical Models\n",
- "\n",
- "Turning back to our **collider** example:"
- ],
- "attachments": {
- "./data/fig/graph-flow.png": {
- "image/png": "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\nQmCC\n"
- },
- "causal_graphical_models_files/figure-ipynb/cell-24-output-1.svg": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxNDRwdCIgaGVpZ2h0PSIxODhwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxNDQuNDkg\nMTg4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDE4NCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nODQgMTQwLjQ5LC0xODQgMTQwLjQ5LDQgLTQsNCIvPgo8IS0tIFByaXZhdGVTY2hvb2wodCkgLS0+\nCjxnIGlkPSJub2RlMSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+UHJpdmF0ZVNjaG9vbCh0KTwvdGl0\nbGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSI2OC4yNCIgY3k9Ii05\nMCIgcng9IjY4LjQ5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iNjgu\nMjQiIHk9Ii04Ni4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNp\nemU9IjE0LjAwIj5Qcml2YXRlU2Nob29sKHQpPC90ZXh0Pgo8L2c+CjwhLS0gV2VhbHRoKHQrMSkg\nLS0+CjxnIGlkPSJub2RlMiIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+V2VhbHRoKHQrMSk8L3RpdGxl\nPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iNjguMjQiIGN5PSItMTgi\nIHJ4PSI1My44OSIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjY4LjI0\nIiB5PSItMTQuMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXpl\nPSIxNC4wMCI+V2VhbHRoKHQrMSk8L3RleHQ+CjwvZz4KPCEtLSBQcml2YXRlU2Nob29sKHQpJiM0\nNTsmZ3Q7V2VhbHRoKHQrMSkgLS0+CjxnIGlkPSJlZGdlMSIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+\nUHJpdmF0ZVNjaG9vbCh0KSYjNDU7Jmd0O1dlYWx0aCh0KzEpPC90aXRsZT4KPHBhdGggZmlsbD0i\nbm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTY4LjI0LC03MS43QzY4LjI0LC02My45OCA2OC4yNCwt\nNTQuNzEgNjguMjQsLTQ2LjExIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNr\nIiBwb2ludHM9IjcxLjc0LC00Ni4xIDY4LjI0LC0zNi4xIDY0Ljc0LC00Ni4xIDcxLjc0LC00Ni4x\nIi8+CjwvZz4KPCEtLSBXZWFsdGgodCkgLS0+CjxnIGlkPSJub2RlMyIgY2xhc3M9Im5vZGUiPgo8\ndGl0bGU+V2VhbHRoKHQpPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFj\nayIgY3g9IjY4LjI0IiBjeT0iLTE2MiIgcng9IjQ0LjM5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1h\nbmNob3I9Im1pZGRsZSIgeD0iNjguMjQiIHk9Ii0xNTguMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5l\ndyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+V2VhbHRoKHQpPC90ZXh0Pgo8L2c+Cjwh\nLS0gV2VhbHRoKHQpJiM0NTsmZ3Q7UHJpdmF0ZVNjaG9vbCh0KSAtLT4KPGcgaWQ9ImVkZ2UyIiBj\nbGFzcz0iZWRnZSI+Cjx0aXRsZT5XZWFsdGgodCkmIzQ1OyZndDtQcml2YXRlU2Nob29sKHQpPC90\naXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTY4LjI0LC0xNDMuN0M2\nOC4yNCwtMTM1Ljk4IDY4LjI0LC0xMjYuNzEgNjguMjQsLTExOC4xMSIvPgo8cG9seWdvbiBmaWxs\nPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI3MS43NCwtMTE4LjEgNjguMjQsLTEwOC4x\nIDY0Ljc0LC0xMTguMSA3MS43NCwtMTE4LjEiLz4KPC9nPgo8L2c+Cjwvc3ZnPgo=\n"
- }
- },
- "id": "2f139a07-6688-4d32-8f57-b9db9b0cdcc2"
- },
- {
- "cell_type": "code",
- "execution_count": 24,
- "metadata": {},
- "outputs": [],
- "source": [
- "g = gr.Digraph()\n",
- "g.edge(\"B\", \"C\")\n",
- "g.edge(\"A\", \"C\")\n",
- "\n",
- "g.edge(\"Y\", \"X\")\n",
- "g.edge(\"Z\", \"X\")\n",
- "g.node(\"X\", \"X\", style=\"filled\")"
- ],
- "id": "35e0dc40"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- Notice that when we do not condition on $C$, $A$ and $B$ are\n",
- " independent.\n",
- "- However, somewhat unintuitively, when we condition on $X$, $Y$ and\n",
- " $Z$ become dependent.\n",
- " - This is because conditioning on $X$ opens the flow of dependence\n",
- " from $Y$ to $Z$.\n",
- " - In any case that is *not* a collider, conditioning on a node\n",
- " *blocks* the flow of dependence.\n",
- "\n",
- "## Two Games of Bayes Ball\n",
- "\n",
- "![](attachment:./data/fig/two-games.png)\n",
- "\n",
- "# Viualizing Bias\n",
- "\n",
- "## Bias and Causality\n",
- "\n",
- "- In a causal inference framework, we can use graphical models to\n",
- " determine whether or not we can identify a treatment effect, and\n",
- " which covariates we need to condition on.\n",
- "\n",
- "- Typically, drawing out a graphical model is not necessary, but it\n",
- " can be a useful exercise to help you think through the problem.\n",
- "\n",
- " - The links you draw represent the assumptions you are making\n",
- " about the data generating process\n",
- "\n",
- "## Bias and Causality\n",
- "\n",
- "- There are two major types of bias that we need to worry about in\n",
- " causal inference:\n",
- " - **Confounding**: When there is an unobserved variable that is a\n",
- " common cause of both the treatment and the outcome\n",
- " - **Selection**: When there is an unobserved variable that is a\n",
- " common cause of both the treatment and the selection into the\n",
- " sample\n",
- "- Both of these types of bias can be represented using a graphical\n",
- " model\n",
- "\n",
- "# Confounding\n",
- "\n",
- "## Confounding\n",
- "\n",
- "- Let’s look at an example of confounding:"
- ],
- "attachments": {
- "./data/fig/two-games.png": {
- "image/png": "iVBORw0KGgoAAAANSUhEUgAAAtQAAAHpCAYAAACiIaseAAAAAXNSR0IArs4c6QAAAARnQU1BAACx\njwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAGN4SURBVHhe7d1xkBzlfe77uRXFe8wi5LW9GLPI\nAq85MiiysNlyBMI2Cy45GFuRuI4VgjdxWUc3iDo6heA4OGuD0D1HNms4cC9XWxZJRapTcplg6RrV\nRcREQYUJBUo5IO7GpORQCK6AOlFI1VI5USpb+ed3++npd7dntmeme7p7Zrrn+6nqknZ2d2a2u995\nn/ft9327YgAAAADaRqAGAAAAUiBQAwAAACkQqAEAAIAUCNQAAABACgRqAAAAIAUCNQAAAJACgRoA\nAABIgUANAAAApECgBgAAAFIgUAMAAAApEKgBAACAFAjUAAAAQAoEagAAACAFAjUAAACQAoEaAAAA\nSIFADQAAAKRAoAYAAABSIFADAAAAKRCoAQAAgBQI1AAAAEAKBGoAAAAgBQI1AAAAkAKBGgAAAEiB\nQA0AAACkQKAGAAAAUiBQAwAAACkQqAEAAIAUCNQAAABACgRqAAAAIAUCNQAAAJACgRoAAABIgUAN\nAAAApECgBgAAAFIgUAMAAAApEKgBAACAFAjUAAAAQAoEagAAACAFAjUAAACQAoEaAAAASIFADfSx\n1157zX7yk5/42/T0tN1333124MABf3v++eeDnwLQrn/+53+2mZmZmjJ2//33+2Xsz//8z+3MmTPB\nTwIoMgI10Gfeffddu/vuu23VqlV27rnn2qc//Wlbv369ffnLX57fPvvZz9ro6KhVKhXbsGGD7d+/\nP/htAHE888wztm7dOlu6dKlf1lSmVM6++tWv+mXsqquusssuu8wvY/r/7bffHvwmgCIiUAN9QkF6\n+/btfgWvivzOO++0hx56yB555JGG23e/+10/AFxwwQV2zTXX2BtvvBE8G4AoCtIK0B/60If84Pyd\n73wnsmyFt23btvmBW+FaZRJA8RCogT7w8ssv26/92q/5FX2cCj5qU7Cmwgca05UfXfW5+eabWzZW\nozaVzfPPP98vq2oAAygOAjVQcgrT6pXW5eZ2Kvnw5ip8Lk8DCxR+JyYm/GFSuqoTVXaSbNdff72d\nd955ftkFUAwEaqDEXJj++te/Hllxt7MplF988cWEaiCgMK0ykbbBGt40XEShmmFWQDEQqIGSUq+Z\nLh2rZzqqwk6zKTgMDg4yWRF974EHHvDHS2cZpt2meQsqwwB6H4EaKClNQPzUpz4VWVFnsWlSIz1o\n6Gc69y+88EK/LESVEbdN3vRR+8AHPtBiW2Eb/3Dx73784x+3e++9N3hFAL2KQA2UkKvo252AGHdT\nD5qGkwD96JZbbolxBeguu2FoiX1o3Vb7zgMP137v/tts7dKKP9l3+Ia7bDr8vWDTmGwarkDvI1AD\nJRSvoq9uu2+urjddWfJee19dr9n73ruk+r3KUlu3ffElbV3m1vep7NFvND9BK3q0HOox+SVbMfb7\ndn/949N3200rquVryYqb7O7puu+HNhquQO8jUAMlo7HTmogYb7WB++yWlUtsxQ132n31FXqo92zp\n+I7I3jNtquwVKoB+oiXybrjhhsgyUbM9/IA98HD949N298aLqo3VpWvttvvrv1+76UqTeqkB9C4C\nNVAyjz/+uL98V1TFvGi77xa7fM03UvWeqeds9erVwasD/eGiiy7yb8gSVSZabfffttaWKkwvWWE3\n3T0d+TP1myY+ciUI6F0EaqBkFHDTrewxbXfftMKWxOw9c8M+1DMO9AMFW53z7azsMX33TbZiia78\nLLGVt+yO/JmoTWWayYlA7yJQAyXzxS9+MdW60+30nmksKTehQL/Q7cVjXwUKb9M7bNwNo1p72+Ir\nQ002rUu9YcOG4B0A6DUEaqBkrrrqqrYvRYd7z1b81s7In4naFC4UMoB+oPXXtT50VFlovN1vt61d\n6ofpVsOoojaVaTWWAfQmAjVQMhrb2dZyedN32Q3D7fWerVq1yh+7DfQDDfX49Kc/HVkWordkw6ii\nNgVqlTMAvYlADZSMKt3kPdTpes/OP/98AjX6hs71JD3UD21fVx1G1WD5yeiVQGo3DePSijoAehOB\nGigZjbP86le/GlkpR2/pe88uuOACViBA39DwJs0biCoLi7b55SeX2Iqb7o5YfvJ++8aaFXbTzvrH\nazeVaa0vD6A3EaiBktEtx6+//vrISjlqm94xPt97tva2+xf/zP3ftv98d+PVDNwqHwRq9AutaBPr\npi6h5Sejh1E9bN/e6DVmL7rJdi76Xu32qU99ilU+gB5GoAZKRpejs+w9+/2xYRvfUf/4wqaesy99\n6UvBqwP9Yfny5S1W01kYRlWpDNm/v+oz9pnPhLc19tGlA/73L7qp9QRgrUPNxF+gdxGogRLSXdVa\n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\n"
- }
- },
- "id": "b7641d2b-b754-410b-9055-ae180bdd07a0"
- },
- {
- "cell_type": "code",
- "execution_count": 25,
- "metadata": {
- "output-location": "column"
- },
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIzODdwdCIgaGVpZ2h0PSIxODhwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAzODcuMTAg\nMTg4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDE4NCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nODQgMzgzLjEsLTE4NCAzODMuMSw0IC00LDQiLz4KPCEtLSBYIC0tPgo8ZyBpZD0ibm9kZTEiIGNs\nYXNzPSJub2RlIj4KPHRpdGxlPlg8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9\nImJsYWNrIiBjeD0iNjgiIGN5PSItMTYyIiByeD0iMjciIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFu\nY2hvcj0ibWlkZGxlIiB4PSI2OCIgeT0iLTE1OC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJv\nbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5YPC90ZXh0Pgo8L2c+CjwhLS0gVCAtLT4KPGcg\naWQ9Im5vZGUyIiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5UPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0i\nbm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjI3IiBjeT0iLTkwIiByeD0iMjciIHJ5PSIxOCIvPgo8\ndGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIyNyIgeT0iLTg2LjMiIGZvbnQtZmFtaWx5PSJU\naW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlQ8L3RleHQ+CjwvZz4KPCEt\nLSBYJiM0NTsmZ3Q7VCAtLT4KPGcgaWQ9ImVkZ2UxIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5YJiM0\nNTsmZ3Q7VDwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik01OC40\nOSwtMTQ0Ljc2QzUzLjQ3LC0xMzYuMTkgNDcuMiwtMTI1LjQ5IDQxLjU4LC0xMTUuOSIvPgo8cG9s\neWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI0NC41MywtMTE0LjAxIDM2\nLjQ2LC0xMDcuMTUgMzguNDksLTExNy41NSA0NC41MywtMTE0LjAxIi8+CjwvZz4KPCEtLSBZIC0t\nPgo8ZyBpZD0ibm9kZTMiIGNsYXNzPSJub2RlIj4KPHRpdGxlPlk8L3RpdGxlPgo8ZWxsaXBzZSBm\naWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iNjgiIGN5PSItMTgiIHJ4PSIyNyIgcnk9IjE4\nIi8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjY4IiB5PSItMTQuMyIgZm9udC1mYW1p\nbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+WTwvdGV4dD4KPC9n\nPgo8IS0tIFgmIzQ1OyZndDtZIC0tPgo8ZyBpZD0iZWRnZTIiIGNsYXNzPSJlZGdlIj4KPHRpdGxl\nPlgmIzQ1OyZndDtZPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0i\nTTY4LC0xNDMuODdDNjgsLTExOS42NyA2OCwtNzUuMjEgNjgsLTQ2LjM5Ii8+Cjxwb2x5Z29uIGZp\nbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjcxLjUsLTQ2LjE5IDY4LC0zNi4xOSA2\nNC41LC00Ni4xOSA3MS41LC00Ni4xOSIvPgo8L2c+CjwhLS0gVCYjNDU7Jmd0O1kgLS0+CjxnIGlk\nPSJlZGdlMyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+VCYjNDU7Jmd0O1k8L3RpdGxlPgo8cGF0aCBm\naWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMzYuNTEsLTcyLjc2QzQxLjUzLC02NC4xOSA0\nNy44LC01My40OSA1My40MiwtNDMuOSIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJi\nbGFjayIgcG9pbnRzPSI1Ni41MSwtNDUuNTUgNTguNTQsLTM1LjE1IDUwLjQ3LC00Mi4wMSA1Ni41\nMSwtNDUuNTUiLz4KPC9nPgo8IS0tIHJhaW4gLS0+CjxnIGlkPSJub2RlNCIgY2xhc3M9Im5vZGUi\nPgo8dGl0bGU+cmFpbjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2si\nIGN4PSIxNjYiIGN5PSItMTYyIiByeD0iMjciIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0i\nbWlkZGxlIiB4PSIxNjYiIHk9Ii0xNTguMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixz\nZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+cmFpbjwvdGV4dD4KPC9nPgo8IS0tIHVtYnJlbGxhIC0t\nPgo8ZyBpZD0ibm9kZTUiIGNsYXNzPSJub2RlIj4KPHRpdGxlPnVtYnJlbGxhPC90aXRsZT4KPGVs\nbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjE1MyIgY3k9Ii05MCIgcng9IjQy\nLjQ5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTUzIiB5PSItODYu\nMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+\ndW1icmVsbGE8L3RleHQ+CjwvZz4KPCEtLSByYWluJiM0NTsmZ3Q7dW1icmVsbGEgLS0+CjxnIGlk\nPSJlZGdlNCIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+cmFpbiYjNDU7Jmd0O3VtYnJlbGxhPC90aXRs\nZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTE2Mi44NSwtMTQ0LjA1QzE2\nMS40MiwtMTM2LjM1IDE1OS42OSwtMTI3LjAzIDE1OC4wOCwtMTE4LjM2Ii8+Cjxwb2x5Z29uIGZp\nbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjE2MS40OCwtMTE3LjQ3IDE1Ni4yMSwt\nMTA4LjI4IDE1NC41OSwtMTE4Ljc1IDE2MS40OCwtMTE3LjQ3Ii8+CjwvZz4KPCEtLSB3ZXQgLS0+\nCjxnIGlkPSJub2RlNiIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+d2V0PC90aXRsZT4KPGVsbGlwc2Ug\nZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjE2NyIgY3k9Ii0xOCIgcng9IjI3IiByeT0i\nMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTY3IiB5PSItMTQuMyIgZm9udC1m\nYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+d2V0PC90ZXh0\nPgo8L2c+CjwhLS0gcmFpbiYjNDU7Jmd0O3dldCAtLT4KPGcgaWQ9ImVkZ2U1IiBjbGFzcz0iZWRn\nZSI+Cjx0aXRsZT5yYWluJiM0NTsmZ3Q7d2V0PC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ry\nb2tlPSJibGFjayIgZD0iTTE4MC4xMSwtMTQ2LjY0QzE4OC44NiwtMTM2LjcgMTk5LjI5LC0xMjIu\nNjYgMjA0LC0xMDggMjA4LjksLTkyLjc3IDIwOC44LC04Ny4yNiAyMDQsLTcyIDIwMC41OCwtNjEu\nMTMgMTk0LjA1LC01MC41NCAxODcuNDIsLTQxLjczIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBz\ndHJva2U9ImJsYWNrIiBwb2ludHM9IjE5MC4xMSwtMzkuNDggMTgxLjEzLC0zMy44NiAxODQuNjQs\nLTQzLjg2IDE5MC4xMSwtMzkuNDgiLz4KPC9nPgo8IS0tIHVtYnJlbGxhJiM0NTsmZ3Q7d2V0IC0t\nPgo8ZyBpZD0iZWRnZTYiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPnVtYnJlbGxhJiM0NTsmZ3Q7d2V0\nPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTE1Ni4zOSwtNzIu\nMDVDMTU3LjkzLC02NC4zNSAxNTkuNzksLTU1LjAzIDE2MS41MywtNDYuMzYiLz4KPHBvbHlnb24g\nZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMTY1LjAyLC00Ni43NyAxNjMuNTQs\nLTM2LjI4IDE1OC4xNSwtNDUuMzkgMTY1LjAyLC00Ni43NyIvPgo8L2c+CjwhLS0gc2V2ZXJlbmVz\ncyAtLT4KPGcgaWQ9Im5vZGU3IiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5zZXZlcmVuZXNzPC90aXRs\nZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjMzMSIgY3k9Ii0xNjIi\nIHJ4PSI0OC4xOSIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjMzMSIg\neT0iLTE1OC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9\nIjE0LjAwIj5zZXZlcmVuZXNzPC90ZXh0Pgo8L2c+CjwhLS0gbWVkaWNpbmUgLS0+CjxnIGlkPSJu\nb2RlOCIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+bWVkaWNpbmU8L3RpdGxlPgo8ZWxsaXBzZSBmaWxs\nPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iMjk1IiBjeT0iLTkwIiByeD0iNDMuNTkiIHJ5PSIx\nOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIyOTUiIHk9Ii04Ni4zIiBmb250LWZh\nbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5tZWRpY2luZTwv\ndGV4dD4KPC9nPgo8IS0tIHNldmVyZW5lc3MmIzQ1OyZndDttZWRpY2luZSAtLT4KPGcgaWQ9ImVk\nZ2U3IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5zZXZlcmVuZXNzJiM0NTsmZ3Q7bWVkaWNpbmU8L3Rp\ndGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMzIyLjI5LC0xNDQuMDVD\nMzE4LjA4LC0xMzUuODkgMzEyLjk1LC0xMjUuOTEgMzA4LjI4LC0xMTYuODIiLz4KPHBvbHlnb24g\nZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMzExLjMyLC0xMTUuMDggMzAzLjYz\nLC0xMDcuNzkgMzA1LjEsLTExOC4yOCAzMTEuMzIsLTExNS4wOCIvPgo8L2c+CjwhLS0gc3Vydml2\nZWQgLS0+CjxnIGlkPSJub2RlOSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+c3Vydml2ZWQ8L3RpdGxl\nPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iMzMxIiBjeT0iLTE4IiBy\neD0iNDAuODkiIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIzMzEiIHk9\nIi0xNC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0\nLjAwIj5zdXJ2aXZlZDwvdGV4dD4KPC9nPgo8IS0tIHNldmVyZW5lc3MmIzQ1OyZndDtzdXJ2aXZl\nZCAtLT4KPGcgaWQ9ImVkZ2U4IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5zZXZlcmVuZXNzJiM0NTsm\nZ3Q7c3Vydml2ZWQ8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJN\nMzM3Ljg5LC0xNDQuMTRDMzQxLjcsLTEzMy44OCAzNDYuMDYsLTEyMC40MSAzNDgsLTEwOCAzNTAu\nNDcsLTkyLjE5IDM1MC40NywtODcuODEgMzQ4LC03MiAzNDYuNjIsLTYzLjE4IDM0NC4wMiwtNTMu\nODIgMzQxLjI2LC00NS40NiIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIg\ncG9pbnRzPSIzNDQuNTEsLTQ0LjEzIDMzNy44OSwtMzUuODYgMzM3LjksLTQ2LjQ1IDM0NC41MSwt\nNDQuMTMiLz4KPC9nPgo8IS0tIG1lZGljaW5lJiM0NTsmZ3Q7c3Vydml2ZWQgLS0+CjxnIGlkPSJl\nZGdlOSIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+bWVkaWNpbmUmIzQ1OyZndDtzdXJ2aXZlZDwvdGl0\nbGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik0zMDMuNzEsLTcyLjA1QzMw\nNy45MiwtNjMuODkgMzEzLjA1LC01My45MSAzMTcuNzIsLTQ0LjgyIi8+Cjxwb2x5Z29uIGZpbGw9\nImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjMyMC45LC00Ni4yOCAzMjIuMzcsLTM1Ljc5\nIDMxNC42OCwtNDMuMDggMzIwLjksLTQ2LjI4Ii8+CjwvZz4KPC9nPgo8L3N2Zz4K\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "g.edge(\"X\", \"T\")\n",
- "g.edge(\"X\", \"Y\")\n",
- "g.edge(\"T\", \"Y\")\n",
- "\n",
- "g.edge(\"rain\", \"umbrella\")\n",
- "g.edge(\"rain\", \"wet\")\n",
- "g.edge(\"umbrella\", \"wet\")\n",
- "\n",
- "g.edge(\"severeness\", \"medicine\")\n",
- "g.edge(\"severeness\", \"survived\")\n",
- "g.edge(\"medicine\", \"survived\")\n",
- "g"
- ],
- "id": "15378e1f"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- To control for confounding, we need to condition on all of the\n",
- " common causes of the treatment and the outcome.\n",
- "\n",
- "## Confounding"
- ],
- "id": "acb3ed06-b9e0-4491-991d-f93271bd245f"
- },
- {
- "cell_type": "code",
- "execution_count": 26,
- "metadata": {
- "output-location": "column"
- },
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIyNjRwdCIgaGVpZ2h0PSIyNjBwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAyNjMuNjQg\nMjYwLjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDI1NikiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0y\nNTYgMjU5LjY0LC0yNTYgMjU5LjY0LDQgLTQsNCIvPgo8IS0tIEZhbWlseSBJbmNvbWUgLS0+Cjxn\nIGlkPSJub2RlMSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+RmFtaWx5IEluY29tZTwvdGl0bGU+Cjxl\nbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSI2NS42NCIgY3k9Ii0xNjIiIHJ4\nPSI2NS43OSIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjY1LjY0IiB5\nPSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0i\nMTQuMDAiPkZhbWlseSBJbmNvbWU8L3RleHQ+CjwvZz4KPCEtLSBFZHVjIC0tPgo8ZyBpZD0ibm9k\nZTIiIGNsYXNzPSJub2RlIj4KPHRpdGxlPkVkdWM8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25l\nIiBzdHJva2U9ImJsYWNrIiBjeD0iMTYxLjY0IiBjeT0iLTkwIiByeD0iMjguNyIgcnk9IjE4Ii8+\nCjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjE2MS42NCIgeT0iLTg2LjMiIGZvbnQtZmFt\naWx5PSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkVkdWM8L3RleHQ+\nCjwvZz4KPCEtLSBGYW1pbHkgSW5jb21lJiM0NTsmZ3Q7RWR1YyAtLT4KPGcgaWQ9ImVkZ2UxIiBj\nbGFzcz0iZWRnZSI+Cjx0aXRsZT5GYW1pbHkgSW5jb21lJiM0NTsmZ3Q7RWR1YzwvdGl0bGU+Cjxw\nYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik04Ny45MSwtMTQ0Ljc2QzEwMi4wOCwt\nMTM0LjQzIDEyMC40OSwtMTIxLjAxIDEzNS4zOCwtMTEwLjE1Ii8+Cjxwb2x5Z29uIGZpbGw9ImJs\nYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjEzNy42NSwtMTEyLjgyIDE0My42NywtMTA0LjEg\nMTMzLjUzLC0xMDcuMTcgMTM3LjY1LC0xMTIuODIiLz4KPC9nPgo8IS0tIFdhZ2UgLS0+CjxnIGlk\nPSJub2RlMyIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+V2FnZTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9\nIm5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSIxNjEuNjQiIGN5PSItMTgiIHJ4PSIzMC41OSIgcnk9\nIjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjE2MS42NCIgeT0iLTE0LjMiIGZv\nbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPldhZ2U8\nL3RleHQ+CjwvZz4KPCEtLSBGYW1pbHkgSW5jb21lJiM0NTsmZ3Q7V2FnZSAtLT4KPGcgaWQ9ImVk\nZ2U0IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5GYW1pbHkgSW5jb21lJiM0NTsmZ3Q7V2FnZTwvdGl0\nbGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik03Ni4zMywtMTQ0LjEyQzg3\nLjgsLTEyNi4xMSAxMDYuNjgsLTk2LjgxIDEyMy42NCwtNzIgMTMwLjEzLC02Mi41MSAxMzcuNDUs\nLTUyLjIxIDE0My45MywtNDMuMjMiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxh\nY2siIHBvaW50cz0iMTQ2Ljc4LC00NS4yNiAxNDkuODEsLTM1LjExIDE0MS4xMSwtNDEuMTUgMTQ2\nLjc4LC00NS4yNiIvPgo8L2c+CjwhLS0gRWR1YyYjNDU7Jmd0O1dhZ2UgLS0+CjxnIGlkPSJlZGdl\nMiIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+RWR1YyYjNDU7Jmd0O1dhZ2U8L3RpdGxlPgo8cGF0aCBm\naWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMTYxLjY0LC03MS43QzE2MS42NCwtNjMuOTgg\nMTYxLjY0LC01NC43MSAxNjEuNjQsLTQ2LjExIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJv\na2U9ImJsYWNrIiBwb2ludHM9IjE2NS4xNCwtNDYuMSAxNjEuNjQsLTM2LjEgMTU4LjE0LC00Ni4x\nIDE2NS4xNCwtNDYuMSIvPgo8L2c+CjwhLS0gU0FUIC0tPgo8ZyBpZD0ibm9kZTQiIGNsYXNzPSJu\nb2RlIj4KPHRpdGxlPlNBVDwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxh\nY2siIGN4PSIxNzYuNjQiIGN5PSItMTYyIiByeD0iMjciIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFu\nY2hvcj0ibWlkZGxlIiB4PSIxNzYuNjQiIHk9Ii0xNTguMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5l\ndyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+U0FUPC90ZXh0Pgo8L2c+CjwhLS0gU0FU\nJiM0NTsmZ3Q7RWR1YyAtLT4KPGcgaWQ9ImVkZ2UzIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5TQVQm\nIzQ1OyZndDtFZHVjPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0i\nTTE3My4wMSwtMTQ0LjA1QzE3MS4zNCwtMTM2LjI2IDE2OS4zMiwtMTI2LjgyIDE2Ny40NSwtMTE4\nLjA4Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjE3MC44\nNiwtMTE3LjMyIDE2NS4zNSwtMTA4LjI4IDE2NC4wMiwtMTE4Ljc5IDE3MC44NiwtMTE3LjMyIi8+\nCjwvZz4KPCEtLSBJbnRlbGxpZ2VuY2UgLS0+CjxnIGlkPSJub2RlNSIgY2xhc3M9Im5vZGUiPgo8\ndGl0bGU+SW50ZWxsaWdlbmNlPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJi\nbGFjayIgY3g9IjIwMy42NCIgY3k9Ii0yMzQiIHJ4PSI1MS45OSIgcnk9IjE4Ii8+Cjx0ZXh0IHRl\neHQtYW5jaG9yPSJtaWRkbGUiIHg9IjIwMy42NCIgeT0iLTIzMC4zIiBmb250LWZhbWlseT0iVGlt\nZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5JbnRlbGxpZ2VuY2U8L3RleHQ+\nCjwvZz4KPCEtLSBJbnRlbGxpZ2VuY2UmIzQ1OyZndDtXYWdlIC0tPgo8ZyBpZD0iZWRnZTYiIGNs\nYXNzPSJlZGdlIj4KPHRpdGxlPkludGVsbGlnZW5jZSYjNDU7Jmd0O1dhZ2U8L3RpdGxlPgo8cGF0\naCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMjA3LjMsLTIxNS45MUMyMDkuMzIsLTIw\nNS41NyAyMTEuNjIsLTE5Mi4wOSAyMTIuNjQsLTE4MCAyMTYuNzEsLTEzMS44MiAyMTguNDksLTEx\nNi41MiAxOTkuNjQsLTcyIDE5NS4xNiwtNjEuNDEgMTg4LjI2LC01MC44OCAxODEuNTYsLTQyLjA0\nIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjE4NC4yNCwt\nMzkuNzggMTc1LjI4LC0zNC4xMiAxNzguNzUsLTQ0LjEzIDE4NC4yNCwtMzkuNzgiLz4KPC9nPgo8\nIS0tIEludGVsbGlnZW5jZSYjNDU7Jmd0O1NBVCAtLT4KPGcgaWQ9ImVkZ2U1IiBjbGFzcz0iZWRn\nZSI+Cjx0aXRsZT5JbnRlbGxpZ2VuY2UmIzQ1OyZndDtTQVQ8L3RpdGxlPgo8cGF0aCBmaWxsPSJu\nb25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMTk3LjExLC0yMTYuMDVDMTk0LjAyLC0yMDguMDYgMTkw\nLjI3LC0xOTguMzMgMTg2LjgzLC0xODkuNCIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tl\nPSJibGFjayIgcG9pbnRzPSIxODkuOTgsLTE4Ny44NiAxODMuMTIsLTE3OS43OSAxODMuNDUsLTE5\nMC4zOCAxODkuOTgsLTE4Ny44NiIvPgo8L2c+CjwvZz4KPC9zdmc+Cg==\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "\n",
- "g.node(\"Family Income\")\n",
- "g.edge(\"Family Income\", \"Educ\")\n",
- "g.edge(\"Educ\", \"Wage\")\n",
- "\n",
- "g.node(\"SAT\")\n",
- "g.edge(\"SAT\", \"Educ\")\n",
- "\n",
- "g.node(\"Family Income\")\n",
- "g.edge(\"Family Income\", \"Wage\")\n",
- "\n",
- "g.edge(\"Intelligence\", \"SAT\")\n",
- "g.edge(\"Intelligence\", \"Wage\")\n",
- "g"
- ],
- "id": "aa4deaf1"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- Often, there are confounding variables that we cannot observe\n",
- " - For example, we cannot observe intelligence, but it is a common\n",
- " cause of both education (the treatment) and wages\n",
- "\n",
- "## Confounding"
- ],
- "id": "cd3ca0e8-9423-444e-ae8d-2c9c4feba5fd"
- },
- {
- "cell_type": "code",
- "execution_count": 27,
- "metadata": {
- "output-location": "column"
- },
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIyNjRwdCIgaGVpZ2h0PSIyNjBwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAyNjMuNjQg\nMjYwLjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDI1NikiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0y\nNTYgMjU5LjY0LC0yNTYgMjU5LjY0LDQgLTQsNCIvPgo8IS0tIEZhbWlseSBJbmNvbWUgLS0+Cjxn\nIGlkPSJub2RlMSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+RmFtaWx5IEluY29tZTwvdGl0bGU+Cjxl\nbGxpcHNlIGZpbGw9ImxpZ2h0Z3JleSIgc3Ryb2tlPSJibGFjayIgY3g9IjY1LjY0IiBjeT0iLTE2\nMiIgcng9IjY1Ljc5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iNjUu\nNjQiIHk9Ii0xNTguMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1z\naXplPSIxNC4wMCI+RmFtaWx5IEluY29tZTwvdGV4dD4KPC9nPgo8IS0tIEVkdWMgLS0+CjxnIGlk\nPSJub2RlMiIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+RWR1YzwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9\nIm5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSIxNjEuNjQiIGN5PSItOTAiIHJ4PSIyOC43IiByeT0i\nMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTYxLjY0IiB5PSItODYuMyIgZm9u\ndC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+RWR1Yzwv\ndGV4dD4KPC9nPgo8IS0tIEZhbWlseSBJbmNvbWUmIzQ1OyZndDtFZHVjIC0tPgo8ZyBpZD0iZWRn\nZTEiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkZhbWlseSBJbmNvbWUmIzQ1OyZndDtFZHVjPC90aXRs\nZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTg3LjkxLC0xNDQuNzZDMTAy\nLjA4LC0xMzQuNDMgMTIwLjQ5LC0xMjEuMDEgMTM1LjM4LC0xMTAuMTUiLz4KPHBvbHlnb24gZmls\nbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMTM3LjY1LC0xMTIuODIgMTQzLjY3LC0x\nMDQuMSAxMzMuNTMsLTEwNy4xNyAxMzcuNjUsLTExMi44MiIvPgo8L2c+CjwhLS0gV2FnZSAtLT4K\nPGcgaWQ9Im5vZGUzIiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5XYWdlPC90aXRsZT4KPGVsbGlwc2Ug\nZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjE2MS42NCIgY3k9Ii0xOCIgcng9IjMwLjU5\nIiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTYxLjY0IiB5PSItMTQu\nMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+\nV2FnZTwvdGV4dD4KPC9nPgo8IS0tIEZhbWlseSBJbmNvbWUmIzQ1OyZndDtXYWdlIC0tPgo8ZyBp\nZD0iZWRnZTQiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkZhbWlseSBJbmNvbWUmIzQ1OyZndDtXYWdl\nPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTc2LjMzLC0xNDQu\nMTJDODcuOCwtMTI2LjExIDEwNi42OCwtOTYuODEgMTIzLjY0LC03MiAxMzAuMTMsLTYyLjUxIDEz\nNy40NSwtNTIuMjEgMTQzLjkzLC00My4yMyIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tl\nPSJibGFjayIgcG9pbnRzPSIxNDYuNzgsLTQ1LjI2IDE0OS44MSwtMzUuMTEgMTQxLjExLC00MS4x\nNSAxNDYuNzgsLTQ1LjI2Ii8+CjwvZz4KPCEtLSBFZHVjJiM0NTsmZ3Q7V2FnZSAtLT4KPGcgaWQ9\nImVkZ2UyIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5FZHVjJiM0NTsmZ3Q7V2FnZTwvdGl0bGU+Cjxw\nYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik0xNjEuNjQsLTcxLjdDMTYxLjY0LC02\nMy45OCAxNjEuNjQsLTU0LjcxIDE2MS42NCwtNDYuMTEiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2si\nIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMTY1LjE0LC00Ni4xIDE2MS42NCwtMzYuMSAxNTguMTQs\nLTQ2LjEgMTY1LjE0LC00Ni4xIi8+CjwvZz4KPCEtLSBTQVQgLS0+CjxnIGlkPSJub2RlNCIgY2xh\nc3M9Im5vZGUiPgo8dGl0bGU+U0FUPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibGlnaHRncmV5IiBz\ndHJva2U9ImJsYWNrIiBjeD0iMTc2LjY0IiBjeT0iLTE2MiIgcng9IjI3IiByeT0iMTgiLz4KPHRl\neHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTc2LjY0IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5\nPSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlNBVDwvdGV4dD4KPC9n\nPgo8IS0tIFNBVCYjNDU7Jmd0O0VkdWMgLS0+CjxnIGlkPSJlZGdlMyIgY2xhc3M9ImVkZ2UiPgo8\ndGl0bGU+U0FUJiM0NTsmZ3Q7RWR1YzwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0i\nYmxhY2siIGQ9Ik0xNzMuMDEsLTE0NC4wNUMxNzEuMzQsLTEzNi4yNiAxNjkuMzIsLTEyNi44MiAx\nNjcuNDUsLTExOC4wOCIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9p\nbnRzPSIxNzAuODYsLTExNy4zMiAxNjUuMzUsLTEwOC4yOCAxNjQuMDIsLTExOC43OSAxNzAuODYs\nLTExNy4zMiIvPgo8L2c+CjwhLS0gSW50ZWxsaWdlbmNlIC0tPgo8ZyBpZD0ibm9kZTUiIGNsYXNz\nPSJub2RlIj4KPHRpdGxlPkludGVsbGlnZW5jZTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUi\nIHN0cm9rZT0iYmxhY2siIGN4PSIyMDMuNjQiIGN5PSItMjM0IiByeD0iNTEuOTkiIHJ5PSIxOCIv\nPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIyMDMuNjQiIHk9Ii0yMzAuMyIgZm9udC1m\nYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+SW50ZWxsaWdl\nbmNlPC90ZXh0Pgo8L2c+CjwhLS0gSW50ZWxsaWdlbmNlJiM0NTsmZ3Q7V2FnZSAtLT4KPGcgaWQ9\nImVkZ2U2IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5JbnRlbGxpZ2VuY2UmIzQ1OyZndDtXYWdlPC90\naXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTIwNy4zLC0yMTUuOTFD\nMjA5LjMyLC0yMDUuNTcgMjExLjYyLC0xOTIuMDkgMjEyLjY0LC0xODAgMjE2LjcxLC0xMzEuODIg\nMjE4LjQ5LC0xMTYuNTIgMTk5LjY0LC03MiAxOTUuMTYsLTYxLjQxIDE4OC4yNiwtNTAuODggMTgx\nLjU2LC00Mi4wNCIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRz\nPSIxODQuMjQsLTM5Ljc4IDE3NS4yOCwtMzQuMTIgMTc4Ljc1LC00NC4xMyAxODQuMjQsLTM5Ljc4\nIi8+CjwvZz4KPCEtLSBJbnRlbGxpZ2VuY2UmIzQ1OyZndDtTQVQgLS0+CjxnIGlkPSJlZGdlNSIg\nY2xhc3M9ImVkZ2UiPgo8dGl0bGU+SW50ZWxsaWdlbmNlJiM0NTsmZ3Q7U0FUPC90aXRsZT4KPHBh\ndGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTE5Ny4xMSwtMjE2LjA1QzE5NC4wMiwt\nMjA4LjA2IDE5MC4yNywtMTk4LjMzIDE4Ni44MywtMTg5LjQiLz4KPHBvbHlnb24gZmlsbD0iYmxh\nY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMTg5Ljk4LC0xODcuODYgMTgzLjEyLC0xNzkuNzkg\nMTgzLjQ1LC0xOTAuMzggMTg5Ljk4LC0xODcuODYiLz4KPC9nPgo8L2c+Cjwvc3ZnPgo=\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "\n",
- "g.node(\"Family Income\", style=\"filled\")\n",
- "g.edge(\"Family Income\", \"Educ\")\n",
- "g.edge(\"Educ\", \"Wage\")\n",
- "\n",
- "g.node(\"SAT\", style=\"filled\")\n",
- "g.edge(\"SAT\", \"Educ\")\n",
- "\n",
- "g.node(\"Family Income\", style=\"filled\")\n",
- "g.edge(\"Family Income\", \"Wage\")\n",
- "\n",
- "g.edge(\"Intelligence\", \"SAT\")\n",
- "g.edge(\"Intelligence\", \"Wage\")\n",
- "g"
- ],
- "id": "469aa63e"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- Often, there are confounding variables that we cannot observe\n",
- " - For example, we cannot observe intelligence, but it is a common\n",
- " cause of both education (the treatment) and wages\n",
- " - But we can use SAT as a **surrogate** or **proxy** for\n",
- " intelligence.\n",
- "\n",
- "# Selection\n",
- "\n",
- "## Selection\n",
- "\n",
- "- Selection bias often occurs when there is an unobserved variable\n",
- " that is a common cause of both the treatment and the selection into\n",
- " the sample, in other words, by conditioning on a variable that you\n",
- " shouldn’t."
- ],
- "id": "f96e3351-774a-4bd3-9d15-df4d578e4c2c"
- },
- {
- "cell_type": "code",
- "execution_count": 28,
- "metadata": {
- "output-location": "column"
- },
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIzNjVwdCIgaGVpZ2h0PSIyNjBwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAzNjQuNTQg\nMjYwLjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDI1NikiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0y\nNTYgMzYwLjU0LC0yNTYgMzYwLjU0LDQgLTQsNCIvPgo8IS0tIFggLS0+CjxnIGlkPSJub2RlMSIg\nY2xhc3M9Im5vZGUiPgo8dGl0bGU+WDwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9ImxpZ2h0Z3JleSIg\nc3Ryb2tlPSJibGFjayIgY3g9IjI3IiBjeT0iLTkwIiByeD0iMjciIHJ5PSIxOCIvPgo8dGV4dCB0\nZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIyNyIgeT0iLTg2LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBO\nZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlg8L3RleHQ+CjwvZz4KPCEtLSBUIC0t\nPgo8ZyBpZD0ibm9kZTIiIGNsYXNzPSJub2RlIj4KPHRpdGxlPlQ8L3RpdGxlPgo8ZWxsaXBzZSBm\naWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iMzciIGN5PSItMjM0IiByeD0iMjciIHJ5PSIx\nOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIzNyIgeT0iLTIzMC4zIiBmb250LWZh\nbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5UPC90ZXh0Pgo8\nL2c+CjwhLS0gVCYjNDU7Jmd0O1ggLS0+CjxnIGlkPSJlZGdlMSIgY2xhc3M9ImVkZ2UiPgo8dGl0\nbGU+VCYjNDU7Jmd0O1g8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBk\nPSJNMjYuNzYsLTIxNy4wMkMyMC44OCwtMjA2Ljg2IDE0LjA2LC0xOTMuMTggMTEsLTE4MCA2LjEz\nLC0xNTkuMDMgMTEuMDcsLTEzNSAxNi43LC0xMTcuMiIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIg\nc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIyMC4wOSwtMTE4LjEgMjAuMDMsLTEwNy41IDEzLjQ3LC0x\nMTUuODMgMjAuMDksLTExOC4xIi8+CjwvZz4KPCEtLSBZIC0tPgo8ZyBpZD0ibm9kZTMiIGNsYXNz\nPSJub2RlIj4KPHRpdGxlPlk8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJs\nYWNrIiBjeD0iNDciIGN5PSItMTYyIiByeD0iMjciIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hv\ncj0ibWlkZGxlIiB4PSI0NyIgeT0iLTE1OC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFu\nLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5ZPC90ZXh0Pgo8L2c+CjwhLS0gVCYjNDU7Jmd0O1kg\nLS0+CjxnIGlkPSJlZGdlMiIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+VCYjNDU7Jmd0O1k8L3RpdGxl\nPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNMzkuNDIsLTIxNi4wNUM0MC41\nMiwtMjA4LjM1IDQxLjg1LC0xOTkuMDMgNDMuMDksLTE5MC4zNiIvPgo8cG9seWdvbiBmaWxsPSJi\nbGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI0Ni41OCwtMTkwLjY3IDQ0LjUzLC0xODAuMjgg\nMzkuNjUsLTE4OS42OCA0Ni41OCwtMTkwLjY3Ii8+CjwvZz4KPCEtLSBZJiM0NTsmZ3Q7WCAtLT4K\nPGcgaWQ9ImVkZ2UzIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5ZJiM0NTsmZ3Q7WDwvdGl0bGU+Cjxw\nYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik00Mi4xNiwtMTQ0LjA1QzM5LjksLTEz\nNi4xNCAzNy4xNSwtMTI2LjU0IDM0LjYzLC0xMTcuNjkiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2si\nIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMzcuOTEsLTExNi40NCAzMS44LC0xMDcuNzkgMzEuMTgs\nLTExOC4zNyAzNy45MSwtMTE2LjQ0Ii8+CjwvZz4KPCEtLSBJbnZlc3RtZW50cyAtLT4KPGcgaWQ9\nIm5vZGU0IiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5JbnZlc3RtZW50czwvdGl0bGU+CjxlbGxpcHNl\nIGZpbGw9ImxpZ2h0Z3JleSIgc3Ryb2tlPSJibGFjayIgY3g9IjE0MCIgY3k9Ii05MCIgcng9IjUz\nLjg5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTQwIiB5PSItODYu\nMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+\nSW52ZXN0bWVudHM8L3RleHQ+CjwvZz4KPCEtLSBFZHVjIC0tPgo8ZyBpZD0ibm9kZTUiIGNsYXNz\nPSJub2RlIj4KPHRpdGxlPkVkdWM8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9\nImJsYWNrIiBjeD0iMTI5IiBjeT0iLTIzNCIgcng9IjI4LjciIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0\nLWFuY2hvcj0ibWlkZGxlIiB4PSIxMjkiIHk9Ii0yMzAuMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5l\ndyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+RWR1YzwvdGV4dD4KPC9nPgo8IS0tIEVk\ndWMmIzQ1OyZndDtJbnZlc3RtZW50cyAtLT4KPGcgaWQ9ImVkZ2U0IiBjbGFzcz0iZWRnZSI+Cjx0\naXRsZT5FZHVjJiM0NTsmZ3Q7SW52ZXN0bWVudHM8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBz\ndHJva2U9ImJsYWNrIiBkPSJNMTMwLjMzLC0yMTUuODdDMTMyLjIsLTE5MS42NyAxMzUuNjUsLTE0\nNy4yMSAxMzcuODgsLTExOC4zOSIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFj\nayIgcG9pbnRzPSIxNDEuMzksLTExOC40MyAxMzguNjcsLTEwOC4xOSAxMzQuNDEsLTExNy44OSAx\nNDEuMzksLTExOC40MyIvPgo8L2c+CjwhLS0gV2FnZSAtLT4KPGcgaWQ9Im5vZGU2IiBjbGFzcz0i\nbm9kZSI+Cjx0aXRsZT5XYWdlPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJi\nbGFjayIgY3g9IjE3OSIgY3k9Ii0xNjIiIHJ4PSIzMC41OSIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQt\nYW5jaG9yPSJtaWRkbGUiIHg9IjE3OSIgeT0iLTE1OC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3\nIFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5XYWdlPC90ZXh0Pgo8L2c+CjwhLS0gRWR1\nYyYjNDU7Jmd0O1dhZ2UgLS0+CjxnIGlkPSJlZGdlNSIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+RWR1\nYyYjNDU7Jmd0O1dhZ2U8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBk\nPSJNMTQwLjM1LC0yMTcuMTJDMTQ2LjY3LC0yMDguMjYgMTU0LjY5LC0xOTcuMDQgMTYxLjc3LC0x\nODcuMTIiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMTY0\nLjczLC0xODguOTkgMTY3LjcsLTE3OC44MiAxNTkuMDQsLTE4NC45MiAxNjQuNzMsLTE4OC45OSIv\nPgo8L2c+CjwhLS0gV2FnZSYjNDU7Jmd0O0ludmVzdG1lbnRzIC0tPgo8ZyBpZD0iZWRnZTYiIGNs\nYXNzPSJlZGdlIj4KPHRpdGxlPldhZ2UmIzQ1OyZndDtJbnZlc3RtZW50czwvdGl0bGU+CjxwYXRo\nIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik0xNjkuOTUsLTE0NC43NkMxNjUuMzYsLTEz\nNi41MyAxNTkuNjgsLTEyNi4zMiAxNTQuNDksLTExNy4wMiIvPgo8cG9seWdvbiBmaWxsPSJibGFj\nayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIxNTcuNDcsLTExNS4xNiAxNDkuNTQsLTEwOC4xMiAx\nNTEuMzUsLTExOC41NiAxNTcuNDcsLTExNS4xNiIvPgo8L2c+CjwhLS0gRWR1YzIgLS0+CjxnIGlk\nPSJub2RlNyIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+RWR1YzI8L3RpdGxlPgo8ZWxsaXBzZSBmaWxs\nPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iMjg3IiBjeT0iLTIzNCIgcng9IjI4LjciIHJ5PSIx\nOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIyODciIHk9Ii0yMzAuMyIgZm9udC1m\nYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+RWR1YzwvdGV4\ndD4KPC9nPgo8IS0tIFdhZ2UyIC0tPgo8ZyBpZD0ibm9kZTgiIGNsYXNzPSJub2RlIj4KPHRpdGxl\nPldhZ2UyPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjI1\nOCIgY3k9Ii0xNjIiIHJ4PSIzMC41OSIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRk\nbGUiIHg9IjI1OCIgeT0iLTE1OC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlm\nIiBmb250LXNpemU9IjE0LjAwIj5XYWdlPC90ZXh0Pgo8L2c+CjwhLS0gRWR1YzImIzQ1OyZndDtX\nYWdlMiAtLT4KPGcgaWQ9ImVkZ2U3IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5FZHVjMiYjNDU7Jmd0\nO1dhZ2UyPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTI4MC4x\nMywtMjE2LjQxQzI3Ni43OCwtMjA4LjM0IDI3Mi42OCwtMTk4LjQzIDI2OC45MiwtMTg5LjM1Ii8+\nCjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjI3Mi4wOSwtMTg3\nLjg2IDI2NS4wMiwtMTc5Ljk2IDI2NS42MiwtMTkwLjUzIDI3Mi4wOSwtMTg3Ljg2Ii8+CjwvZz4K\nPCEtLSBJbnZlc3RtZW50czIgLS0+CjxnIGlkPSJub2RlOSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+\nSW52ZXN0bWVudHMyPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIg\nY3g9IjI4NyIgY3k9Ii05MCIgcng9IjUzLjg5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9\nIm1pZGRsZSIgeD0iMjg3IiB5PSItODYuMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixz\nZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+SW52ZXN0bWVudHM8L3RleHQ+CjwvZz4KPCEtLSBFZHVj\nMiYjNDU7Jmd0O0ludmVzdG1lbnRzMiAtLT4KPGcgaWQ9ImVkZ2U5IiBjbGFzcz0iZWRnZSI+Cjx0\naXRsZT5FZHVjMiYjNDU7Jmd0O0ludmVzdG1lbnRzMjwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUi\nIHN0cm9rZT0iYmxhY2siIGQ9Ik0yOTEuNDYsLTIxNS45NUMyOTMuOTQsLTIwNS42MyAyOTYuNzUs\nLTE5Mi4xNSAyOTgsLTE4MCAyOTkuNjMsLTE2NC4wOCAyOTkuNjMsLTE1OS45MiAyOTgsLTE0NCAy\nOTcuMTIsLTEzNS40NiAyOTUuNDcsLTEyNi4yNiAyOTMuNzEsLTExNy45NiIvPgo8cG9seWdvbiBm\naWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIyOTcuMDgsLTExNy4wMyAyOTEuNDYs\nLTEwOC4wNSAyOTAuMjYsLTExOC41NyAyOTcuMDgsLTExNy4wMyIvPgo8L2c+CjwhLS0gV2FnZTIm\nIzQ1OyZndDtJbnZlc3RtZW50czIgLS0+CjxnIGlkPSJlZGdlOCIgY2xhc3M9ImVkZ2UiPgo8dGl0\nbGU+V2FnZTImIzQ1OyZndDtJbnZlc3RtZW50czI8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBz\ndHJva2U9ImJsYWNrIiBkPSJNMjY0Ljg3LC0xNDQuNDFDMjY4LjIyLC0xMzYuMzQgMjcyLjMyLC0x\nMjYuNDMgMjc2LjA4LC0xMTcuMzUiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxh\nY2siIHBvaW50cz0iMjc5LjM4LC0xMTguNTMgMjc5Ljk4LC0xMDcuOTYgMjcyLjkxLC0xMTUuODYg\nMjc5LjM4LC0xMTguNTMiLz4KPC9nPgo8IS0tIENhcGl0YWxHYWluc1RheCAtLT4KPGcgaWQ9Im5v\nZGUxMCIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+Q2FwaXRhbEdhaW5zVGF4PC90aXRsZT4KPGVsbGlw\nc2UgZmlsbD0ibGlnaHRncmV5IiBzdHJva2U9ImJsYWNrIiBjeD0iMjg3IiBjeT0iLTE4IiByeD0i\nNjkuNTkiIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIyODciIHk9Ii0x\nNC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAw\nIj5DYXBpdGFsR2FpbnNUYXg8L3RleHQ+CjwvZz4KPCEtLSBJbnZlc3RtZW50czImIzQ1OyZndDtD\nYXBpdGFsR2FpbnNUYXggLS0+CjxnIGlkPSJlZGdlMTAiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPklu\ndmVzdG1lbnRzMiYjNDU7Jmd0O0NhcGl0YWxHYWluc1RheDwvdGl0bGU+CjxwYXRoIGZpbGw9Im5v\nbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik0yODcsLTcxLjdDMjg3LC02My45OCAyODcsLTU0LjcxIDI4\nNywtNDYuMTEiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0i\nMjkwLjUsLTQ2LjEgMjg3LC0zNi4xIDI4My41LC00Ni4xIDI5MC41LC00Ni4xIi8+CjwvZz4KPC9n\nPgo8L3N2Zz4K\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "g.node(\"X\", style=\"filled\")\n",
- "g.edge(\"T\", \"X\")\n",
- "g.edge(\"T\", \"Y\")\n",
- "g.edge(\"Y\", \"X\")\n",
- "g.node(\"Investments\", \"Investments\", style=\"filled\")\n",
- "g.edge(\"Educ\", \"Investments\")\n",
- "g.edge(\"Educ\", \"Wage\")\n",
- "g.edge(\"Wage\", \"Investments\")\n",
- "g.node(\"Educ2\", \"Educ\")\n",
- "g.node(\"Wage2\", \"Wage\")\n",
- "g.node(\"Investments2\", \"Investments\")\n",
- "g.edge(\"Educ2\", \"Wage2\")\n",
- "g.edge(\"Wage2\", \"Investments2\")\n",
- "g.edge(\"Educ2\", \"Investments2\")\n",
- "g.node(\"CapitalGainsTax\", \"CapitalGainsTax\", style=\"filled\")\n",
- "g.edge(\"Investments2\", \"CapitalGainsTax\")\n",
- "g"
- ],
- "id": "b309f7ad"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Selection\n",
- "\n",
- "- Selection bias can also occur when controlling for a **mediator**\n",
- " between the treatment and the outcome"
- ],
- "id": "ff865c1d-afed-4681-8abf-ce2f77418aa2"
- },
- {
- "cell_type": "code",
- "execution_count": 29,
- "metadata": {
- "output-location": "column"
- },
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIyNDVwdCIgaGVpZ2h0PSIxODhwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAyNDQuNTUg\nMTg4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDE4NCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nODQgMjQwLjU1LC0xODQgMjQwLjU1LDQgLTQsNCIvPgo8IS0tIFQgLS0+CjxnIGlkPSJub2RlMSIg\nY2xhc3M9Im5vZGUiPgo8dGl0bGU+VDwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9r\nZT0iYmxhY2siIGN4PSI1NSIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQt\nYW5jaG9yPSJtaWRkbGUiIHg9IjU1IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcg\nUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlQ8L3RleHQ+CjwvZz4KPCEtLSBYIC0tPgo8\nZyBpZD0ibm9kZTIiIGNsYXNzPSJub2RlIj4KPHRpdGxlPlg8L3RpdGxlPgo8ZWxsaXBzZSBmaWxs\nPSJsaWdodGdyZXkiIHN0cm9rZT0iYmxhY2siIGN4PSIyNyIgY3k9Ii05MCIgcng9IjI3IiByeT0i\nMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjciIHk9Ii04Ni4zIiBmb250LWZh\nbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5YPC90ZXh0Pgo8\nL2c+CjwhLS0gVCYjNDU7Jmd0O1ggLS0+CjxnIGlkPSJlZGdlMSIgY2xhc3M9ImVkZ2UiPgo8dGl0\nbGU+VCYjNDU7Jmd0O1g8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBk\nPSJNNDguMzYsLTE0NC40MUM0NS4wOSwtMTM2LjIyIDQxLjA2LC0xMjYuMTQgMzcuMzgsLTExNi45\nNSIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI0MC41NSwt\nMTE1LjQ1IDMzLjU5LC0xMDcuNDcgMzQuMDUsLTExOC4wNSA0MC41NSwtMTE1LjQ1Ii8+CjwvZz4K\nPCEtLSBZIC0tPgo8ZyBpZD0ibm9kZTMiIGNsYXNzPSJub2RlIj4KPHRpdGxlPlk8L3RpdGxlPgo8\nZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iNTUiIGN5PSItMTgiIHJ4PSIy\nNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjU1IiB5PSItMTQuMyIg\nZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+WTwv\ndGV4dD4KPC9nPgo8IS0tIFQmIzQ1OyZndDtZIC0tPgo8ZyBpZD0iZWRnZTIiIGNsYXNzPSJlZGdl\nIj4KPHRpdGxlPlQmIzQ1OyZndDtZPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJi\nbGFjayIgZD0iTTU4LjI1LC0xNDMuODlDNjAuMDUsLTEzMy41NCA2Mi4wOSwtMTIwLjA2IDYzLC0x\nMDggNjQuMiwtOTIuMDQgNjQuMiwtODcuOTYgNjMsLTcyIDYyLjM2LC02My41MiA2MS4xNiwtNTQu\nMzQgNTkuODgsLTQ2LjA0Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBw\nb2ludHM9IjYzLjMyLC00NS40MSA1OC4yNSwtMzYuMTEgNTYuNDIsLTQ2LjU1IDYzLjMyLC00NS40\nMSIvPgo8L2c+CjwhLS0gWCYjNDU7Jmd0O1kgLS0+CjxnIGlkPSJlZGdlMyIgY2xhc3M9ImVkZ2Ui\nPgo8dGl0bGU+WCYjNDU7Jmd0O1k8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJs\nYWNrIiBkPSJNMzMuNjQsLTcyLjQxQzM2LjkxLC02NC4yMiA0MC45NCwtNTQuMTQgNDQuNjIsLTQ0\nLjk1Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjQ3Ljk1\nLC00Ni4wNSA0OC40MSwtMzUuNDcgNDEuNDUsLTQzLjQ1IDQ3Ljk1LC00Ni4wNSIvPgo8L2c+Cjwh\nLS0gRWR1YyAtLT4KPGcgaWQ9Im5vZGU0IiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5FZHVjPC90aXRs\nZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjIwNiIgY3k9Ii0xNjIi\nIHJ4PSIyOC43IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjA2IiB5\nPSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0i\nMTQuMDAiPkVkdWM8L3RleHQ+CjwvZz4KPCEtLSBXaGl0ZUNvbGxhciAtLT4KPGcgaWQ9Im5vZGU1\nIiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5XaGl0ZUNvbGxhcjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9\nImxpZ2h0Z3JleSIgc3Ryb2tlPSJibGFjayIgY3g9IjE2NSIgY3k9Ii05MCIgcng9IjU0LjY5IiBy\neT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTY1IiB5PSItODYuMyIgZm9u\ndC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+V2hpdGVD\nb2xsYXI8L3RleHQ+CjwvZz4KPCEtLSBFZHVjJiM0NTsmZ3Q7V2hpdGVDb2xsYXIgLS0+CjxnIGlk\nPSJlZGdlNCIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+RWR1YyYjNDU7Jmd0O1doaXRlQ29sbGFyPC90\naXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTE5Ni40OSwtMTQ0Ljc2\nQzE5MS42NiwtMTM2LjUzIDE4NS42OSwtMTI2LjMyIDE4MC4yNCwtMTE3LjAyIi8+Cjxwb2x5Z29u\nIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjE4My4xLC0xMTQuOTggMTc1LjAz\nLC0xMDguMTIgMTc3LjA2LC0xMTguNTIgMTgzLjEsLTExNC45OCIvPgo8L2c+CjwhLS0gV2FnZSAt\nLT4KPGcgaWQ9Im5vZGU2IiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5XYWdlPC90aXRsZT4KPGVsbGlw\nc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjIwNiIgY3k9Ii0xOCIgcng9IjMwLjU5\nIiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjA2IiB5PSItMTQuMyIg\nZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+V2Fn\nZTwvdGV4dD4KPC9nPgo8IS0tIEVkdWMmIzQ1OyZndDtXYWdlIC0tPgo8ZyBpZD0iZWRnZTUiIGNs\nYXNzPSJlZGdlIj4KPHRpdGxlPkVkdWMmIzQ1OyZndDtXYWdlPC90aXRsZT4KPHBhdGggZmlsbD0i\nbm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTIxNS4wNywtMTQ0Ljg3QzIyMC4yOCwtMTM0LjY1IDIy\nNi4zMSwtMTIwLjk2IDIyOSwtMTA4IDIzMi4yNSwtOTIuMzMgMjMyLjI1LC04Ny42NyAyMjksLTcy\nIDIyNy4wOSwtNjIuODIgMjIzLjUyLC01My4yOSAyMTkuNzQsLTQ0Ljg3Ii8+Cjxwb2x5Z29uIGZp\nbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjIyMi43OCwtNDMuMTEgMjE1LjMsLTM1\nLjYgMjE2LjQ2LC00Ni4xMyAyMjIuNzgsLTQzLjExIi8+CjwvZz4KPCEtLSBXaGl0ZUNvbGxhciYj\nNDU7Jmd0O1dhZ2UgLS0+CjxnIGlkPSJlZGdlNiIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+V2hpdGVD\nb2xsYXImIzQ1OyZndDtXYWdlPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFj\nayIgZD0iTTE3NC45MiwtNzIuMDVDMTc5LjgzLC02My42OCAxODUuODUsLTUzLjQgMTkxLjI4LC00\nNC4xMyIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIxOTQu\nNDEsLTQ1LjcgMTk2LjQ1LC0zNS4zMSAxODguMzcsLTQyLjE3IDE5NC40MSwtNDUuNyIvPgo8L2c+\nCjwvZz4KPC9zdmc+Cg==\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "\n",
- "g = gr.Digraph()\n",
- "g.edge(\"T\", \"X\")\n",
- "g.edge(\"T\", \"Y\")\n",
- "g.edge(\"X\", \"Y\")\n",
- "g.node(\"X\", \"X\", style=\"filled\")\n",
- "\n",
- "g.edge('Educ', 'WhiteCollar')\n",
- "g.edge('Educ', 'Wage')\n",
- "g.edge('WhiteCollar', 'Wage')\n",
- "g.node('WhiteCollar', style=\"filled\")\n",
- "\n",
- "g"
- ],
- "id": "f5f9d54e"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "# Choosing Covariates\n",
- "\n",
- "## Choosing Covariates\n",
- "\n",
- "- With these types of bias in mind, we can think about how to choose\n",
- " which covariates to condition on.\n",
- "\n",
- "- Notice that some controls will reduce bias, as in the case of\n",
- " confounding,\n",
- "\n",
- "- But *not all controls are good!* Some controls will actually create\n",
- " bias, as in the case of selection.\n",
- "\n",
- "- This means that we don’t want to just “throw the kitchen sink” at\n",
- " the problem, and include every variable we can think of.\n",
- "\n",
- "## Choosing Covariates\n",
- "\n",
- "- We want to choose covariates that will close any unblocked secondary\n",
- " dependence paths between the treatment and the outcome, but not open\n",
- " any new ones.\n",
- "\n",
- "- To do this, we can use the “front door criterion” and the “back door\n",
- " criterion”\n",
- "\n",
- "## The Front Door Criterion\n",
- "\n",
- "- The **front door criterion** is one way to isolate the effect of a\n",
- " treatment on an outcome, when there is a confounder and a mediator\n",
- " between the treatment and the outcome."
- ],
- "id": "91a52c2c-0721-4c2c-8b74-10d2893d6fab"
- },
- {
- "cell_type": "code",
- "execution_count": 30,
- "metadata": {
- "output-location": "column"
- },
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxNDBwdCIgaGVpZ2h0PSIyNjBwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxMzkuODQg\nMjYwLjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDI1NikiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0y\nNTYgMTM1Ljg0LC0yNTYgMTM1Ljg0LDQgLTQsNCIvPgo8IS0tIExvdHNPZlN0dWZmIC0tPgo8ZyBp\nZD0ibm9kZTEiIGNsYXNzPSJub2RlIj4KPHRpdGxlPkxvdHNPZlN0dWZmPC90aXRsZT4KPGVsbGlw\nc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9Ijc3LjkiIGN5PSItMjM0IiByeD0iNTMu\nMDkiIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSI3Ny45IiB5PSItMjMw\nLjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAi\nPkxvdHNPZlN0dWZmPC90ZXh0Pgo8L2c+CjwhLS0gU21va2luZyAtLT4KPGcgaWQ9Im5vZGUyIiBj\nbGFzcz0ibm9kZSI+Cjx0aXRsZT5TbW9raW5nPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIg\nc3Ryb2tlPSJibGFjayIgY3g9IjQyLjkiIGN5PSItMTYyIiByeD0iNDIuNzkiIHJ5PSIxOCIvPgo8\ndGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSI0Mi45IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5\nPSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlNtb2tpbmc8L3RleHQ+\nCjwvZz4KPCEtLSBMb3RzT2ZTdHVmZiYjNDU7Jmd0O1Ntb2tpbmcgLS0+CjxnIGlkPSJlZGdlMSIg\nY2xhc3M9ImVkZ2UiPgo8dGl0bGU+TG90c09mU3R1ZmYmIzQ1OyZndDtTbW9raW5nPC90aXRsZT4K\nPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTY5LjQyLC0yMTYuMDVDNjUuMzQs\nLTIwNy44OSA2MC4zNSwtMTk3LjkxIDU1LjgxLC0xODguODIiLz4KPHBvbHlnb24gZmlsbD0iYmxh\nY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNTguODksLTE4Ny4xNyA1MS4yOSwtMTc5Ljc5IDUy\nLjYzLC0xOTAuMyA1OC44OSwtMTg3LjE3Ii8+CjwvZz4KPCEtLSBMdW5nQ2FuY2VyIC0tPgo8ZyBp\nZD0ibm9kZTMiIGNsYXNzPSJub2RlIj4KPHRpdGxlPkx1bmdDYW5jZXI8L3RpdGxlPgo8ZWxsaXBz\nZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iNzcuOSIgY3k9Ii0xOCIgcng9IjUzLjg5\nIiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iNzcuOSIgeT0iLTE0LjMi\nIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkx1\nbmdDYW5jZXI8L3RleHQ+CjwvZz4KPCEtLSBMb3RzT2ZTdHVmZiYjNDU7Jmd0O0x1bmdDYW5jZXIg\nLS0+CjxnIGlkPSJlZGdlMiIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+TG90c09mU3R1ZmYmIzQ1OyZn\ndDtMdW5nQ2FuY2VyPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0i\nTTg0Ljc5LC0yMTYuMTRDODguNiwtMjA1Ljg4IDkyLjk1LC0xOTIuNDEgOTQuOSwtMTgwIDEwMi4y\nMywtMTMzLjEgOTIuNDksLTc4IDg1LjAxLC00NS45NCIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIg\nc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI4OC4zNSwtNDQuODggODIuNTksLTM1Ljk5IDgxLjU1LC00\nNi41NCA4OC4zNSwtNDQuODgiLz4KPC9nPgo8IS0tIFRhciAtLT4KPGcgaWQ9Im5vZGU0IiBjbGFz\ncz0ibm9kZSI+Cjx0aXRsZT5UYXI8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9\nImJsYWNrIiBjeD0iNTAuOSIgY3k9Ii05MCIgcng9IjI3IiByeT0iMTgiLz4KPHRleHQgdGV4dC1h\nbmNob3I9Im1pZGRsZSIgeD0iNTAuOSIgeT0iLTg2LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcg\nUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlRhcjwvdGV4dD4KPC9nPgo8IS0tIFNtb2tp\nbmcmIzQ1OyZndDtUYXIgLS0+CjxnIGlkPSJlZGdlMyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+U21v\na2luZyYjNDU7Jmd0O1RhcjwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2si\nIHN0cm9rZS1kYXNoYXJyYXk9IjUsMiIgZD0iTTQ0Ljg3LC0xNDMuN0M0NS43NiwtMTM1Ljk4IDQ2\nLjgxLC0xMjYuNzEgNDcuOCwtMTE4LjExIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9\nImJsYWNrIiBwb2ludHM9IjUxLjI4LC0xMTguNDQgNDguOTQsLTEwOC4xIDQ0LjMzLC0xMTcuNjQg\nNTEuMjgsLTExOC40NCIvPgo8L2c+CjwhLS0gVGFyJiM0NTsmZ3Q7THVuZ0NhbmNlciAtLT4KPGcg\naWQ9ImVkZ2U0IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5UYXImIzQ1OyZndDtMdW5nQ2FuY2VyPC90\naXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLWRhc2hhcnJheT0i\nNSwyIiBkPSJNNTcuMjksLTcyLjQxQzYwLjQxLC02NC4zNCA2NC4yMywtNTQuNDMgNjcuNzMsLTQ1\nLjM1Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjcxLjAy\nLC00Ni41NSA3MS4zNiwtMzUuOTYgNjQuNDksLTQ0LjAzIDcxLjAyLC00Ni41NSIvPgo8L2c+Cjwv\nZz4KPC9zdmc+Cg==\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "g.edge(\"LotsOfStuff\", \"Smoking\")\n",
- "g.edge(\"LotsOfStuff\", \"LungCancer\")\n",
- "g.edge(\"Smoking\", \"Tar\", style=\"dashed\")\n",
- "g.edge(\"Tar\", \"LungCancer\", style=\"dashed\")\n",
- "\n",
- "g"
- ],
- "id": "8e7a8b5b"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## The Front Door Criterion\n",
- "\n",
- "``` python\n",
- "g = gr.Digraph()\n",
- "g.edge(\"LotsOfStuff\", \"Smoking\")\n",
- "g.edge(\"LotsOfStuff\", \"LungCancer\")\n",
- "g.edge(\"Smoking\", \"Tar\", style=\"dashed\")\n",
- "g.edge(\"Tar\", \"LungCancer\", style=\"dashed\")\n",
- "\n",
- "g\n",
- "```\n",
- "\n",
- "![](attachment:causal_graphical_models_files/figure-ipynb/cell-32-output-1.svg)\n",
- "\n",
- "- In this example, we want to know the effect of smoking on lung\n",
- " cancer, but we also know that there are lots of variables (like\n",
- " stress), that cause both the treatment and the outcome.\n",
- "\n",
- "- However, stress does not cause tar, so we can condition on tar.\n",
- "\n",
- " - This works by first measuring the effect of tar on lung cancer,\n",
- " and *then* the effect of smoking on tar.\n",
- "\n",
- "## The Back Door Criterion\n",
- "\n",
- "- It’s pretty rare that we’ll actually be able to use the front door\n",
- " criterion, because we usually don’t have a mediator that we can\n",
- " condition on.\n",
- "\n",
- "- Instead, we can close all of the “back door paths” from treatment to\n",
- " outcome. We have already seen an example of this."
- ],
- "attachments": {
- "causal_graphical_models_files/figure-ipynb/cell-32-output-1.svg": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxNDBwdCIgaGVpZ2h0PSIyNjBwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxMzkuODQg\nMjYwLjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDI1NikiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0y\nNTYgMTM1Ljg0LC0yNTYgMTM1Ljg0LDQgLTQsNCIvPgo8IS0tIExvdHNPZlN0dWZmIC0tPgo8ZyBp\nZD0ibm9kZTEiIGNsYXNzPSJub2RlIj4KPHRpdGxlPkxvdHNPZlN0dWZmPC90aXRsZT4KPGVsbGlw\nc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9Ijc3LjkiIGN5PSItMjM0IiByeD0iNTMu\nMDkiIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSI3Ny45IiB5PSItMjMw\nLjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAi\nPkxvdHNPZlN0dWZmPC90ZXh0Pgo8L2c+CjwhLS0gU21va2luZyAtLT4KPGcgaWQ9Im5vZGUyIiBj\nbGFzcz0ibm9kZSI+Cjx0aXRsZT5TbW9raW5nPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIg\nc3Ryb2tlPSJibGFjayIgY3g9IjQyLjkiIGN5PSItMTYyIiByeD0iNDIuNzkiIHJ5PSIxOCIvPgo8\ndGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSI0Mi45IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5\nPSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlNtb2tpbmc8L3RleHQ+\nCjwvZz4KPCEtLSBMb3RzT2ZTdHVmZiYjNDU7Jmd0O1Ntb2tpbmcgLS0+CjxnIGlkPSJlZGdlMSIg\nY2xhc3M9ImVkZ2UiPgo8dGl0bGU+TG90c09mU3R1ZmYmIzQ1OyZndDtTbW9raW5nPC90aXRsZT4K\nPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTY5LjQyLC0yMTYuMDVDNjUuMzQs\nLTIwNy44OSA2MC4zNSwtMTk3LjkxIDU1LjgxLC0xODguODIiLz4KPHBvbHlnb24gZmlsbD0iYmxh\nY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNTguODksLTE4Ny4xNyA1MS4yOSwtMTc5Ljc5IDUy\nLjYzLC0xOTAuMyA1OC44OSwtMTg3LjE3Ii8+CjwvZz4KPCEtLSBMdW5nQ2FuY2VyIC0tPgo8ZyBp\nZD0ibm9kZTMiIGNsYXNzPSJub2RlIj4KPHRpdGxlPkx1bmdDYW5jZXI8L3RpdGxlPgo8ZWxsaXBz\nZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iNzcuOSIgY3k9Ii0xOCIgcng9IjUzLjg5\nIiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iNzcuOSIgeT0iLTE0LjMi\nIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkx1\nbmdDYW5jZXI8L3RleHQ+CjwvZz4KPCEtLSBMb3RzT2ZTdHVmZiYjNDU7Jmd0O0x1bmdDYW5jZXIg\nLS0+CjxnIGlkPSJlZGdlMiIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+TG90c09mU3R1ZmYmIzQ1OyZn\ndDtMdW5nQ2FuY2VyPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0i\nTTg0Ljc5LC0yMTYuMTRDODguNiwtMjA1Ljg4IDkyLjk1LC0xOTIuNDEgOTQuOSwtMTgwIDEwMi4y\nMywtMTMzLjEgOTIuNDksLTc4IDg1LjAxLC00NS45NCIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIg\nc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI4OC4zNSwtNDQuODggODIuNTksLTM1Ljk5IDgxLjU1LC00\nNi41NCA4OC4zNSwtNDQuODgiLz4KPC9nPgo8IS0tIFRhciAtLT4KPGcgaWQ9Im5vZGU0IiBjbGFz\ncz0ibm9kZSI+Cjx0aXRsZT5UYXI8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9\nImJsYWNrIiBjeD0iNTAuOSIgY3k9Ii05MCIgcng9IjI3IiByeT0iMTgiLz4KPHRleHQgdGV4dC1h\nbmNob3I9Im1pZGRsZSIgeD0iNTAuOSIgeT0iLTg2LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcg\nUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlRhcjwvdGV4dD4KPC9nPgo8IS0tIFNtb2tp\nbmcmIzQ1OyZndDtUYXIgLS0+CjxnIGlkPSJlZGdlMyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+U21v\na2luZyYjNDU7Jmd0O1RhcjwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2si\nIHN0cm9rZS1kYXNoYXJyYXk9IjUsMiIgZD0iTTQ0Ljg3LC0xNDMuN0M0NS43NiwtMTM1Ljk4IDQ2\nLjgxLC0xMjYuNzEgNDcuOCwtMTE4LjExIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9\nImJsYWNrIiBwb2ludHM9IjUxLjI4LC0xMTguNDQgNDguOTQsLTEwOC4xIDQ0LjMzLC0xMTcuNjQg\nNTEuMjgsLTExOC40NCIvPgo8L2c+CjwhLS0gVGFyJiM0NTsmZ3Q7THVuZ0NhbmNlciAtLT4KPGcg\naWQ9ImVkZ2U0IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5UYXImIzQ1OyZndDtMdW5nQ2FuY2VyPC90\naXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLWRhc2hhcnJheT0i\nNSwyIiBkPSJNNTcuMjksLTcyLjQxQzYwLjQxLC02NC4zNCA2NC4yMywtNTQuNDMgNjcuNzMsLTQ1\nLjM1Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjcxLjAy\nLC00Ni41NSA3MS4zNiwtMzUuOTYgNjQuNDksLTQ0LjAzIDcxLjAyLC00Ni41NSIvPgo8L2c+Cjwv\nZz4KPC9zdmc+Cg==\n"
- }
- },
- "id": "1ad7f459-51ec-43fd-bbbd-685f0e2dd2fb"
- },
- {
- "cell_type": "code",
- "execution_count": 32,
- "metadata": {},
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIyNjRwdCIgaGVpZ2h0PSIyNjBwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAyNjMuNjQg\nMjYwLjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDI1NikiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0y\nNTYgMjU5LjY0LC0yNTYgMjU5LjY0LDQgLTQsNCIvPgo8IS0tIEZhbWlseSBJbmNvbWUgLS0+Cjxn\nIGlkPSJub2RlMSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+RmFtaWx5IEluY29tZTwvdGl0bGU+Cjxl\nbGxpcHNlIGZpbGw9ImxpZ2h0Z3JleSIgc3Ryb2tlPSJibGFjayIgY3g9IjY1LjY0IiBjeT0iLTE2\nMiIgcng9IjY1Ljc5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iNjUu\nNjQiIHk9Ii0xNTguMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1z\naXplPSIxNC4wMCI+RmFtaWx5IEluY29tZTwvdGV4dD4KPC9nPgo8IS0tIEVkdWMgLS0+CjxnIGlk\nPSJub2RlMiIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+RWR1YzwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9\nIm5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSIxNjEuNjQiIGN5PSItOTAiIHJ4PSIyOC43IiByeT0i\nMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTYxLjY0IiB5PSItODYuMyIgZm9u\ndC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+RWR1Yzwv\ndGV4dD4KPC9nPgo8IS0tIEZhbWlseSBJbmNvbWUmIzQ1OyZndDtFZHVjIC0tPgo8ZyBpZD0iZWRn\nZTEiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkZhbWlseSBJbmNvbWUmIzQ1OyZndDtFZHVjPC90aXRs\nZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTg3LjkxLC0xNDQuNzZDMTAy\nLjA4LC0xMzQuNDMgMTIwLjQ5LC0xMjEuMDEgMTM1LjM4LC0xMTAuMTUiLz4KPHBvbHlnb24gZmls\nbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMTM3LjY1LC0xMTIuODIgMTQzLjY3LC0x\nMDQuMSAxMzMuNTMsLTEwNy4xNyAxMzcuNjUsLTExMi44MiIvPgo8L2c+CjwhLS0gV2FnZSAtLT4K\nPGcgaWQ9Im5vZGUzIiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5XYWdlPC90aXRsZT4KPGVsbGlwc2Ug\nZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjE2MS42NCIgY3k9Ii0xOCIgcng9IjMwLjU5\nIiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMTYxLjY0IiB5PSItMTQu\nMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+\nV2FnZTwvdGV4dD4KPC9nPgo8IS0tIEZhbWlseSBJbmNvbWUmIzQ1OyZndDtXYWdlIC0tPgo8ZyBp\nZD0iZWRnZTQiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkZhbWlseSBJbmNvbWUmIzQ1OyZndDtXYWdl\nPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTc2LjMzLC0xNDQu\nMTJDODcuOCwtMTI2LjExIDEwNi42OCwtOTYuODEgMTIzLjY0LC03MiAxMzAuMTMsLTYyLjUxIDEz\nNy40NSwtNTIuMjEgMTQzLjkzLC00My4yMyIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tl\nPSJibGFjayIgcG9pbnRzPSIxNDYuNzgsLTQ1LjI2IDE0OS44MSwtMzUuMTEgMTQxLjExLC00MS4x\nNSAxNDYuNzgsLTQ1LjI2Ii8+CjwvZz4KPCEtLSBFZHVjJiM0NTsmZ3Q7V2FnZSAtLT4KPGcgaWQ9\nImVkZ2UyIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5FZHVjJiM0NTsmZ3Q7V2FnZTwvdGl0bGU+Cjxw\nYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS1kYXNoYXJyYXk9IjUsMiIgZD0i\nTTE2MS42NCwtNzEuN0MxNjEuNjQsLTYzLjk4IDE2MS42NCwtNTQuNzEgMTYxLjY0LC00Ni4xMSIv\nPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIxNjUuMTQsLTQ2\nLjEgMTYxLjY0LC0zNi4xIDE1OC4xNCwtNDYuMSAxNjUuMTQsLTQ2LjEiLz4KPC9nPgo8IS0tIFNB\nVCAtLT4KPGcgaWQ9Im5vZGU0IiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5TQVQ8L3RpdGxlPgo8ZWxs\naXBzZSBmaWxsPSJsaWdodGdyZXkiIHN0cm9rZT0iYmxhY2siIGN4PSIxNzYuNjQiIGN5PSItMTYy\nIiByeD0iMjciIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIxNzYuNjQi\nIHk9Ii0xNTguMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXpl\nPSIxNC4wMCI+U0FUPC90ZXh0Pgo8L2c+CjwhLS0gU0FUJiM0NTsmZ3Q7RWR1YyAtLT4KPGcgaWQ9\nImVkZ2UzIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5TQVQmIzQ1OyZndDtFZHVjPC90aXRsZT4KPHBh\ndGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTE3My4wMSwtMTQ0LjA1QzE3MS4zNCwt\nMTM2LjI2IDE2OS4zMiwtMTI2LjgyIDE2Ny40NSwtMTE4LjA4Ii8+Cjxwb2x5Z29uIGZpbGw9ImJs\nYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjE3MC44NiwtMTE3LjMyIDE2NS4zNSwtMTA4LjI4\nIDE2NC4wMiwtMTE4Ljc5IDE3MC44NiwtMTE3LjMyIi8+CjwvZz4KPCEtLSBJbnRlbGxpZ2VuY2Ug\nLS0+CjxnIGlkPSJub2RlNSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+SW50ZWxsaWdlbmNlPC90aXRs\nZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjIwMy42NCIgY3k9Ii0y\nMzQiIHJ4PSI1MS45OSIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjIw\nMy42NCIgeT0iLTIzMC4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250\nLXNpemU9IjE0LjAwIj5JbnRlbGxpZ2VuY2U8L3RleHQ+CjwvZz4KPCEtLSBJbnRlbGxpZ2VuY2Um\nIzQ1OyZndDtXYWdlIC0tPgo8ZyBpZD0iZWRnZTYiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkludGVs\nbGlnZW5jZSYjNDU7Jmd0O1dhZ2U8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJs\nYWNrIiBkPSJNMjA3LjMsLTIxNS45MUMyMDkuMzIsLTIwNS41NyAyMTEuNjIsLTE5Mi4wOSAyMTIu\nNjQsLTE4MCAyMTYuNzEsLTEzMS44MiAyMTguNDksLTExNi41MiAxOTkuNjQsLTcyIDE5NS4xNiwt\nNjEuNDEgMTg4LjI2LC01MC44OCAxODEuNTYsLTQyLjA0Ii8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNr\nIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjE4NC4yNCwtMzkuNzggMTc1LjI4LC0zNC4xMiAxNzgu\nNzUsLTQ0LjEzIDE4NC4yNCwtMzkuNzgiLz4KPC9nPgo8IS0tIEludGVsbGlnZW5jZSYjNDU7Jmd0\nO1NBVCAtLT4KPGcgaWQ9ImVkZ2U1IiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5JbnRlbGxpZ2VuY2Um\nIzQ1OyZndDtTQVQ8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJN\nMTk3LjExLC0yMTYuMDVDMTk0LjAyLC0yMDguMDYgMTkwLjI3LC0xOTguMzMgMTg2LjgzLC0xODku\nNCIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSIxODkuOTgs\nLTE4Ny44NiAxODMuMTIsLTE3OS43OSAxODMuNDUsLTE5MC4zOCAxODkuOTgsLTE4Ny44NiIvPgo8\nL2c+CjwvZz4KPC9zdmc+Cg==\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "\n",
- "g.node(\"Family Income\", style=\"filled\")\n",
- "g.edge(\"Family Income\", \"Educ\")\n",
- "g.edge(\"Educ\", \"Wage\", style=\"dashed\")\n",
- "\n",
- "g.node(\"SAT\", style=\"filled\")\n",
- "g.edge(\"SAT\", \"Educ\")\n",
- "\n",
- "g.node(\"Family Income\", style=\"filled\")\n",
- "g.edge(\"Family Income\", \"Wage\")\n",
- "\n",
- "g.edge(\"Intelligence\", \"SAT\")\n",
- "g.edge(\"Intelligence\", \"Wage\")\n",
- "g"
- ],
- "id": "e27ceac1"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Choosing Covariates: Two Examples"
- ],
- "id": "d89a3ecd-1a3d-4328-8b0f-0ee302d57c1d"
- },
- {
- "cell_type": "code",
- "execution_count": 33,
- "metadata": {
- "output-location": "column"
- },
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxMzRwdCIgaGVpZ2h0PSIxMTZwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxMzQuMDAg\nMTE2LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDExMikiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nMTIgMTMwLC0xMTIgMTMwLDQgLTQsNCIvPgo8IS0tIFQgLS0+CjxnIGlkPSJub2RlMSIgY2xhc3M9\nIm5vZGUiPgo8dGl0bGU+VDwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxh\nY2siIGN4PSIyNyIgY3k9Ii05MCIgcng9IjI3IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9\nIm1pZGRsZSIgeD0iMjciIHk9Ii04Ni4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFuLHNl\ncmlmIiBmb250LXNpemU9IjE0LjAwIj5UPC90ZXh0Pgo8L2c+CjwhLS0gWSAtLT4KPGcgaWQ9Im5v\nZGUyIiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5ZPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIg\nc3Ryb2tlPSJibGFjayIgY3g9IjYzIiBjeT0iLTE4IiByeD0iMjciIHJ5PSIxOCIvPgo8dGV4dCB0\nZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSI2MyIgeT0iLTE0LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBO\nZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlk8L3RleHQ+CjwvZz4KPCEtLSBUJiM0\nNTsmZ3Q7WSAtLT4KPGcgaWQ9ImVkZ2UxIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5UJiM0NTsmZ3Q7\nWTwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS1kYXNoYXJy\nYXk9IjUsMiIgZD0iTTM1LjM1LC03Mi43NkMzOS43MSwtNjQuMjggNDUuMTUsLTUzLjcxIDUwLjA0\nLC00NC4yIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjUz\nLjIzLC00NS42NCA1NC43LC0zNS4xNSA0Ny4wMSwtNDIuNDQgNTMuMjMsLTQ1LjY0Ii8+CjwvZz4K\nPCEtLSBYIC0tPgo8ZyBpZD0ibm9kZTMiIGNsYXNzPSJub2RlIj4KPHRpdGxlPlg8L3RpdGxlPgo8\nZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iOTkiIGN5PSItOTAiIHJ4PSIy\nNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9Ijk5IiB5PSItODYuMyIg\nZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+WDwv\ndGV4dD4KPC9nPgo8IS0tIFgmIzQ1OyZndDtZIC0tPgo8ZyBpZD0iZWRnZTIiIGNsYXNzPSJlZGdl\nIj4KPHRpdGxlPlgmIzQ1OyZndDtZPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJi\nbGFjayIgZD0iTTkwLjY1LC03Mi43NkM4Ni4yOSwtNjQuMjggODAuODUsLTUzLjcxIDc1Ljk2LC00\nNC4yIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9Ijc4Ljk5\nLC00Mi40NCA3MS4zLC0zNS4xNSA3Mi43NywtNDUuNjQgNzguOTksLTQyLjQ0Ii8+CjwvZz4KPC9n\nPgo8L3N2Zz4K\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "g.edge(\"T\", \"Y\", style=\"dashed\")\n",
- "g.edge(\"X\", \"Y\")\n",
- "g"
- ],
- "id": "8138f6a2"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- Do we need to condition on $X$?\n",
- "\n",
- "## Choosing Covariates: Two Examples"
- ],
- "id": "7cbccc22-a866-405b-9e64-7285e9a06f16"
- },
- {
- "cell_type": "code",
- "execution_count": 34,
- "metadata": {
- "output-location": "column"
- },
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxMzRwdCIgaGVpZ2h0PSIxMTZwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxMzQuMDAg\nMTE2LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDExMikiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nMTIgMTMwLC0xMTIgMTMwLDQgLTQsNCIvPgo8IS0tIFQgLS0+CjxnIGlkPSJub2RlMSIgY2xhc3M9\nIm5vZGUiPgo8dGl0bGU+VDwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxh\nY2siIGN4PSIyNyIgY3k9Ii05MCIgcng9IjI3IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9\nIm1pZGRsZSIgeD0iMjciIHk9Ii04Ni4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFuLHNl\ncmlmIiBmb250LXNpemU9IjE0LjAwIj5UPC90ZXh0Pgo8L2c+CjwhLS0gWSAtLT4KPGcgaWQ9Im5v\nZGUyIiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5ZPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIg\nc3Ryb2tlPSJibGFjayIgY3g9IjYzIiBjeT0iLTE4IiByeD0iMjciIHJ5PSIxOCIvPgo8dGV4dCB0\nZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSI2MyIgeT0iLTE0LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBO\nZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlk8L3RleHQ+CjwvZz4KPCEtLSBUJiM0\nNTsmZ3Q7WSAtLT4KPGcgaWQ9ImVkZ2UxIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5UJiM0NTsmZ3Q7\nWTwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS1kYXNoYXJy\nYXk9IjUsMiIgZD0iTTM1LjM1LC03Mi43NkMzOS43MSwtNjQuMjggNDUuMTUsLTUzLjcxIDUwLjA0\nLC00NC4yIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjUz\nLjIzLC00NS42NCA1NC43LC0zNS4xNSA0Ny4wMSwtNDIuNDQgNTMuMjMsLTQ1LjY0Ii8+CjwvZz4K\nPCEtLSBYIC0tPgo8ZyBpZD0ibm9kZTMiIGNsYXNzPSJub2RlIj4KPHRpdGxlPlg8L3RpdGxlPgo8\nZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iOTkiIGN5PSItOTAiIHJ4PSIy\nNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9Ijk5IiB5PSItODYuMyIg\nZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+WDwv\ndGV4dD4KPC9nPgo8IS0tIFgmIzQ1OyZndDtZIC0tPgo8ZyBpZD0iZWRnZTIiIGNsYXNzPSJlZGdl\nIj4KPHRpdGxlPlgmIzQ1OyZndDtZPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJi\nbGFjayIgZD0iTTkwLjY1LC03Mi43NkM4Ni4yOSwtNjQuMjggODAuODUsLTUzLjcxIDc1Ljk2LC00\nNC4yIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9Ijc4Ljk5\nLC00Mi40NCA3MS4zLC0zNS4xNSA3Mi43NywtNDUuNjQgNzguOTksLTQyLjQ0Ii8+CjwvZz4KPC9n\nPgo8L3N2Zz4K\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "g.edge(\"T\", \"Y\", style=\"dashed\")\n",
- "g.edge(\"X\", \"Y\")\n",
- "g"
- ],
- "id": "95b34e44"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- Do we need to condition on $X$?\n",
- " - No, not necessarily. There is no unblocked dependence path\n",
- " between $T$ and $Y$ that goes through $X$.\n",
- " - However, conditioning on $X$ will reduce the variance of our\n",
- " estimate!\n",
- " - If we didn’t condition on $X$, it would become part of our\n",
- " estimation error. But since $X \\perp T$, it won’t bias our\n",
- " estimate.\n",
- "\n",
- "## Choosing Covariates: Two Examples"
- ],
- "id": "484cf66c-df5a-4044-a0ec-96e6154b5c39"
- },
- {
- "cell_type": "code",
- "execution_count": 35,
- "metadata": {
- "output-location": "column"
- },
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxMzRwdCIgaGVpZ2h0PSIxODhwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxMzQuMDAg\nMTg4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDE4NCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nODQgMTMwLC0xODQgMTMwLDQgLTQsNCIvPgo8IS0tIFIgLS0+CjxnIGlkPSJub2RlMSIgY2xhc3M9\nIm5vZGUiPgo8dGl0bGU+UjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxh\nY2siIGN4PSIyNyIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9y\nPSJtaWRkbGUiIHg9IjI3IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4s\nc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPlI8L3RleHQ+CjwvZz4KPCEtLSBUIC0tPgo8ZyBpZD0i\nbm9kZTIiIGNsYXNzPSJub2RlIj4KPHRpdGxlPlQ8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25l\nIiBzdHJva2U9ImJsYWNrIiBjeD0iNDQiIGN5PSItOTAiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0\nIHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjQ0IiB5PSItODYuMyIgZm9udC1mYW1pbHk9IlRpbWVz\nIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+VDwvdGV4dD4KPC9nPgo8IS0tIFIm\nIzQ1OyZndDtUIC0tPgo8ZyBpZD0iZWRnZTEiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPlImIzQ1OyZn\ndDtUPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTMxLjEyLC0x\nNDQuMDVDMzMuMDEsLTEzNi4yNiAzNS4zLC0xMjYuODIgMzcuNDIsLTExOC4wOCIvPgo8cG9seWdv\nbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI0MC44NSwtMTE4LjgyIDM5Ljgs\nLTEwOC4yOCAzNC4wNCwtMTE3LjE3IDQwLjg1LC0xMTguODIiLz4KPC9nPgo8IS0tIFkgLS0+Cjxn\nIGlkPSJub2RlNCIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+WTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9\nIm5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSI3MSIgY3k9Ii0xOCIgcng9IjI3IiByeT0iMTgiLz4K\nPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iNzEiIHk9Ii0xNC4zIiBmb250LWZhbWlseT0i\nVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5ZPC90ZXh0Pgo8L2c+Cjwh\nLS0gVCYjNDU7Jmd0O1kgLS0+CjxnIGlkPSJlZGdlNCIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+VCYj\nNDU7Jmd0O1k8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Ut\nZGFzaGFycmF5PSI1LDIiIGQ9Ik01MC40LC03Mi40MUM1My41MSwtNjQuMzQgNTcuMzMsLTU0LjQz\nIDYwLjgzLC00NS4zNSIvPgo8cG9seWdvbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9p\nbnRzPSI2NC4xMywtNDYuNTUgNjQuNDYsLTM1Ljk2IDU3LjYsLTQ0LjAzIDY0LjEzLC00Ni41NSIv\nPgo8L2c+CjwhLS0gQyAtLT4KPGcgaWQ9Im5vZGUzIiBjbGFzcz0ibm9kZSI+Cjx0aXRsZT5DPC90\naXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9Ijk5IiBjeT0iLTE2\nMiIgcng9IjI3IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iOTkiIHk9\nIi0xNTguMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIx\nNC4wMCI+QzwvdGV4dD4KPC9nPgo8IS0tIEMmIzQ1OyZndDtUIC0tPgo8ZyBpZD0iZWRnZTIiIGNs\nYXNzPSJlZGdlIj4KPHRpdGxlPkMmIzQ1OyZndDtUPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIg\nc3Ryb2tlPSJibGFjayIgZD0iTTg3LjA3LC0xNDUuODFDNzkuNzksLTEzNi41NSA3MC4zNCwtMTI0\nLjUyIDYyLjE1LC0xMTQuMDkiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2si\nIHBvaW50cz0iNjQuODQsLTExMS44NiA1NS45MSwtMTA2LjE2IDU5LjM0LC0xMTYuMTggNjQuODQs\nLTExMS44NiIvPgo8L2c+CjwhLS0gQyYjNDU7Jmd0O1kgLS0+CjxnIGlkPSJlZGdlMyIgY2xhc3M9\nImVkZ2UiPgo8dGl0bGU+QyYjNDU7Jmd0O1k8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJv\na2U9ImJsYWNrIiBkPSJNOTUuNjIsLTE0My44N0M5MC44MywtMTE5LjU2IDgyLjAxLC03NC44MiA3\nNi4zMywtNDYuMDEiLz4KPHBvbHlnb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50\ncz0iNzkuNzYsLTQ1LjMyIDc0LjM5LC0zNi4xOSA3Mi44OSwtNDYuNjggNzkuNzYsLTQ1LjMyIi8+\nCjwvZz4KPC9nPgo8L3N2Zz4K\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "g.edge(\"R\", \"T\")\n",
- "g.edge(\"C\", \"T\")\n",
- "g.edge(\"C\", \"Y\")\n",
- "g.edge(\"T\", \"Y\", style=\"dashed\")\n",
- "g"
- ],
- "id": "67ddf57f"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- Suppose we don’t have any data on $C$. Can we identify the treatment\n",
- " effect?\n",
- " - Yes! If we look at the effect of $R$ on $Y$, we can see that it\n",
- " is unblocked.\n",
- " - Furthermore, since $R$ only affects $Y$ through $T$, the effect\n",
- " of $R$ on $Y$ is the same as the effect of $T$ on $Y$.\n",
- " - This is called an **instrumental variable**.\n",
- "\n",
- "# Factorizing the Joint Distribution\n",
- "\n",
- "## Factorizing the Joint Distribution\n",
- "\n",
- "- We have seen how these graphical models can be used to determine\n",
- " whether or not we can identify a treatment effect.\n",
- "\n",
- "- However, we can also use them as a computational tool, to help us\n",
- " find the simplest representation of the joint distribution of the\n",
- " data.\n",
- "\n",
- "- This is useful because it allows us to find the simplest model that\n",
- " is consistent with our assumptions about conditional independence.\n",
- "\n",
- "## Factorizing the Joint Distribution\n",
- "\n",
- "- To understand why this is useful, we’ll follow this example (from\n",
- " [Mark\n",
- " Paskin](http://ai.stanford.edu/~paskin/gm-short-course/lec2.pdf)).\n",
- "\n",
- "- Suppose we have a DGP with five variables:\n",
- "\n",
- " 1. $E\\in\\{true, false\\}$ - Has an earthquake happened? *Earthquakes\n",
- " are unlikely*\n",
- " 2. $B\\in\\{true, false\\}$ - Has a burglary happened? *Burglaries are\n",
- " unlikely, but more likely than earthquakes*\n",
- " 3. $A\\in\\{true, false\\}$ - Is the alarm going off? *The alarm is\n",
- " triggered by both earthquakes and burglaries*\n",
- " 4. $J\\in\\{true, false\\}$ - Is John calling? *John calls when he\n",
- " hears the alarm, but he often misses it*\n",
- " 5. $M\\in\\{true, false\\}$ - Is Mary calling? *Mary calls when she\n",
- " hears the alarm, but she also calls to chat*\n",
- "\n",
- "## Factorizing the Joint Distribution\n",
- "\n",
- "- The goal is to compute $P(B|J=true)$ from the joint distribution\n",
- " $P(E,B,A,J,M)$. We’ll start by drawing the graphical model, to\n",
- " understand the conditional independence relationships."
- ],
- "id": "21ba1659-f150-4d64-9863-1a4edfdbb25d"
- },
- {
- "cell_type": "code",
- "execution_count": 36,
- "metadata": {},
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxMzRwdCIgaGVpZ2h0PSIxODhwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxMzQuMDAg\nMTg4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDE4NCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nODQgMTMwLC0xODQgMTMwLDQgLTQsNCIvPgo8IS0tIEUgLS0+CjxnIGlkPSJub2RlMSIgY2xhc3M9\nIm5vZGUiPgo8dGl0bGU+RTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxh\nY2siIGN4PSIyNyIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9y\nPSJtaWRkbGUiIHg9IjI3IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4s\nc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkU8L3RleHQ+CjwvZz4KPCEtLSBBIC0tPgo8ZyBpZD0i\nbm9kZTIiIGNsYXNzPSJub2RlIj4KPHRpdGxlPkE8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25l\nIiBzdHJva2U9ImJsYWNrIiBjeD0iNjMiIGN5PSItOTAiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0\nIHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjYzIiB5PSItODYuMyIgZm9udC1mYW1pbHk9IlRpbWVz\nIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+QTwvdGV4dD4KPC9nPgo8IS0tIEUm\nIzQ1OyZndDtBIC0tPgo8ZyBpZD0iZWRnZTEiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkUmIzQ1OyZn\ndDtBPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTM1LjM1LC0x\nNDQuNzZDMzkuNzEsLTEzNi4yOCA0NS4xNSwtMTI1LjcxIDUwLjA0LC0xMTYuMiIvPgo8cG9seWdv\nbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI1My4yMywtMTE3LjY0IDU0Ljcs\nLTEwNy4xNSA0Ny4wMSwtMTE0LjQ0IDUzLjIzLC0xMTcuNjQiLz4KPC9nPgo8IS0tIEogLS0+Cjxn\nIGlkPSJub2RlNCIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+SjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9\nIm5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSIyNyIgY3k9Ii0xOCIgcng9IjI3IiByeT0iMTgiLz4K\nPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjciIHk9Ii0xNC4zIiBmb250LWZhbWlseT0i\nVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5KPC90ZXh0Pgo8L2c+Cjwh\nLS0gQSYjNDU7Jmd0O0ogLS0+CjxnIGlkPSJlZGdlMyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+QSYj\nNDU7Jmd0O0o8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNTQu\nNjUsLTcyLjc2QzUwLjI5LC02NC4yOCA0NC44NSwtNTMuNzEgMzkuOTYsLTQ0LjIiLz4KPHBvbHln\nb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNDIuOTksLTQyLjQ0IDM1LjMs\nLTM1LjE1IDM2Ljc3LC00NS42NCA0Mi45OSwtNDIuNDQiLz4KPC9nPgo8IS0tIE0gLS0+CjxnIGlk\nPSJub2RlNSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+TTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5v\nbmUiIHN0cm9rZT0iYmxhY2siIGN4PSI5OSIgY3k9Ii0xOCIgcng9IjI3IiByeT0iMTgiLz4KPHRl\neHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iOTkiIHk9Ii0xNC4zIiBmb250LWZhbWlseT0iVGlt\nZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5NPC90ZXh0Pgo8L2c+CjwhLS0g\nQSYjNDU7Jmd0O00gLS0+CjxnIGlkPSJlZGdlNCIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+QSYjNDU7\nJmd0O008L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNzEuMzUs\nLTcyLjc2Qzc1LjcxLC02NC4yOCA4MS4xNSwtNTMuNzEgODYuMDQsLTQ0LjIiLz4KPHBvbHlnb24g\nZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iODkuMjMsLTQ1LjY0IDkwLjcsLTM1\nLjE1IDgzLjAxLC00Mi40NCA4OS4yMywtNDUuNjQiLz4KPC9nPgo8IS0tIEIgLS0+CjxnIGlkPSJu\nb2RlMyIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+QjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUi\nIHN0cm9rZT0iYmxhY2siIGN4PSI5OSIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0\nIHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9Ijk5IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1l\ncyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkI8L3RleHQ+CjwvZz4KPCEtLSBC\nJiM0NTsmZ3Q7QSAtLT4KPGcgaWQ9ImVkZ2UyIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5CJiM0NTsm\nZ3Q7QTwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik05MC42NSwt\nMTQ0Ljc2Qzg2LjI5LC0xMzYuMjggODAuODUsLTEyNS43MSA3NS45NiwtMTE2LjIiLz4KPHBvbHln\nb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNzguOTksLTExNC40NCA3MS4z\nLC0xMDcuMTUgNzIuNzcsLTExNy42NCA3OC45OSwtMTE0LjQ0Ii8+CjwvZz4KPC9nPgo8L3N2Zz4K\n"
- }
- }
- ],
- "source": [
- "g = gr.Digraph()\n",
- "g.edge(\"E\", \"A\")\n",
- "g.edge(\"B\", \"A\")\n",
- "g.edge(\"A\", \"J\")\n",
- "g.edge(\"A\", \"M\")\n",
- "\n",
- "g"
- ],
- "id": "daf4e860"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Factorizing the Joint Distribution"
- ],
- "id": "231e83d4-7bf6-4c3e-8cd0-cdac54856cb7"
- },
- {
- "cell_type": "code",
- "execution_count": 37,
- "metadata": {},
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxMzRwdCIgaGVpZ2h0PSIxODhwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxMzQuMDAg\nMTg4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDE4NCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nODQgMTMwLC0xODQgMTMwLDQgLTQsNCIvPgo8IS0tIEUgLS0+CjxnIGlkPSJub2RlMSIgY2xhc3M9\nIm5vZGUiPgo8dGl0bGU+RTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxh\nY2siIGN4PSIyNyIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9y\nPSJtaWRkbGUiIHg9IjI3IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4s\nc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkU8L3RleHQ+CjwvZz4KPCEtLSBBIC0tPgo8ZyBpZD0i\nbm9kZTIiIGNsYXNzPSJub2RlIj4KPHRpdGxlPkE8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25l\nIiBzdHJva2U9ImJsYWNrIiBjeD0iNjMiIGN5PSItOTAiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0\nIHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjYzIiB5PSItODYuMyIgZm9udC1mYW1pbHk9IlRpbWVz\nIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+QTwvdGV4dD4KPC9nPgo8IS0tIEUm\nIzQ1OyZndDtBIC0tPgo8ZyBpZD0iZWRnZTEiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkUmIzQ1OyZn\ndDtBPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTM1LjM1LC0x\nNDQuNzZDMzkuNzEsLTEzNi4yOCA0NS4xNSwtMTI1LjcxIDUwLjA0LC0xMTYuMiIvPgo8cG9seWdv\nbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI1My4yMywtMTE3LjY0IDU0Ljcs\nLTEwNy4xNSA0Ny4wMSwtMTE0LjQ0IDUzLjIzLC0xMTcuNjQiLz4KPC9nPgo8IS0tIEogLS0+Cjxn\nIGlkPSJub2RlNCIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+SjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9\nIm5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSIyNyIgY3k9Ii0xOCIgcng9IjI3IiByeT0iMTgiLz4K\nPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjciIHk9Ii0xNC4zIiBmb250LWZhbWlseT0i\nVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5KPC90ZXh0Pgo8L2c+Cjwh\nLS0gQSYjNDU7Jmd0O0ogLS0+CjxnIGlkPSJlZGdlMyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+QSYj\nNDU7Jmd0O0o8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNTQu\nNjUsLTcyLjc2QzUwLjI5LC02NC4yOCA0NC44NSwtNTMuNzEgMzkuOTYsLTQ0LjIiLz4KPHBvbHln\nb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNDIuOTksLTQyLjQ0IDM1LjMs\nLTM1LjE1IDM2Ljc3LC00NS42NCA0Mi45OSwtNDIuNDQiLz4KPC9nPgo8IS0tIE0gLS0+CjxnIGlk\nPSJub2RlNSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+TTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5v\nbmUiIHN0cm9rZT0iYmxhY2siIGN4PSI5OSIgY3k9Ii0xOCIgcng9IjI3IiByeT0iMTgiLz4KPHRl\neHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iOTkiIHk9Ii0xNC4zIiBmb250LWZhbWlseT0iVGlt\nZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5NPC90ZXh0Pgo8L2c+CjwhLS0g\nQSYjNDU7Jmd0O00gLS0+CjxnIGlkPSJlZGdlNCIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+QSYjNDU7\nJmd0O008L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNzEuMzUs\nLTcyLjc2Qzc1LjcxLC02NC4yOCA4MS4xNSwtNTMuNzEgODYuMDQsLTQ0LjIiLz4KPHBvbHlnb24g\nZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iODkuMjMsLTQ1LjY0IDkwLjcsLTM1\nLjE1IDgzLjAxLC00Mi40NCA4OS4yMywtNDUuNjQiLz4KPC9nPgo8IS0tIEIgLS0+CjxnIGlkPSJu\nb2RlMyIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+QjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUi\nIHN0cm9rZT0iYmxhY2siIGN4PSI5OSIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0\nIHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9Ijk5IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1l\ncyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkI8L3RleHQ+CjwvZz4KPCEtLSBC\nJiM0NTsmZ3Q7QSAtLT4KPGcgaWQ9ImVkZ2UyIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5CJiM0NTsm\nZ3Q7QTwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik05MC42NSwt\nMTQ0Ljc2Qzg2LjI5LC0xMzYuMjggODAuODUsLTEyNS43MSA3NS45NiwtMTE2LjIiLz4KPHBvbHln\nb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNzguOTksLTExNC40NCA3MS4z\nLC0xMDcuMTUgNzIuNzcsLTExNy42NCA3OC45OSwtMTE0LjQ0Ii8+CjwvZz4KPC9nPgo8L3N2Zz4K\n"
- }
- }
- ],
- "source": [
- "g"
- ],
- "id": "d66dc034"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- In order to represent the full joint distribution, we could use the\n",
- " chain rule of probabilities:\n",
- "\n",
- "$$\n",
- "P(E,B,A,J,M) = P(E)P(B|E)P(A|E,B)P(J|E,B,A)P(M|E,B,A,J)\n",
- "$$\n",
- "\n",
- "- Q: How many probabilities would we need to compute to represent the\n",
- " joint distribution this way?\n",
- "\n",
- "## Factorizing the Joint Distribution"
- ],
- "id": "b6a3d727-cefc-42d2-8c77-66a63fbe796e"
- },
- {
- "cell_type": "code",
- "execution_count": 38,
- "metadata": {},
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxMzRwdCIgaGVpZ2h0PSIxODhwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxMzQuMDAg\nMTg4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDE4NCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nODQgMTMwLC0xODQgMTMwLDQgLTQsNCIvPgo8IS0tIEUgLS0+CjxnIGlkPSJub2RlMSIgY2xhc3M9\nIm5vZGUiPgo8dGl0bGU+RTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxh\nY2siIGN4PSIyNyIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9y\nPSJtaWRkbGUiIHg9IjI3IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4s\nc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkU8L3RleHQ+CjwvZz4KPCEtLSBBIC0tPgo8ZyBpZD0i\nbm9kZTIiIGNsYXNzPSJub2RlIj4KPHRpdGxlPkE8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25l\nIiBzdHJva2U9ImJsYWNrIiBjeD0iNjMiIGN5PSItOTAiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0\nIHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjYzIiB5PSItODYuMyIgZm9udC1mYW1pbHk9IlRpbWVz\nIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+QTwvdGV4dD4KPC9nPgo8IS0tIEUm\nIzQ1OyZndDtBIC0tPgo8ZyBpZD0iZWRnZTEiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkUmIzQ1OyZn\ndDtBPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTM1LjM1LC0x\nNDQuNzZDMzkuNzEsLTEzNi4yOCA0NS4xNSwtMTI1LjcxIDUwLjA0LC0xMTYuMiIvPgo8cG9seWdv\nbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI1My4yMywtMTE3LjY0IDU0Ljcs\nLTEwNy4xNSA0Ny4wMSwtMTE0LjQ0IDUzLjIzLC0xMTcuNjQiLz4KPC9nPgo8IS0tIEogLS0+Cjxn\nIGlkPSJub2RlNCIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+SjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9\nIm5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSIyNyIgY3k9Ii0xOCIgcng9IjI3IiByeT0iMTgiLz4K\nPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjciIHk9Ii0xNC4zIiBmb250LWZhbWlseT0i\nVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5KPC90ZXh0Pgo8L2c+Cjwh\nLS0gQSYjNDU7Jmd0O0ogLS0+CjxnIGlkPSJlZGdlMyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+QSYj\nNDU7Jmd0O0o8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNTQu\nNjUsLTcyLjc2QzUwLjI5LC02NC4yOCA0NC44NSwtNTMuNzEgMzkuOTYsLTQ0LjIiLz4KPHBvbHln\nb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNDIuOTksLTQyLjQ0IDM1LjMs\nLTM1LjE1IDM2Ljc3LC00NS42NCA0Mi45OSwtNDIuNDQiLz4KPC9nPgo8IS0tIE0gLS0+CjxnIGlk\nPSJub2RlNSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+TTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5v\nbmUiIHN0cm9rZT0iYmxhY2siIGN4PSI5OSIgY3k9Ii0xOCIgcng9IjI3IiByeT0iMTgiLz4KPHRl\neHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iOTkiIHk9Ii0xNC4zIiBmb250LWZhbWlseT0iVGlt\nZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5NPC90ZXh0Pgo8L2c+CjwhLS0g\nQSYjNDU7Jmd0O00gLS0+CjxnIGlkPSJlZGdlNCIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+QSYjNDU7\nJmd0O008L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNzEuMzUs\nLTcyLjc2Qzc1LjcxLC02NC4yOCA4MS4xNSwtNTMuNzEgODYuMDQsLTQ0LjIiLz4KPHBvbHlnb24g\nZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iODkuMjMsLTQ1LjY0IDkwLjcsLTM1\nLjE1IDgzLjAxLC00Mi40NCA4OS4yMywtNDUuNjQiLz4KPC9nPgo8IS0tIEIgLS0+CjxnIGlkPSJu\nb2RlMyIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+QjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUi\nIHN0cm9rZT0iYmxhY2siIGN4PSI5OSIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0\nIHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9Ijk5IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1l\ncyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkI8L3RleHQ+CjwvZz4KPCEtLSBC\nJiM0NTsmZ3Q7QSAtLT4KPGcgaWQ9ImVkZ2UyIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5CJiM0NTsm\nZ3Q7QTwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik05MC42NSwt\nMTQ0Ljc2Qzg2LjI5LC0xMzYuMjggODAuODUsLTEyNS43MSA3NS45NiwtMTE2LjIiLz4KPHBvbHln\nb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNzguOTksLTExNC40NCA3MS4z\nLC0xMDcuMTUgNzIuNzcsLTExNy42NCA3OC45OSwtMTE0LjQ0Ii8+CjwvZz4KPC9nPgo8L3N2Zz4K\n"
- }
- }
- ],
- "source": [
- "g"
- ],
- "id": "c33226ee"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- In order to represent the full joint distribution, we could use the\n",
- " chain rule of probabilities:\n",
- "\n",
- "$$\n",
- "\\underbrace{P(E,B,A,J,M)}_{31} = \\underbrace{P(E)}_{1} \\underbrace{P(B|E)}_{2} \\underbrace{P(A|E,B)}_{4} \\underbrace{P(J|E,B,A)}_{8} \\underbrace{P(M|E,B,A,J)}_{16}\n",
- "$$\n",
- "\n",
- "- Q: How many probabilities would we need to store to represent the\n",
- " joint distribution this way?\n",
- " - A: There are $2^5$ possible outcomes. We need 31 probabilities.\n",
- " (why not 32?)\n",
- "\n",
- "## Factorizing the Joint Distribution"
- ],
- "id": "9d3cdee7-3bea-439d-b745-1d4923ea95e8"
- },
- {
- "cell_type": "code",
- "execution_count": 39,
- "metadata": {},
- "outputs": [
- {
- "output_type": "display_data",
- "metadata": {},
- "data": {
- "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxMzRwdCIgaGVpZ2h0PSIxODhwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxMzQuMDAg\nMTg4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDE4NCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nODQgMTMwLC0xODQgMTMwLDQgLTQsNCIvPgo8IS0tIEUgLS0+CjxnIGlkPSJub2RlMSIgY2xhc3M9\nIm5vZGUiPgo8dGl0bGU+RTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxh\nY2siIGN4PSIyNyIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9y\nPSJtaWRkbGUiIHg9IjI3IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1lcyBOZXcgUm9tYW4s\nc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkU8L3RleHQ+CjwvZz4KPCEtLSBBIC0tPgo8ZyBpZD0i\nbm9kZTIiIGNsYXNzPSJub2RlIj4KPHRpdGxlPkE8L3RpdGxlPgo8ZWxsaXBzZSBmaWxsPSJub25l\nIiBzdHJva2U9ImJsYWNrIiBjeD0iNjMiIGN5PSItOTAiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0\nIHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjYzIiB5PSItODYuMyIgZm9udC1mYW1pbHk9IlRpbWVz\nIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+QTwvdGV4dD4KPC9nPgo8IS0tIEUm\nIzQ1OyZndDtBIC0tPgo8ZyBpZD0iZWRnZTEiIGNsYXNzPSJlZGdlIj4KPHRpdGxlPkUmIzQ1OyZn\ndDtBPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTM1LjM1LC0x\nNDQuNzZDMzkuNzEsLTEzNi4yOCA0NS4xNSwtMTI1LjcxIDUwLjA0LC0xMTYuMiIvPgo8cG9seWdv\nbiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI1My4yMywtMTE3LjY0IDU0Ljcs\nLTEwNy4xNSA0Ny4wMSwtMTE0LjQ0IDUzLjIzLC0xMTcuNjQiLz4KPC9nPgo8IS0tIEogLS0+Cjxn\nIGlkPSJub2RlNCIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+SjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9\nIm5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSIyNyIgY3k9Ii0xOCIgcng9IjI3IiByeT0iMTgiLz4K\nPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjciIHk9Ii0xNC4zIiBmb250LWZhbWlseT0i\nVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5KPC90ZXh0Pgo8L2c+Cjwh\nLS0gQSYjNDU7Jmd0O0ogLS0+CjxnIGlkPSJlZGdlMyIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+QSYj\nNDU7Jmd0O0o8L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNTQu\nNjUsLTcyLjc2QzUwLjI5LC02NC4yOCA0NC44NSwtNTMuNzEgMzkuOTYsLTQ0LjIiLz4KPHBvbHln\nb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNDIuOTksLTQyLjQ0IDM1LjMs\nLTM1LjE1IDM2Ljc3LC00NS42NCA0Mi45OSwtNDIuNDQiLz4KPC9nPgo8IS0tIE0gLS0+CjxnIGlk\nPSJub2RlNSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+TTwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5v\nbmUiIHN0cm9rZT0iYmxhY2siIGN4PSI5OSIgY3k9Ii0xOCIgcng9IjI3IiByeT0iMTgiLz4KPHRl\neHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iOTkiIHk9Ii0xNC4zIiBmb250LWZhbWlseT0iVGlt\nZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNpemU9IjE0LjAwIj5NPC90ZXh0Pgo8L2c+CjwhLS0g\nQSYjNDU7Jmd0O00gLS0+CjxnIGlkPSJlZGdlNCIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+QSYjNDU7\nJmd0O008L3RpdGxlPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBkPSJNNzEuMzUs\nLTcyLjc2Qzc1LjcxLC02NC4yOCA4MS4xNSwtNTMuNzEgODYuMDQsLTQ0LjIiLz4KPHBvbHlnb24g\nZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iODkuMjMsLTQ1LjY0IDkwLjcsLTM1\nLjE1IDgzLjAxLC00Mi40NCA4OS4yMywtNDUuNjQiLz4KPC9nPgo8IS0tIEIgLS0+CjxnIGlkPSJu\nb2RlMyIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+QjwvdGl0bGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUi\nIHN0cm9rZT0iYmxhY2siIGN4PSI5OSIgY3k9Ii0xNjIiIHJ4PSIyNyIgcnk9IjE4Ii8+Cjx0ZXh0\nIHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9Ijk5IiB5PSItMTU4LjMiIGZvbnQtZmFtaWx5PSJUaW1l\ncyBOZXcgUm9tYW4sc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiPkI8L3RleHQ+CjwvZz4KPCEtLSBC\nJiM0NTsmZ3Q7QSAtLT4KPGcgaWQ9ImVkZ2UyIiBjbGFzcz0iZWRnZSI+Cjx0aXRsZT5CJiM0NTsm\nZ3Q7QTwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGQ9Ik05MC42NSwt\nMTQ0Ljc2Qzg2LjI5LC0xMzYuMjggODAuODUsLTEyNS43MSA3NS45NiwtMTE2LjIiLz4KPHBvbHln\nb24gZmlsbD0iYmxhY2siIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iNzguOTksLTExNC40NCA3MS4z\nLC0xMDcuMTUgNzIuNzcsLTExNy42NCA3OC45OSwtMTE0LjQ0Ii8+CjwvZz4KPC9nPgo8L3N2Zz4K\n"
- }
- }
- ],
- "source": [
- "g"
- ],
- "id": "ee0c923b"
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "- However, we can use the conditional independence relationships to\n",
- " simplify this representation.\n",
- " - For example, we know that $P(B|E) = P(B)$, because $B$ and $E$\n",
- " are independent.\n",
- " - We also know that $P(A|E,B) = P(A|B)$, because $A$ is\n",
- " independent of $E$, given $B$.\n",
- "- This means that we can simplify the joint distribution to:\n",
- "\n",
- "$$\n",
- "\\underbrace{P(E,B,A,J,M)}_{10} = \\underbrace{P(E)}_1 \\underbrace{P(B)}_1 \\underbrace{P(A|E,B)}_4 \\underbrace{P(J|A)}_2 \\underbrace{P(M|A)}_2\n",
- "$$\n",
- "\n",
- "## Factorizing the Joint Distribution\n",
- "\n",
- "- Beyond causal inference, graphical models are a useful tool for\n",
- " computing all kinds of conditional probabilities.\n",
- "\n",
- "- This is useful in many inference problems, and in structural\n",
- " econometrics\n",
- "\n",
- " - The **likelihood function** is the conditional probability of\n",
- " the data, given the parameter values\n",
- " - In Bayesian inference the **posterior** is the conditional\n",
- " probability of the parameters, given the data (and our priors)\n",
- "\n",
- "## Variable Elimination\n",
- "\n",
- "- In order to simplify a conditional distribution, we can use\n",
- " **variable elimination**.\n",
- "\n",
- "- For example, let’s say we want to compute the probability of a\n",
- " burglary, given that John calls.\n",
- "\n",
- "$$\n",
- "\\begin{aligned}\n",
- "&p_{B \\mid J}(b, \\text { true }) \\propto \\sum_e \\sum_a \\sum_m p_{E B A J M}(e, b, a, \\text { true }, m) \\\\\n",
- "& =\\sum_e \\sum_a \\sum_m p_E(e) \\cdot p_B(b) \\cdot p_{A \\mid E B}(a, e, b) \\cdot p_{J \\mid A}(\\text { true }, a) \\cdot p_{M \\mid A}(m, a)\n",
- "\\end{aligned}\n",
- "$$\n",
- "\n",
- "- Then, we can reduce the computational complexity by eliminating\n",
- " variables one at a time, exploiting the distributive property of\n",
- " multiplication\n",
- " - $xy + xz = x(y + z)$.\n",
- "\n",
- "## Variable Elimination\n",
- "\n",
- "- Variable elimination works like this:\n",
- " - Repeat the following steps:\n",
- "\n",
- " 1. choose a variable to eliminate\n",
- " 2. push in its sum as far as possible\n",
- " 3. compute the sum, resulting in a new factor\n",
- "\n",
- "## Variable Elimination\n",
- "\n",
- "$$\n",
- "\\begin{aligned}\n",
- "&\\sum_e \\sum_a \\sum_m p_E(e) \\cdot p_B(b) \\cdot p_{A \\mid E B}(a, e, b) \\cdot p_{J \\mid A}(\\text { true }, a) \\cdot p_{M \\mid A}(m, a) \\\\\n",
- "& =\\sum_e \\sum_a p_E(e) \\cdot p_B(b) \\cdot p_{A \\mid E B}(a, e, b) \\cdot p_{J \\mid A}(\\text { true }, a) \\cdot \\sum_m p_{M \\mid A}(m, a) \\\\\n",
- "& =\\sum_e \\sum_a p_E(e) \\cdot p_B(b) \\cdot p_{A \\mid E B}(a, e, b) \\cdot p_{J \\mid A}(\\text { true }, a) \\cdot \\psi_A(a) \\\\\n",
- "& =\\sum_e p_E(e) \\cdot p_B(b) \\cdot \\sum_a p_{A \\mid E B}(a, e, b) \\cdot p_{J \\mid A}(\\text { true }, a) \\cdot \\psi_A(a) \\\\\n",
- "& =\\sum_e p_E(e) \\cdot p_B(b) \\cdot \\psi_{E B}(e, b) \\\\\n",
- "& =p_B(b) \\cdot \\sum_e p_E(e) \\cdot \\psi_{E B}(e, b) \\\\\n",
- "& =p_B(b) \\cdot \\psi_B(b)\n",
- "\\end{aligned}\n",
- "$$\n",
- "\n",
- "## Variable Elimination\n",
- "\n",
- "- That’s a lot of math! But let’s focus on the first step: $$\n",
- " \\begin{aligned}\n",
- " & p_{B \\mid J}(b, \\text { true }) \\propto \\\\\n",
- " &\\underbrace{\\underbrace{\\sum_e \\sum_a \\sum_m}_{2^3 = 8\\text{ iterations}} \\underbrace{p_E(e) \\cdot p_B(b) \\cdot p_{A \\mid E B}(a, e, b) \\cdot p_{J \\mid A}(\\text { true }, a) \\cdot p_{M \\mid A}(m, a)}_{4\\text{ multiplications}}}_{8*4=32\\text{ multiplications }+7\\text{ additions}=39\\text{ total operations}}\n",
- " \\end{aligned}\n",
- " $$\n",
- "\n",
- "## Variable Elimination\n",
- "\n",
- "- That’s a lot of math! But let’s focus on the first step: $$\n",
- " \\begin{aligned}\n",
- " & p_{B \\mid J}(b, \\text { true }) \\propto \\\\\n",
- " &\\underbrace{\\underbrace{\\sum_e \\sum_a \\sum_m}_{2^3 = 8\\text{ iterations}} \\underbrace{p_E(e) \\cdot p_B(b) \\cdot p_{A \\mid E B}(a, e, b) \\cdot p_{J \\mid A}(\\text { true }, a) \\cdot p_{M \\mid A}(m, a)}_{4\\text{ multiplications}}}_{8*4=32\\text{ multiplications }+7\\text{ additions}=39\\text{ total operations}} \\\\\\\\\n",
- " & =\\underbrace{\\underbrace{\\sum_e \\sum_a}_{2^2 = 4\\text{ iterations}} \\underbrace{p_E(e) \\cdot p_B(b) \\cdot p_{A \\mid E B}(a, e, b) \\cdot p_{J \\mid A}(\\text { true }, a) \\cdot }_{4\\text{ multiplications}} \\underbrace{\\sum_m p_{M \\mid A}(m, a)}_{1\\text{ addition}}}_{4*(4\\text{ multiplications} + 1\\text{ addition}) + 3\\text{ additions} = 23\\text{ total operations}} \\\\\n",
- " \\end{aligned}\n",
- " $$\n",
- "\n",
- "## Variable Elimination\n",
- "\n",
- "- Variable elimination is an algorithm that exploits our conditional\n",
- " independence assumptions to reduce the computational complexity of\n",
- " conditional probabilities.\n",
- "\n",
- "- In this case, we were able to reduce the number of operations from\n",
- " 39 to 23 operations in just one step, each further step will\n",
- " continue to reduce the complexity.\n",
- "\n",
- "- This is a very simple example, because we only have 5 variables. In\n",
- " practice, we might have hundreds or thousands of variables, and the\n",
- " computational complexity can become very large.\n",
- "\n",
- "- Systematic patterns of conditional independence can be exploited to\n",
- " reduce the complexity of inference problems in some large models.\n",
- "\n",
"## Credits\n",
"\n",
"This lecture draws heavily from [Causal Inference for the Brave and\n",
@@ -1836,7 +967,12 @@
"As well as [The Effect: Chapter 7 - Drawing Graphical\n",
"Diagrams](https://theeffectbook.net/) by Nick Huntington-Klein."
],
- "id": "e726a3dd-84c5-4b3d-8e4a-ed6f835bde7c"
+ "attachments": {
+ "causal_graphical_models_files/figure-ipynb/cell-24-output-1.svg": {
+ "image/svg+xml": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh\nRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3\nLnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBi\neSBncmFwaHZpeiB2ZXJzaW9uIDIuNTAuMCAoMCkKIC0tPgo8IS0tIFBhZ2VzOiAxIC0tPgo8c3Zn\nIHdpZHRoPSIxNDRwdCIgaGVpZ2h0PSIxODhwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCAxNDQuNDkg\nMTg4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo\ndHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBo\nIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDE4NCkiPgo8cG9s\neWdvbiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ0cmFuc3BhcmVudCIgcG9pbnRzPSItNCw0IC00LC0x\nODQgMTQwLjQ5LC0xODQgMTQwLjQ5LDQgLTQsNCIvPgo8IS0tIFByaXZhdGVTY2hvb2wodCkgLS0+\nCjxnIGlkPSJub2RlMSIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+UHJpdmF0ZVNjaG9vbCh0KTwvdGl0\nbGU+CjxlbGxpcHNlIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIGN4PSI2OC4yNCIgY3k9Ii05\nMCIgcng9IjY4LjQ5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iNjgu\nMjQiIHk9Ii04Ni4zIiBmb250LWZhbWlseT0iVGltZXMgTmV3IFJvbWFuLHNlcmlmIiBmb250LXNp\nemU9IjE0LjAwIj5Qcml2YXRlU2Nob29sKHQpPC90ZXh0Pgo8L2c+CjwhLS0gV2VhbHRoKHQrMSkg\nLS0+CjxnIGlkPSJub2RlMiIgY2xhc3M9Im5vZGUiPgo8dGl0bGU+V2VhbHRoKHQrMSk8L3RpdGxl\nPgo8ZWxsaXBzZSBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBjeD0iNjguMjQiIGN5PSItMTgi\nIHJ4PSI1My44OSIgcnk9IjE4Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjY4LjI0\nIiB5PSItMTQuMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5ldyBSb21hbixzZXJpZiIgZm9udC1zaXpl\nPSIxNC4wMCI+V2VhbHRoKHQrMSk8L3RleHQ+CjwvZz4KPCEtLSBQcml2YXRlU2Nob29sKHQpJiM0\nNTsmZ3Q7V2VhbHRoKHQrMSkgLS0+CjxnIGlkPSJlZGdlMSIgY2xhc3M9ImVkZ2UiPgo8dGl0bGU+\nUHJpdmF0ZVNjaG9vbCh0KSYjNDU7Jmd0O1dlYWx0aCh0KzEpPC90aXRsZT4KPHBhdGggZmlsbD0i\nbm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTY4LjI0LC03MS43QzY4LjI0LC02My45OCA2OC4yNCwt\nNTQuNzEgNjguMjQsLTQ2LjExIi8+Cjxwb2x5Z29uIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNr\nIiBwb2ludHM9IjcxLjc0LC00Ni4xIDY4LjI0LC0zNi4xIDY0Ljc0LC00Ni4xIDcxLjc0LC00Ni4x\nIi8+CjwvZz4KPCEtLSBXZWFsdGgodCkgLS0+CjxnIGlkPSJub2RlMyIgY2xhc3M9Im5vZGUiPgo8\ndGl0bGU+V2VhbHRoKHQpPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFj\nayIgY3g9IjY4LjI0IiBjeT0iLTE2MiIgcng9IjQ0LjM5IiByeT0iMTgiLz4KPHRleHQgdGV4dC1h\nbmNob3I9Im1pZGRsZSIgeD0iNjguMjQiIHk9Ii0xNTguMyIgZm9udC1mYW1pbHk9IlRpbWVzIE5l\ndyBSb21hbixzZXJpZiIgZm9udC1zaXplPSIxNC4wMCI+V2VhbHRoKHQpPC90ZXh0Pgo8L2c+Cjwh\nLS0gV2VhbHRoKHQpJiM0NTsmZ3Q7UHJpdmF0ZVNjaG9vbCh0KSAtLT4KPGcgaWQ9ImVkZ2UyIiBj\nbGFzcz0iZWRnZSI+Cjx0aXRsZT5XZWFsdGgodCkmIzQ1OyZndDtQcml2YXRlU2Nob29sKHQpPC90\naXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTY4LjI0LC0xNDMuN0M2\nOC4yNCwtMTM1Ljk4IDY4LjI0LC0xMjYuNzEgNjguMjQsLTExOC4xMSIvPgo8cG9seWdvbiBmaWxs\nPSJibGFjayIgc3Ryb2tlPSJibGFjayIgcG9pbnRzPSI3MS43NCwtMTE4LjEgNjguMjQsLTEwOC4x\nIDY0Ljc0LC0xMTguMSA3MS43NCwtMTE4LjEiLz4KPC9nPgo8L2c+Cjwvc3ZnPgo=\n"
+ }
+ },
+ "id": "3410be20-0743-4589-b0a8-eada64ced712"
}
],
"nbformat": 4,
diff --git a/lectures/lectures/causal_graphical_models.pdf b/lectures/lectures/causal_graphical_models.pdf
index ed740a52fab4559582f3c1b9304f8ea8469b1d62..a97ae31b34e9a715f7534a19900ea02378b610e3 100644
GIT binary patch
delta 433548
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
h+
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