From d8c5791b3452bf52f28aebcdc31be5fb53a9f658 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A1=B0=ED=95=B4=EC=B0=BD?= Date: Fri, 3 Oct 2025 17:04:35 +0900 Subject: [PATCH 1/6] update --- book/scm/causal_model.png | Bin 0 -> 83821 bytes book/scm/graph_based_approach.ipynb | 1105 +++++++++++++++++++++++++++ book/scm/overview.md | 9 + 3 files changed, 1114 insertions(+) create mode 100644 book/scm/causal_model.png create mode 100644 book/scm/graph_based_approach.ipynb create mode 100644 book/scm/overview.md diff --git a/book/scm/causal_model.png b/book/scm/causal_model.png new file mode 100644 index 0000000000000000000000000000000000000000..ab99255db477b472d5eff520a1a9723ca2e6d20d GIT binary patch literal 83821 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�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 literal 0 HcmV?d00001 diff --git a/book/scm/graph_based_approach.ipynb b/book/scm/graph_based_approach.ipynb new file mode 100644 index 0000000..ffe2870 --- /dev/null +++ b/book/scm/graph_based_approach.ipynb @@ -0,0 +1,1105 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "de707838", + "metadata": {}, + "source": [ + "# Graph based approach" + ] + }, + { + "cell_type": "markdown", + "id": "1d1e7ed3", + "metadata": {}, + "source": [ + "## Setup" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "dd8821be", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: dowhy==0.13 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (0.13)\n", + "Requirement already satisfied: causaldata in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (0.1.5)\n", + "Requirement already satisfied: econml in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (0.16.0)\n", + "Requirement already satisfied: scikit-learn in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (1.6.1)\n", + "Requirement already satisfied: causal-learn>=0.1.3.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (0.1.4.3)\n", + "Requirement already satisfied: cvxpy<1.5 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (1.4.4)\n", + "Requirement already satisfied: cython>=3.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (3.1.4)\n", + "Requirement already satisfied: joblib>=1.1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (1.5.2)\n", + "Requirement already satisfied: networkx>=3.3 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (3.5)\n", + "Requirement already satisfied: numba>=0.59 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (0.60.0)\n", + "Requirement already satisfied: numpy>1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (2.0.2)\n", + "Requirement already satisfied: pandas>1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (2.2.2)\n", + "Requirement already satisfied: scipy<=1.15.3 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (1.15.3)\n", + "Requirement already satisfied: statsmodels>=0.14 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (0.14.5)\n", + "Requirement already satisfied: sympy>=1.10.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (1.14.0)\n", + "Requirement already satisfied: tqdm>=4.64.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (4.67.1)\n", + "Requirement already satisfied: osqp>=0.6.2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (1.0.4)\n", + "Requirement already satisfied: ecos>=2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (2.0.14)\n", + "Requirement already satisfied: clarabel>=0.5.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (0.11.1)\n", + "Requirement already satisfied: scs>=3.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (3.2.8)\n", + "Requirement already satisfied: pybind11 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (3.0.1)\n", + "Requirement already satisfied: sparse in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from econml) (0.17.0)\n", + "Requirement already satisfied: shap<0.49.0,>=0.38.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from econml) (0.48.0)\n", + "Requirement already satisfied: lightgbm in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from econml) (4.6.0)\n", + "Requirement already satisfied: packaging in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from econml) (25.0)\n", + "Requirement already satisfied: threadpoolctl>=3.1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from scikit-learn) (3.6.0)\n", + "Requirement already satisfied: slicer==0.0.8 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from shap<0.49.0,>=0.38.1->econml) (0.0.8)\n", + "Requirement already satisfied: cloudpickle in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from shap<0.49.0,>=0.38.1->econml) (3.1.1)\n", + "Requirement already satisfied: typing-extensions in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from shap<0.49.0,>=0.38.1->econml) (4.15.0)\n", + "Requirement already satisfied: graphviz in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from causal-learn>=0.1.3.0->dowhy==0.13) (0.21)\n", + "Requirement already satisfied: matplotlib in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from causal-learn>=0.1.3.0->dowhy==0.13) (3.10.6)\n", + "Requirement already satisfied: pydot in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from causal-learn>=0.1.3.0->dowhy==0.13) (4.0.1)\n", + "Requirement already satisfied: momentchi2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from causal-learn>=0.1.3.0->dowhy==0.13) (0.1.8)\n", + "Requirement already satisfied: cffi in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from clarabel>=0.5.0->cvxpy<1.5->dowhy==0.13) (2.0.0)\n", + "Requirement already satisfied: llvmlite<0.44,>=0.43.0dev0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from numba>=0.59->dowhy==0.13) (0.43.0)\n", + "Requirement already satisfied: jinja2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from osqp>=0.6.2->cvxpy<1.5->dowhy==0.13) (3.1.6)\n", + "Requirement already satisfied: setuptools in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from osqp>=0.6.2->cvxpy<1.5->dowhy==0.13) (80.9.0)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from pandas>1.0->dowhy==0.13) (2.9.0.post0)\n", + "Requirement already satisfied: pytz>=2020.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from pandas>1.0->dowhy==0.13) (2025.2)\n", + "Requirement already satisfied: tzdata>=2022.7 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from pandas>1.0->dowhy==0.13) (2025.2)\n", + "Requirement already satisfied: six>=1.5 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from python-dateutil>=2.8.2->pandas>1.0->dowhy==0.13) (1.17.0)\n", + "Requirement already satisfied: patsy>=0.5.6 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from statsmodels>=0.14->dowhy==0.13) (1.0.1)\n", + "Requirement already satisfied: mpmath<1.4,>=1.1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from sympy>=1.10.1->dowhy==0.13) (1.3.0)\n", + "Requirement already satisfied: pycparser in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cffi->clarabel>=0.5.0->cvxpy<1.5->dowhy==0.13) (2.23)\n", + "Requirement already satisfied: MarkupSafe>=2.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from jinja2->osqp>=0.6.2->cvxpy<1.5->dowhy==0.13) (3.0.3)\n", + "Requirement already satisfied: contourpy>=1.0.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (1.3.3)\n", + "Requirement already satisfied: cycler>=0.10 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (0.12.1)\n", + "Requirement already satisfied: fonttools>=4.22.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (4.60.0)\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (1.4.9)\n", + "Requirement already satisfied: pillow>=8 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (11.3.0)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (3.2.4)\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "%pip install dowhy==0.13 causaldata econml scikit-learn\n", + "\n", + "import pandas as pd\n", + "import numpy as np\n", + "\n", + "from causaldata import nhefs\n", + "from sklearn.preprocessing import StandardScaler\n", + "from sklearn.linear_model import LogisticRegression, LinearRegression\n", + "from sklearn.ensemble import GradientBoostingRegressor\n", + "\n", + "from dowhy import CausalModel\n", + "from econml.inference import BootstrapInference\n" + ] + }, + { + "cell_type": "markdown", + "id": "102336cd", + "metadata": {}, + "source": [ + "- 금연이 체중 변화에 미치는 효과를 추정하고자 합니다. \n", + "- 이를 위해 [**NHEFS (National Health and Nutrition Examination Survey – Epidemiologic Follow-up Study)**](https://rdrr.io/cran/causaldata/man/nhefs.html) 데이터를 활용합니다. \n", + "- 이 데이터셋은 1971년 당시 흡연자였던 성인 코호트를 1982년까지 추적한 패널 자료로, \n", + "금연 여부(`qsmk`, 1=금연, 0=계속 흡연), 체중 변화(`wt82_71`), 연령, 성별, 신체 활동 수준, 운동 습관 등 다양한 변수를 포함하고 있습니다." + ] + }, + { + "cell_type": "code", + "execution_count": 139, + "id": "3f63bbe8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Shape of Data:\n", + "(1629, 67)\n", + "Variable Names:\n", + "Index(['seqn', 'qsmk', 'death', 'yrdth', 'modth', 'dadth', 'sbp', 'dbp', 'sex',\n", + " 'age', 'race', 'income', 'marital', 'school', 'education', 'ht', 'wt71',\n", + " 'wt82', 'wt82_71', 'birthplace', 'smokeintensity', 'smkintensity82_71',\n", + " 'smokeyrs', 'asthma', 'bronch', 'tb', 'hf', 'hbp', 'pepticulcer',\n", + " 'colitis', 'hepatitis', 'chroniccough', 'hayfever', 'diabetes', 'polio',\n", + " 'tumor', 'nervousbreak', 'alcoholpy', 'alcoholfreq', 'alcoholtype',\n", + " 'alcoholhowmuch', 'pica', 'headache', 'otherpain', 'weakheart',\n", + " 'allergies', 'nerves', 'lackpep', 'hbpmed', 'boweltrouble', 'wtloss',\n", + " 'infection', 'active', 'exercise', 'birthcontrol', 'pregnancies',\n", + " 'cholesterol', 'hightax82', 'price71', 'price82', 'tax71', 'tax82',\n", + " 'price71_82', 'tax71_82', 'id', 'censored', 'older'],\n", + " dtype='object')\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
seqnqsmkdeathyrdthmodthdadthsbpdbpsexageraceincomemaritalschooleducationhtwt71wt82wt82_71birthplacesmokeintensitysmkintensity82_71smokeyrsasthmabronchtbhfhbppepticulcercolitishepatitischroniccoughhayfeverdiabetespoliotumornervousbreakalcoholpyalcoholfreqalcoholtypealcoholhowmuchpicaheadacheotherpainweakheartallergiesnerveslackpephbpmedboweltroublewtlossinfectionactiveexercisebirthcontrolpregnanciescholesterolhightax82price71price82tax71tax82price71_82tax71_82idcensoredolder
0233.00.00.0NaNNaNNaN175.096.0042.0119.02.07.01174.187579.0468.946040-10.09396047.030.0-10.029.00.00.00.00.01.01.00.00.00.00.01.00.00.00.01.01.03.07.00.01.00.00.00.00.00.01.00.00.00.0022.0NaN197.00.02.1835941.7399901.1022950.4619750.4437870.64038110.00.0
1235.00.00.0NaNNaNNaN123.080.0036.0018.02.09.02159.375058.6361.2349702.60497042.020.0-10.024.00.00.00.00.00.00.00.00.00.00.00.00.00.00.01.00.01.04.00.01.00.00.00.00.00.00.00.00.01.0002.0NaN301.00.02.3466801.7973631.3649900.5718990.5493160.79296920.00.0
2244.00.00.0NaNNaNNaN115.075.0156.0115.03.011.02168.500056.8166.2244869.41448651.020.0-14.026.00.00.00.00.00.00.00.00.00.01.00.00.01.00.01.03.04.0NaN0.01.01.00.00.01.00.00.00.00.00.0020.02.0157.00.01.5695801.5134280.5512700.2309880.0561980.32025130.01.0
3245.00.01.085.02.014.0148.078.0068.0115.03.05.01170.187559.4264.4101174.99011737.03.04.053.00.00.00.00.01.00.00.00.00.00.00.00.00.00.01.02.03.04.00.00.01.01.00.00.00.00.00.00.00.0122.0NaN174.00.01.5065921.4519040.5249020.2199710.0547940.30499340.01.0
4252.00.00.0NaNNaNNaN118.077.0040.0018.02.011.02181.875087.0992.0792514.98925142.020.00.019.00.00.00.00.00.00.00.00.00.00.00.00.00.00.01.02.01.02.00.01.00.00.00.00.00.00.01.00.00.0112.0NaN216.00.02.3466801.7973631.3649900.5718990.5493160.79296950.00.0
\n", + "
" + ], + "text/plain": [ + " seqn qsmk death yrdth modth dadth sbp dbp sex age race \\\n", + "0 233.0 0.0 0.0 NaN NaN NaN 175.0 96.0 0 42.0 1 \n", + "1 235.0 0.0 0.0 NaN NaN NaN 123.0 80.0 0 36.0 0 \n", + "2 244.0 0.0 0.0 NaN NaN NaN 115.0 75.0 1 56.0 1 \n", + "3 245.0 0.0 1.0 85.0 2.0 14.0 148.0 78.0 0 68.0 1 \n", + "4 252.0 0.0 0.0 NaN NaN NaN 118.0 77.0 0 40.0 0 \n", + "\n", + " income marital school education ht wt71 wt82 wt82_71 \\\n", + "0 19.0 2.0 7.0 1 174.1875 79.04 68.946040 -10.093960 \n", + "1 18.0 2.0 9.0 2 159.3750 58.63 61.234970 2.604970 \n", + "2 15.0 3.0 11.0 2 168.5000 56.81 66.224486 9.414486 \n", + "3 15.0 3.0 5.0 1 170.1875 59.42 64.410117 4.990117 \n", + "4 18.0 2.0 11.0 2 181.8750 87.09 92.079251 4.989251 \n", + "\n", + " birthplace smokeintensity smkintensity82_71 smokeyrs asthma bronch \\\n", + "0 47.0 30.0 -10.0 29.0 0.0 0.0 \n", + "1 42.0 20.0 -10.0 24.0 0.0 0.0 \n", + "2 51.0 20.0 -14.0 26.0 0.0 0.0 \n", + "3 37.0 3.0 4.0 53.0 0.0 0.0 \n", + "4 42.0 20.0 0.0 19.0 0.0 0.0 \n", + "\n", + " tb hf hbp pepticulcer colitis hepatitis chroniccough hayfever \\\n", + "0 0.0 0.0 1.0 1.0 0.0 0.0 0.0 0.0 \n", + "1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 \n", + "3 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 \n", + "4 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "\n", + " diabetes polio tumor nervousbreak alcoholpy alcoholfreq alcoholtype \\\n", + "0 1.0 0.0 0.0 0.0 1.0 1.0 3.0 \n", + "1 0.0 0.0 0.0 0.0 1.0 0.0 1.0 \n", + "2 0.0 0.0 1.0 0.0 1.0 3.0 4.0 \n", + "3 0.0 0.0 0.0 0.0 1.0 2.0 3.0 \n", + "4 0.0 0.0 0.0 0.0 1.0 2.0 1.0 \n", + "\n", + " alcoholhowmuch pica headache otherpain weakheart allergies nerves \\\n", + "0 7.0 0.0 1.0 0.0 0.0 0.0 0.0 \n", + "1 4.0 0.0 1.0 0.0 0.0 0.0 0.0 \n", + "2 NaN 0.0 1.0 1.0 0.0 0.0 1.0 \n", + "3 4.0 0.0 0.0 1.0 1.0 0.0 0.0 \n", + "4 2.0 0.0 1.0 0.0 0.0 0.0 0.0 \n", + "\n", + " lackpep hbpmed boweltrouble wtloss infection active exercise \\\n", + "0 0.0 1.0 0.0 0.0 0.0 0 2 \n", + "1 0.0 0.0 0.0 0.0 1.0 0 0 \n", + "2 0.0 0.0 0.0 0.0 0.0 0 2 \n", + "3 0.0 0.0 0.0 0.0 0.0 1 2 \n", + "4 0.0 0.0 1.0 0.0 0.0 1 1 \n", + "\n", + " birthcontrol pregnancies cholesterol hightax82 price71 price82 \\\n", + "0 2.0 NaN 197.0 0.0 2.183594 1.739990 \n", + "1 2.0 NaN 301.0 0.0 2.346680 1.797363 \n", + "2 0.0 2.0 157.0 0.0 1.569580 1.513428 \n", + "3 2.0 NaN 174.0 0.0 1.506592 1.451904 \n", + "4 2.0 NaN 216.0 0.0 2.346680 1.797363 \n", + "\n", + " tax71 tax82 price71_82 tax71_82 id censored older \n", + "0 1.102295 0.461975 0.443787 0.640381 1 0.0 0.0 \n", + "1 1.364990 0.571899 0.549316 0.792969 2 0.0 0.0 \n", + "2 0.551270 0.230988 0.056198 0.320251 3 0.0 1.0 \n", + "3 0.524902 0.219971 0.054794 0.304993 4 0.0 1.0 \n", + "4 1.364990 0.571899 0.549316 0.792969 5 0.0 0.0 " + ] + }, + "execution_count": 139, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = nhefs.load_pandas().data.copy()\n", + "\n", + "print(\"Shape of Data:\")\n", + "print(df.shape)\n", + "\n", + "print(\"Variable Names:\")\n", + "print(df.columns)\n", + "\n", + "df.head()" + ] + }, + { + "cell_type": "markdown", + "id": "915637df", + "metadata": {}, + "source": [ + "- **처치변수**: `qsmk` — 1982년 추적조사 시 금연 여부 (1=금연, 0=계속 흡연) \n", + "- **결과변수**: `wt82_71` — 체중 변화량(kg) = 1982년 체중 – 1971년 체중 \n", + "- **통제변수**: \n", + " - `sex`: 성별 (0=남성, 1=여성) \n", + " - `age`: baseline 만 나이 \n", + " - `race`: 인종 (0=백인, 1=기타) \n", + " - `education`: 학력 수준 (5단계 범주) \n", + " - `smokeintensity`: baseline 하루 평균 흡연량(개비) \n", + " - `smokeyrs`: 흡연 지속 기간(년) \n", + " - `active`: 일상생활 활동 수준 (3단계) \n", + " - `exercise`: 여가시간 운동 수준 (3단계) \n", + " - `wt71`: baseline 체중(kg) \n" + ] + }, + { + "cell_type": "code", + "execution_count": 140, + "id": "ff2f4b4b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "처치군/대조군:\n", + " qsmk\n", + "0.0 1163\n", + "1.0 403\n", + "Name: count, dtype: int64\n" + ] + } + ], + "source": [ + "treatment = \"qsmk\"\n", + "outcome = \"wt82_71\"\n", + "\n", + "confounders = [\n", + " \"sex\",\n", + " \"age\", \n", + " \"race\", \n", + " \"education\", \n", + " \"smokeintensity\", \n", + " \"smokeyrs\", \n", + " \"active\", \n", + " \"exercise\", \n", + " \"wt71\" \n", + "]\n", + "\n", + "vars_needed = [treatment, outcome] + confounders\n", + "df_clean = df[vars_needed].dropna()\n", + "\n", + "print(\"처치군/대조군:\\n\", df_clean[treatment].value_counts())" + ] + }, + { + "cell_type": "code", + "execution_count": 141, + "id": "d985c724", + "metadata": {}, + "outputs": [], + "source": [ + "# 범주형 변수 원핫 인코딩\n", + "categorical_vars = [\"sex\", \"race\", \"education\", \"active\", \"exercise\"]\n", + "df_encoded = pd.get_dummies(df_clean, columns=categorical_vars, drop_first=True)\n", + "\n", + "# 연속형 변수 스케일링\n", + "numeric_confounders = [\"age\", \"smokeintensity\", \"smokeyrs\", \"wt71\"]\n", + "scaler = StandardScaler()\n", + "df_encoded[numeric_confounders] = scaler.fit_transform(df_encoded[numeric_confounders])" + ] + }, + { + "cell_type": "markdown", + "id": "25ebfea3", + "metadata": {}, + "source": [ + "## Model" + ] + }, + { + "cell_type": "code", + "execution_count": 142, + "id": "65df40db", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# 시각화용 DAG (원핫 인코딩 전 변수 기준)\n", + "gml_graph_viz = \"\"\"\n", + "graph [\n", + " directed 1\n", + "\n", + " node [ id \"qsmk\" label \"qsmk\" ]\n", + " node [ id \"wt82_71\" label \"wt82_71\" ]\n", + "\n", + " node [ id \"sex\" label \"sex\" ]\n", + " node [ id \"age\" label \"age\" ]\n", + " node [ id \"race\" label \"race\" ]\n", + " node [ id \"education\" label \"education\" ]\n", + " node [ id \"smokeintensity\" label \"smokeintensity\" ]\n", + " node [ id \"smokeyrs\" label \"smokeyrs\" ]\n", + " node [ id \"active\" label \"active\" ]\n", + " node [ id \"exercise\" label \"exercise\" ]\n", + " node [ id \"wt71\" label \"wt71\" ]\n", + "\n", + " edge [ source \"sex\" target \"qsmk\" ]\n", + " edge [ source \"sex\" target \"wt82_71\" ]\n", + " edge [ source \"age\" target \"qsmk\" ]\n", + " edge [ source \"age\" target \"wt82_71\" ]\n", + " edge [ source \"race\" target \"qsmk\" ]\n", + " edge [ source \"race\" target \"wt82_71\" ]\n", + " edge [ source \"education\" target \"qsmk\" ]\n", + " edge [ source \"education\" target \"wt82_71\" ]\n", + " edge [ source \"smokeintensity\" target \"qsmk\" ]\n", + " edge [ source \"smokeintensity\" target \"wt82_71\" ]\n", + " edge [ source \"smokeyrs\" target \"qsmk\" ]\n", + " edge [ source \"smokeyrs\" target \"wt82_71\" ]\n", + " edge [ source \"active\" target \"qsmk\" ]\n", + " edge [ source \"active\" target \"wt82_71\" ]\n", + " edge [ source \"exercise\" target \"qsmk\" ]\n", + " edge [ source \"exercise\" target \"wt82_71\" ]\n", + " edge [ source \"wt71\" target \"qsmk\" ]\n", + " edge [ source \"wt71\" target \"wt82_71\" ]\n", + "\n", + " edge [ source \"qsmk\" target \"wt82_71\" ]\n", + "]\n", + "\"\"\"\n", + "\n", + "cm_for_viz = CausalModel(data=df_clean, treatment=treatment, outcome=outcome, graph=gml_graph_viz)\n", + "cm_for_viz.view_model(layout=\"dot\")" + ] + }, + { + "cell_type": "code", + "execution_count": 143, + "id": "2539d612", + "metadata": {}, + "outputs": [], + "source": [ + "# 추정용 DAG\n", + "# - 모든 공변량(원핫 포함) -> {qsmk, wt82_71}\n", + "# - qsmk -> wt82_71\n", + "\n", + "all_cols = df_encoded.columns.tolist()\n", + "confounder_cols = [c for c in all_cols if c not in [treatment, outcome]]\n", + "\n", + "gml_nodes = []\n", + "gml_nodes.append(f' node [ id \"{treatment}\" label \"{treatment}\" ]')\n", + "gml_nodes.append(f' node [ id \"{outcome}\" label \"{outcome}\" ]')\n", + "for c in confounder_cols:\n", + " gml_nodes.append(f' node [ id \"{c}\" label \"{c}\" ]')\n", + "\n", + "gml_edges = []\n", + "for c in confounder_cols:\n", + " gml_edges.append(f' edge [ source \"{c}\" target \"{treatment}\" ]')\n", + " gml_edges.append(f' edge [ source \"{c}\" target \"{outcome}\" ]')\n", + "gml_edges.append(f' edge [ source \"{treatment}\" target \"{outcome}\" ]')\n", + "\n", + "gml_graph = 'graph [\\n directed 1\\n\\n' + \"\\n\".join(gml_nodes) + \"\\n\\n\" + \"\\n\".join(gml_edges) + \"\\n]\"" + ] + }, + { + "cell_type": "markdown", + "id": "5aa85b75", + "metadata": {}, + "source": [ + "## Identify" + ] + }, + { + "cell_type": "code", + "execution_count": 144, + "id": "5d714d62", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Estimand type: EstimandType.NONPARAMETRIC_ATE\n", + "\n", + "### Estimand : 1\n", + "Estimand name: backdoor\n", + "Estimand expression:\n", + " d ↪\n", + "───────(E[wt_82_71|exercise_1,education_4,exercise_2,active_1,age,education_5, ↪\n", + "d[qsmk] ↪\n", + "\n", + "↪ \n", + "↪ race_1,education_3,active_2,smokeintensity,sex_1,smokeyrs,education_2,wt71])\n", + "↪ \n", + "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,exercise_1,education_4,exercise_2,active_1,age,education_5,race_1,education_3,active_2,smokeintensity,sex_1,smokeyrs,education_2,wt71,U) = P(wt82_71|qsmk,exercise_1,education_4,exercise_2,active_1,age,education_5,race_1,education_3,active_2,smokeintensity,sex_1,smokeyrs,education_2,wt71)\n", + "\n", + "### Estimand : 2\n", + "Estimand name: iv\n", + "No such variable(s) found!\n", + "\n", + "### Estimand : 3\n", + "Estimand name: frontdoor\n", + "No such variable(s) found!\n", + "\n", + "### Estimand : 4\n", + "Estimand name: general_adjustment\n", + "Estimand expression:\n", + " d ↪\n", + "───────(E[wt_82_71|education_4,exercise_2,education_2,active_1,age,education_5 ↪\n", + "d[qsmk] ↪\n", + "\n", + "↪ \n", + "↪ ,race_1,smokeintensity,education_3,active_2,exercise_1,sex_1,smokeyrs,wt71])\n", + "↪ \n", + "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,education_4,exercise_2,education_2,active_1,age,education_5,race_1,smokeintensity,education_3,active_2,exercise_1,sex_1,smokeyrs,wt71,U) = P(wt82_71|qsmk,education_4,exercise_2,education_2,active_1,age,education_5,race_1,smokeintensity,education_3,active_2,exercise_1,sex_1,smokeyrs,wt71)\n", + "\n" + ] + } + ], + "source": [ + "est_model = CausalModel(\n", + " data=df_encoded,\n", + " treatment=treatment,\n", + " outcome=outcome,\n", + " graph=gml_graph\n", + ")\n", + "\n", + "estimand = est_model.identify_effect()\n", + "print(estimand)" + ] + }, + { + "cell_type": "markdown", + "id": "ea10922e", + "metadata": {}, + "source": [ + "- **Backdoor adjustment 가능** \n", + " 모든 공변량을 조건화하면 `qsmk → wt82_71` 인과효과를 식별할 수 있습니다.\n", + "\n", + "- **IV, Front-door 전략 없음** \n", + " 도구변수(Instrument)나 매개변수(Mediator)로 활용할 만한 변수가 존재하지 않습니다.\n", + "\n", + "- **가정 (Unconfoundedness)** \n", + " 관측되지 않은 잠재적 교란 변수(U)가 `qsmk`와 `wt82_71` 모두에 동시에 영향을 주지 않는다고 가정해야 합니다.\n", + "\n", + "따라서 **Back-door Adjustment**를 통해 금연(`qsmk`)이 체중 변화(`wt82_71`)에 미치는 ATE를 추정할 수 있습니다." + ] + }, + { + "cell_type": "markdown", + "id": "c9c024ad", + "metadata": {}, + "source": [ + "## Estimate" + ] + }, + { + "cell_type": "markdown", + "id": "e662236a", + "metadata": {}, + "source": [ + "### 1. Linear Regression" + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "id": "830fe396", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "[ATE] Linear Regression: 3.381171033988095\n" + ] + } + ], + "source": [ + "estimate_lr = est_model.estimate_effect(\n", + " identified_estimand=estimand,\n", + " method_name=\"backdoor.linear_regression\"\n", + ")\n", + "print(\"\\n[ATE] Linear Regression:\", estimate_lr.value)" + ] + }, + { + "cell_type": "markdown", + "id": "6e6509e2", + "metadata": {}, + "source": [ + "### 2. Doubly Robust Learner" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "id": "a7aa0ee5", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[ATE] DR Learner: 3.738829410323152\n" + ] + } + ], + "source": [ + "estimate_drl = est_model.estimate_effect(\n", + " identified_estimand=estimand,\n", + " method_name=\"backdoor.econml.dr.DRLearner\",\n", + " method_params={\n", + " \"init_params\": {\n", + " \"model_propensity\": LogisticRegression(max_iter=5000),\n", + " \"model_regression\": GradientBoostingRegressor(random_state=42)\n", + " },\n", + " \"fit_params\": {}\n", + " }\n", + ")\n", + "print(\"[ATE] DR Learner:\", estimate_drl.value)\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "id": "43b9462a", + "metadata": {}, + "source": [ + "### 3. Double Machine Learning" + ] + }, + { + "cell_type": "code", + "execution_count": 154, + "id": "a91cdd48", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[ATE] DML: 3.9002505426347462\n", + "[ATE] DML 95% CI: [[[3.19674121]]\n", + "\n", + " [[5.20465502]]]\n" + ] + } + ], + "source": [ + "estimate_dml = est_model.estimate_effect(\n", + " identified_estimand=estimand,\n", + " method_name=\"backdoor.econml.dml.DML\",\n", + " control_value=0,\n", + " treatment_value=1,\n", + " target_units=\"ate\",\n", + " confidence_intervals=True,\n", + " method_params={\n", + " \"init_params\": {\n", + " \"model_y\": GradientBoostingRegressor(random_state=42),\n", + " \"model_t\": GradientBoostingRegressor(random_state=42),\n", + " \"model_final\": LinearRegression(fit_intercept=False),\n", + " },\n", + " \"fit_params\": {\n", + " \"inference\": BootstrapInference(n_bootstrap_samples=500, n_jobs=-1)\n", + " }\n", + " }\n", + ")\n", + "print(\"[ATE] DML:\", estimate_dml.value)\n", + "print(\"[ATE] DML 95% CI:\", estimate_dml.get_confidence_intervals())\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 155, + "id": "80620f5d", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[ATE] DML: 3.5041273735125875\n" + ] + } + ], + "source": [ + "estimate_dml = est_model.estimate_effect(\n", + " identified_estimand=estimand,\n", + " method_name=\"backdoor.econml.dml.DML\",\n", + " control_value=0,\n", + " treatment_value=1,\n", + " target_units=\"ate\",\n", + " method_params={\n", + " \"init_params\": {\n", + " \"model_y\": 'auto',\n", + " \"model_t\": 'auto',\n", + " \"model_final\": LinearRegression(fit_intercept=False)\n", + " },\n", + " \"fit_params\": {}\n", + " }\n", + ")\n", + "print(\"[ATE] DML:\", estimate_dml.value)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.11" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/book/scm/overview.md b/book/scm/overview.md new file mode 100644 index 0000000..1a96adb --- /dev/null +++ b/book/scm/overview.md @@ -0,0 +1,9 @@ +# SCM +구조적 인과 모형(SCM)은 design-based approach와 달리, 인과관계를 DAG로 모델링하여 식별 가정을 명시적으로 표현하는 접근법입니다. + +SCM을 통한 인과추론 과정은 다음과 같이 요약됩니다: + +1. **Model**: 변수들 사이의 인과적 관계를 DAG로 정의하고, 혼란변수(confounder), 매개변수(mediator), 충돌변수(collider) 등을 구분합니다. +2. **Identify**: 관심 있는 인과효과가 그래프에서 식별 가능한지 검토하고, Back-door, Front-door, 도구변수(IV)와 같은 식별 전략을 탐색합니다. +3. **Estimate**: 식별 전략에 적합한 통계적 방법으로 인과효과를 추정합니다. +4. **Refute**: 위약(placebo) 분석, 무작위 교란(Randomization Test) 등을 통해 추정된 인과효과의 강건성을 검증합니다. \ No newline at end of file From 9edda848defc0d66c61d2e44035ad8da28e6ef96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A1=B0=ED=95=B4=EC=B0=BD?= Date: Fri, 3 Oct 2025 17:05:12 +0900 Subject: [PATCH 2/6] update toc.yml --- book/_toc.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/book/_toc.yml b/book/_toc.yml index ccc6cd6..76c8cb7 100644 --- a/book/_toc.yml +++ b/book/_toc.yml @@ -5,6 +5,9 @@ parts: - caption: Contents chapters: - file: prior_knowledge/overview.md + - file: scm/overview.md + sections: + - file: scm/graph_based_approach.ipynb - file: ate/overview.md sections: - file: ate/ols.ipynb From f6e67c4ad62224cf1e8771c22ed7361bbbc18033 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A1=B0=ED=95=B4=EC=B0=BD?= Date: Fri, 3 Oct 2025 17:06:04 +0900 Subject: [PATCH 3/6] delete dag.png --- book/scm/causal_model.png | Bin 83821 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 book/scm/causal_model.png diff --git a/book/scm/causal_model.png b/book/scm/causal_model.png deleted file mode 100644 index ab99255db477b472d5eff520a1a9723ca2e6d20d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83821 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�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 From 121837c93e29975cac8c6b1a06c1548df43beac6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A1=B0=ED=95=B4=EC=B0=BD?= Date: Fri, 3 Oct 2025 23:48:24 +0900 Subject: [PATCH 4/6] update scm --- book/scm/graph_based_approach.ipynb | 33 ----------------------------- 1 file changed, 33 deletions(-) diff --git a/book/scm/graph_based_approach.ipynb b/book/scm/graph_based_approach.ipynb index ffe2870..c06157e 100644 --- a/book/scm/graph_based_approach.ipynb +++ b/book/scm/graph_based_approach.ipynb @@ -1046,39 +1046,6 @@ "print(\"[ATE] DML 95% CI:\", estimate_dml.get_confidence_intervals())\n", "\n" ] - }, - { - "cell_type": "code", - "execution_count": 155, - "id": "80620f5d", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ATE] DML: 3.5041273735125875\n" - ] - } - ], - "source": [ - "estimate_dml = est_model.estimate_effect(\n", - " identified_estimand=estimand,\n", - " method_name=\"backdoor.econml.dml.DML\",\n", - " control_value=0,\n", - " treatment_value=1,\n", - " target_units=\"ate\",\n", - " method_params={\n", - " \"init_params\": {\n", - " \"model_y\": 'auto',\n", - " \"model_t\": 'auto',\n", - " \"model_final\": LinearRegression(fit_intercept=False)\n", - " },\n", - " \"fit_params\": {}\n", - " }\n", - ")\n", - "print(\"[ATE] DML:\", estimate_dml.value)" - ] } ], "metadata": { From 0458ef708d7787d04246e2bd77c3b59648f47ea9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A1=B0=ED=95=B4=EC=B0=BD?= Date: Sat, 11 Oct 2025 17:22:10 +0900 Subject: [PATCH 5/6] update backdoor criterion --- book/_toc.yml | 2 +- ...pproach.ipynb => backdoor_criterion.ipynb} | 717 +++++++----------- book/scm/overview.md | 2 +- 3 files changed, 290 insertions(+), 431 deletions(-) rename book/scm/{graph_based_approach.ipynb => backdoor_criterion.ipynb} (84%) diff --git a/book/_toc.yml b/book/_toc.yml index 76c8cb7..a0ac836 100644 --- a/book/_toc.yml +++ b/book/_toc.yml @@ -7,7 +7,7 @@ parts: - file: prior_knowledge/overview.md - file: scm/overview.md sections: - - file: scm/graph_based_approach.ipynb + - file: scm/backdoor_criterion.ipynb - file: ate/overview.md sections: - file: ate/ols.ipynb diff --git a/book/scm/graph_based_approach.ipynb b/book/scm/backdoor_criterion.ipynb similarity index 84% rename from book/scm/graph_based_approach.ipynb rename to book/scm/backdoor_criterion.ipynb index c06157e..e8a2731 100644 --- a/book/scm/graph_based_approach.ipynb +++ b/book/scm/backdoor_criterion.ipynb @@ -5,7 +5,7 @@ "id": "de707838", "metadata": {}, "source": [ - "# Graph based approach" + "# Backdoor Criterion" ] }, { @@ -18,71 +18,24 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 1, + "id": "301b8d0e", + "metadata": {}, + "outputs": [], + "source": [ + "%%capture\n", + "%pip install dowhy==0.13 causaldata econml scikit-learn" + ] + }, + { + "cell_type": "code", + "execution_count": 2, "id": "dd8821be", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Requirement already satisfied: dowhy==0.13 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (0.13)\n", - "Requirement already satisfied: causaldata in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (0.1.5)\n", - "Requirement already satisfied: econml in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (0.16.0)\n", - "Requirement already satisfied: scikit-learn in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (1.6.1)\n", - "Requirement already satisfied: causal-learn>=0.1.3.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (0.1.4.3)\n", - "Requirement already satisfied: cvxpy<1.5 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (1.4.4)\n", - "Requirement already satisfied: cython>=3.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (3.1.4)\n", - "Requirement already satisfied: joblib>=1.1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (1.5.2)\n", - "Requirement already satisfied: networkx>=3.3 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (3.5)\n", - "Requirement already satisfied: numba>=0.59 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (0.60.0)\n", - "Requirement already satisfied: numpy>1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (2.0.2)\n", - "Requirement already satisfied: pandas>1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (2.2.2)\n", - "Requirement already satisfied: scipy<=1.15.3 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (1.15.3)\n", - "Requirement already satisfied: statsmodels>=0.14 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (0.14.5)\n", - "Requirement already satisfied: sympy>=1.10.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (1.14.0)\n", - "Requirement already satisfied: tqdm>=4.64.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from dowhy==0.13) (4.67.1)\n", - "Requirement already satisfied: osqp>=0.6.2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (1.0.4)\n", - "Requirement already satisfied: ecos>=2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (2.0.14)\n", - "Requirement already satisfied: clarabel>=0.5.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (0.11.1)\n", - "Requirement already satisfied: scs>=3.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (3.2.8)\n", - "Requirement already satisfied: pybind11 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cvxpy<1.5->dowhy==0.13) (3.0.1)\n", - "Requirement already satisfied: sparse in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from econml) (0.17.0)\n", - "Requirement already satisfied: shap<0.49.0,>=0.38.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from econml) (0.48.0)\n", - "Requirement already satisfied: lightgbm in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from econml) (4.6.0)\n", - "Requirement already satisfied: packaging in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from econml) (25.0)\n", - "Requirement already satisfied: threadpoolctl>=3.1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from scikit-learn) (3.6.0)\n", - "Requirement already satisfied: slicer==0.0.8 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from shap<0.49.0,>=0.38.1->econml) (0.0.8)\n", - "Requirement already satisfied: cloudpickle in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from shap<0.49.0,>=0.38.1->econml) (3.1.1)\n", - "Requirement already satisfied: typing-extensions in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from shap<0.49.0,>=0.38.1->econml) (4.15.0)\n", - "Requirement already satisfied: graphviz in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from causal-learn>=0.1.3.0->dowhy==0.13) (0.21)\n", - "Requirement already satisfied: matplotlib in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from causal-learn>=0.1.3.0->dowhy==0.13) (3.10.6)\n", - "Requirement already satisfied: pydot in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from causal-learn>=0.1.3.0->dowhy==0.13) (4.0.1)\n", - "Requirement already satisfied: momentchi2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from causal-learn>=0.1.3.0->dowhy==0.13) (0.1.8)\n", - "Requirement already satisfied: cffi in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from clarabel>=0.5.0->cvxpy<1.5->dowhy==0.13) (2.0.0)\n", - "Requirement already satisfied: llvmlite<0.44,>=0.43.0dev0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from numba>=0.59->dowhy==0.13) (0.43.0)\n", - "Requirement already satisfied: jinja2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from osqp>=0.6.2->cvxpy<1.5->dowhy==0.13) (3.1.6)\n", - "Requirement already satisfied: setuptools in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from osqp>=0.6.2->cvxpy<1.5->dowhy==0.13) (80.9.0)\n", - "Requirement already satisfied: python-dateutil>=2.8.2 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from pandas>1.0->dowhy==0.13) (2.9.0.post0)\n", - "Requirement already satisfied: pytz>=2020.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from pandas>1.0->dowhy==0.13) (2025.2)\n", - "Requirement already satisfied: tzdata>=2022.7 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from pandas>1.0->dowhy==0.13) (2025.2)\n", - "Requirement already satisfied: six>=1.5 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from python-dateutil>=2.8.2->pandas>1.0->dowhy==0.13) (1.17.0)\n", - "Requirement already satisfied: patsy>=0.5.6 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from statsmodels>=0.14->dowhy==0.13) (1.0.1)\n", - "Requirement already satisfied: mpmath<1.4,>=1.1.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from sympy>=1.10.1->dowhy==0.13) (1.3.0)\n", - "Requirement already satisfied: pycparser in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from cffi->clarabel>=0.5.0->cvxpy<1.5->dowhy==0.13) (2.23)\n", - "Requirement already satisfied: MarkupSafe>=2.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from jinja2->osqp>=0.6.2->cvxpy<1.5->dowhy==0.13) (3.0.3)\n", - "Requirement already satisfied: contourpy>=1.0.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (1.3.3)\n", - "Requirement already satisfied: cycler>=0.10 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (0.12.1)\n", - "Requirement already satisfied: fonttools>=4.22.0 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (4.60.0)\n", - "Requirement already satisfied: kiwisolver>=1.3.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (1.4.9)\n", - "Requirement already satisfied: pillow>=8 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (11.3.0)\n", - "Requirement already satisfied: pyparsing>=2.3.1 in /Users/hc.cho/Projects/awesome-causal-inference-python/.venv/lib/python3.12/site-packages (from matplotlib->causal-learn>=0.1.3.0->dowhy==0.13) (3.2.4)\n", - "Note: you may need to restart the kernel to use updated packages.\n" - ] - } - ], + "outputs": [], "source": [ - "%pip install dowhy==0.13 causaldata econml scikit-learn\n", + "import warnings\n", + "warnings.filterwarnings(\"ignore\")\n", "\n", "import pandas as pd\n", "import numpy as np\n", @@ -93,7 +46,7 @@ "from sklearn.ensemble import GradientBoostingRegressor\n", "\n", "from dowhy import CausalModel\n", - "from econml.inference import BootstrapInference\n" + "from econml.inference import BootstrapInference" ] }, { @@ -109,7 +62,7 @@ }, { "cell_type": "code", - "execution_count": 139, + "execution_count": 3, "id": "3f63bbe8", "metadata": {}, "outputs": [ @@ -165,53 +118,7 @@ " dbp\n", " sex\n", " age\n", - " race\n", - " income\n", - " marital\n", - " school\n", - " education\n", - " ht\n", - " wt71\n", - " wt82\n", - " wt82_71\n", - " birthplace\n", - " smokeintensity\n", - " smkintensity82_71\n", - " smokeyrs\n", - " asthma\n", - " bronch\n", - " tb\n", - " hf\n", - " hbp\n", - " pepticulcer\n", - " colitis\n", - " hepatitis\n", - " chroniccough\n", - " hayfever\n", - " diabetes\n", - " polio\n", - " tumor\n", - " nervousbreak\n", - " alcoholpy\n", - " alcoholfreq\n", - " alcoholtype\n", - " alcoholhowmuch\n", - " pica\n", - " headache\n", - " otherpain\n", - " weakheart\n", - " allergies\n", - " nerves\n", - " lackpep\n", - " hbpmed\n", - " boweltrouble\n", - " wtloss\n", - " infection\n", - " active\n", - " exercise\n", - " birthcontrol\n", - " pregnancies\n", - " cholesterol\n", + " ...\n", " hightax82\n", " price71\n", " price82\n", @@ -237,53 +144,7 @@ " 96.0\n", " 0\n", " 42.0\n", - " 1\n", - " 19.0\n", - " 2.0\n", - " 7.0\n", - " 1\n", - " 174.1875\n", - " 79.04\n", - " 68.946040\n", - " -10.093960\n", - " 47.0\n", - " 30.0\n", - " -10.0\n", - " 29.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 1.0\n", - " 3.0\n", - " 7.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0\n", - " 2\n", - " 2.0\n", - " NaN\n", - " 197.0\n", + " ...\n", " 0.0\n", " 2.183594\n", " 1.739990\n", @@ -307,53 +168,7 @@ " 80.0\n", " 0\n", " 36.0\n", - " 0\n", - " 18.0\n", - " 2.0\n", - " 9.0\n", - " 2\n", - " 159.3750\n", - " 58.63\n", - " 61.234970\n", - " 2.604970\n", - " 42.0\n", - " 20.0\n", - " -10.0\n", - " 24.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 1.0\n", - " 4.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 0\n", - " 0\n", - " 2.0\n", - " NaN\n", - " 301.0\n", + " ...\n", " 0.0\n", " 2.346680\n", " 1.797363\n", @@ -377,53 +192,7 @@ " 75.0\n", " 1\n", " 56.0\n", - " 1\n", - " 15.0\n", - " 3.0\n", - " 11.0\n", - " 2\n", - " 168.5000\n", - " 56.81\n", - " 66.224486\n", - " 9.414486\n", - " 51.0\n", - " 20.0\n", - " -14.0\n", - " 26.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 1.0\n", - " 3.0\n", - " 4.0\n", - " NaN\n", - " 0.0\n", - " 1.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0\n", - " 2\n", - " 0.0\n", - " 2.0\n", - " 157.0\n", + " ...\n", " 0.0\n", " 1.569580\n", " 1.513428\n", @@ -447,53 +216,7 @@ " 78.0\n", " 0\n", " 68.0\n", - " 1\n", - " 15.0\n", - " 3.0\n", - " 5.0\n", - " 1\n", - " 170.1875\n", - " 59.42\n", - " 64.410117\n", - " 4.990117\n", - " 37.0\n", - " 3.0\n", - " 4.0\n", - " 53.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 2.0\n", - " 3.0\n", - " 4.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1\n", - " 2\n", - " 2.0\n", - " NaN\n", - " 174.0\n", + " ...\n", " 0.0\n", " 1.506592\n", " 1.451904\n", @@ -517,53 +240,7 @@ " 77.0\n", " 0\n", " 40.0\n", - " 0\n", - " 18.0\n", - " 2.0\n", - " 11.0\n", - " 2\n", - " 181.8750\n", - " 87.09\n", - " 92.079251\n", - " 4.989251\n", - " 42.0\n", - " 20.0\n", - " 0.0\n", - " 19.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 2.0\n", - " 1.0\n", - " 2.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 0.0\n", - " 1.0\n", - " 0.0\n", - " 0.0\n", - " 1\n", - " 1\n", - " 2.0\n", - " NaN\n", - " 216.0\n", + " ...\n", " 0.0\n", " 2.346680\n", " 1.797363\n", @@ -577,74 +254,35 @@ " \n", " \n", "\n", + "

5 rows × 67 columns

\n", "" ], "text/plain": [ - " seqn qsmk death yrdth modth dadth sbp dbp sex age race \\\n", - "0 233.0 0.0 0.0 NaN NaN NaN 175.0 96.0 0 42.0 1 \n", - "1 235.0 0.0 0.0 NaN NaN NaN 123.0 80.0 0 36.0 0 \n", - "2 244.0 0.0 0.0 NaN NaN NaN 115.0 75.0 1 56.0 1 \n", - "3 245.0 0.0 1.0 85.0 2.0 14.0 148.0 78.0 0 68.0 1 \n", - "4 252.0 0.0 0.0 NaN NaN NaN 118.0 77.0 0 40.0 0 \n", - "\n", - " income marital school education ht wt71 wt82 wt82_71 \\\n", - "0 19.0 2.0 7.0 1 174.1875 79.04 68.946040 -10.093960 \n", - "1 18.0 2.0 9.0 2 159.3750 58.63 61.234970 2.604970 \n", - "2 15.0 3.0 11.0 2 168.5000 56.81 66.224486 9.414486 \n", - "3 15.0 3.0 5.0 1 170.1875 59.42 64.410117 4.990117 \n", - "4 18.0 2.0 11.0 2 181.8750 87.09 92.079251 4.989251 \n", - "\n", - " birthplace smokeintensity smkintensity82_71 smokeyrs asthma bronch \\\n", - "0 47.0 30.0 -10.0 29.0 0.0 0.0 \n", - "1 42.0 20.0 -10.0 24.0 0.0 0.0 \n", - "2 51.0 20.0 -14.0 26.0 0.0 0.0 \n", - "3 37.0 3.0 4.0 53.0 0.0 0.0 \n", - "4 42.0 20.0 0.0 19.0 0.0 0.0 \n", - "\n", - " tb hf hbp pepticulcer colitis hepatitis chroniccough hayfever \\\n", - "0 0.0 0.0 1.0 1.0 0.0 0.0 0.0 0.0 \n", - "1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", - "2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 \n", - "3 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 \n", - "4 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + " seqn qsmk death yrdth modth dadth sbp dbp sex age ... \\\n", + "0 233.0 0.0 0.0 NaN NaN NaN 175.0 96.0 0 42.0 ... \n", + "1 235.0 0.0 0.0 NaN NaN NaN 123.0 80.0 0 36.0 ... \n", + "2 244.0 0.0 0.0 NaN NaN NaN 115.0 75.0 1 56.0 ... \n", + "3 245.0 0.0 1.0 85.0 2.0 14.0 148.0 78.0 0 68.0 ... \n", + "4 252.0 0.0 0.0 NaN NaN NaN 118.0 77.0 0 40.0 ... \n", "\n", - " diabetes polio tumor nervousbreak alcoholpy alcoholfreq alcoholtype \\\n", - "0 1.0 0.0 0.0 0.0 1.0 1.0 3.0 \n", - "1 0.0 0.0 0.0 0.0 1.0 0.0 1.0 \n", - "2 0.0 0.0 1.0 0.0 1.0 3.0 4.0 \n", - "3 0.0 0.0 0.0 0.0 1.0 2.0 3.0 \n", - "4 0.0 0.0 0.0 0.0 1.0 2.0 1.0 \n", + " hightax82 price71 price82 tax71 tax82 price71_82 tax71_82 id \\\n", + "0 0.0 2.183594 1.739990 1.102295 0.461975 0.443787 0.640381 1 \n", + "1 0.0 2.346680 1.797363 1.364990 0.571899 0.549316 0.792969 2 \n", + "2 0.0 1.569580 1.513428 0.551270 0.230988 0.056198 0.320251 3 \n", + "3 0.0 1.506592 1.451904 0.524902 0.219971 0.054794 0.304993 4 \n", + "4 0.0 2.346680 1.797363 1.364990 0.571899 0.549316 0.792969 5 \n", "\n", - " alcoholhowmuch pica headache otherpain weakheart allergies nerves \\\n", - "0 7.0 0.0 1.0 0.0 0.0 0.0 0.0 \n", - "1 4.0 0.0 1.0 0.0 0.0 0.0 0.0 \n", - "2 NaN 0.0 1.0 1.0 0.0 0.0 1.0 \n", - "3 4.0 0.0 0.0 1.0 1.0 0.0 0.0 \n", - "4 2.0 0.0 1.0 0.0 0.0 0.0 0.0 \n", + " censored older \n", + "0 0.0 0.0 \n", + "1 0.0 0.0 \n", + "2 0.0 1.0 \n", + "3 0.0 1.0 \n", + "4 0.0 0.0 \n", "\n", - " lackpep hbpmed boweltrouble wtloss infection active exercise \\\n", - "0 0.0 1.0 0.0 0.0 0.0 0 2 \n", - "1 0.0 0.0 0.0 0.0 1.0 0 0 \n", - "2 0.0 0.0 0.0 0.0 0.0 0 2 \n", - "3 0.0 0.0 0.0 0.0 0.0 1 2 \n", - "4 0.0 0.0 1.0 0.0 0.0 1 1 \n", - "\n", - " birthcontrol pregnancies cholesterol hightax82 price71 price82 \\\n", - "0 2.0 NaN 197.0 0.0 2.183594 1.739990 \n", - "1 2.0 NaN 301.0 0.0 2.346680 1.797363 \n", - "2 0.0 2.0 157.0 0.0 1.569580 1.513428 \n", - "3 2.0 NaN 174.0 0.0 1.506592 1.451904 \n", - "4 2.0 NaN 216.0 0.0 2.346680 1.797363 \n", - "\n", - " tax71 tax82 price71_82 tax71_82 id censored older \n", - "0 1.102295 0.461975 0.443787 0.640381 1 0.0 0.0 \n", - "1 1.364990 0.571899 0.549316 0.792969 2 0.0 0.0 \n", - "2 0.551270 0.230988 0.056198 0.320251 3 0.0 1.0 \n", - "3 0.524902 0.219971 0.054794 0.304993 4 0.0 1.0 \n", - "4 1.364990 0.571899 0.549316 0.792969 5 0.0 0.0 " + "[5 rows x 67 columns]" ] }, - "execution_count": 139, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -682,7 +320,7 @@ }, { "cell_type": "code", - "execution_count": 140, + "execution_count": 4, "id": "ff2f4b4b", "metadata": {}, "outputs": [ @@ -722,7 +360,7 @@ }, { "cell_type": "code", - "execution_count": 141, + "execution_count": 5, "id": "d985c724", "metadata": {}, "outputs": [], @@ -747,7 +385,7 @@ }, { "cell_type": "code", - "execution_count": 142, + "execution_count": 21, "id": "65df40db", "metadata": {}, "outputs": [ @@ -805,12 +443,14 @@ "\"\"\"\n", "\n", "cm_for_viz = CausalModel(data=df_clean, treatment=treatment, outcome=outcome, graph=gml_graph_viz)\n", - "cm_for_viz.view_model(layout=\"dot\")" + "cm_for_viz.view_model(\n", + " layout=\"dot\"\n", + ")" ] }, { "cell_type": "code", - "execution_count": 143, + "execution_count": 7, "id": "2539d612", "metadata": {}, "outputs": [], @@ -847,7 +487,7 @@ }, { "cell_type": "code", - "execution_count": 144, + "execution_count": 8, "id": "5d714d62", "metadata": {}, "outputs": [ @@ -861,13 +501,13 @@ "Estimand name: backdoor\n", "Estimand expression:\n", " d ↪\n", - "───────(E[wt_82_71|exercise_1,education_4,exercise_2,active_1,age,education_5, ↪\n", + "───────(E[wt_82_71|sex_1,active_1,education_4,race_1,education_2,wt71,educatio ↪\n", "d[qsmk] ↪\n", "\n", "↪ \n", - "↪ race_1,education_3,active_2,smokeintensity,sex_1,smokeyrs,education_2,wt71])\n", + "↪ n_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age])\n", "↪ \n", - "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,exercise_1,education_4,exercise_2,active_1,age,education_5,race_1,education_3,active_2,smokeintensity,sex_1,smokeyrs,education_2,wt71,U) = P(wt82_71|qsmk,exercise_1,education_4,exercise_2,active_1,age,education_5,race_1,education_3,active_2,smokeintensity,sex_1,smokeyrs,education_2,wt71)\n", + "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,sex_1,active_1,education_4,race_1,education_2,wt71,education_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age,U) = P(wt82_71|qsmk,sex_1,active_1,education_4,race_1,education_2,wt71,education_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age)\n", "\n", "### Estimand : 2\n", "Estimand name: iv\n", @@ -881,13 +521,13 @@ "Estimand name: general_adjustment\n", "Estimand expression:\n", " d ↪\n", - "───────(E[wt_82_71|education_4,exercise_2,education_2,active_1,age,education_5 ↪\n", + "───────(E[wt_82_71|sex_1,active_1,education_4,race_1,education_2,wt71,educatio ↪\n", "d[qsmk] ↪\n", "\n", "↪ \n", - "↪ ,race_1,smokeintensity,education_3,active_2,exercise_1,sex_1,smokeyrs,wt71])\n", + "↪ n_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age])\n", "↪ \n", - "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,education_4,exercise_2,education_2,active_1,age,education_5,race_1,smokeintensity,education_3,active_2,exercise_1,sex_1,smokeyrs,wt71,U) = P(wt82_71|qsmk,education_4,exercise_2,education_2,active_1,age,education_5,race_1,smokeintensity,education_3,active_2,exercise_1,sex_1,smokeyrs,wt71)\n", + "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,sex_1,active_1,education_4,race_1,education_2,wt71,education_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age,U) = P(wt82_71|qsmk,sex_1,active_1,education_4,race_1,education_2,wt71,education_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age)\n", "\n" ] } @@ -939,7 +579,7 @@ }, { "cell_type": "code", - "execution_count": 145, + "execution_count": 9, "id": "830fe396", "metadata": {}, "outputs": [ @@ -948,7 +588,7 @@ "output_type": "stream", "text": [ "\n", - "[ATE] Linear Regression: 3.381171033988095\n" + "[ATE] Linear Regression: 3.3811710339880983\n" ] } ], @@ -970,7 +610,7 @@ }, { "cell_type": "code", - "execution_count": 146, + "execution_count": 10, "id": "a7aa0ee5", "metadata": {}, "outputs": [ @@ -978,7 +618,10 @@ "name": "stdout", "output_type": "stream", "text": [ - "[ATE] DR Learner: 3.738829410323152\n" + "[ATE] DR Learner: 3.893642417299098\n", + "[ATE] DR Learner 95% CI: [[[3.35046186]]\n", + "\n", + " [[5.20724188]]]\n" ] } ], @@ -986,16 +629,22 @@ "estimate_drl = est_model.estimate_effect(\n", " identified_estimand=estimand,\n", " method_name=\"backdoor.econml.dr.DRLearner\",\n", + " control_value=0,\n", + " treatment_value=1,\n", + " target_units=\"ate\",\n", + " confidence_intervals=True,\n", " method_params={\n", " \"init_params\": {\n", " \"model_propensity\": LogisticRegression(max_iter=5000),\n", " \"model_regression\": GradientBoostingRegressor(random_state=42)\n", " },\n", - " \"fit_params\": {}\n", + " \"fit_params\": {\n", + " \"inference\": BootstrapInference(n_bootstrap_samples=500, n_jobs=-1)\n", + " }\n", " }\n", ")\n", "print(\"[ATE] DR Learner:\", estimate_drl.value)\n", - "\n" + "print(\"[ATE] DR Learner 95% CI:\", estimate_drl.get_confidence_intervals())\n" ] }, { @@ -1008,7 +657,7 @@ }, { "cell_type": "code", - "execution_count": 154, + "execution_count": 11, "id": "a91cdd48", "metadata": {}, "outputs": [ @@ -1016,10 +665,10 @@ "name": "stdout", "output_type": "stream", "text": [ - "[ATE] DML: 3.9002505426347462\n", - "[ATE] DML 95% CI: [[[3.19674121]]\n", + "[ATE] DML: 3.464128951245904\n", + "[ATE] DML 95% CI: [[[2.4019656]]\n", "\n", - " [[5.20465502]]]\n" + " [[4.4395689]]]\n" ] } ], @@ -1046,6 +695,216 @@ "print(\"[ATE] DML 95% CI:\", estimate_dml.get_confidence_intervals())\n", "\n" ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "869355b3", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[ATE] DML: 3.464128951245904\n" + ] + } + ], + "source": [ + "estimate_dml_fast = est_model.estimate_effect(\n", + " identified_estimand=estimand,\n", + " method_name='backdoor.econml.dml.DML',\n", + " method_params={\n", + " 'init_params': {\n", + " 'model_y': GradientBoostingRegressor(random_state=42),\n", + " 'model_t': GradientBoostingRegressor(random_state=42),\n", + " 'model_final': LinearRegression(fit_intercept=False),\n", + " },\n", + " 'fit_params': {}}\n", + ")\n", + "print(\"[ATE] DML:\", estimate_dml.value)" + ] + }, + { + "cell_type": "markdown", + "id": "60080461", + "metadata": {}, + "source": [ + "## Refute" + ] + }, + { + "cell_type": "markdown", + "id": "bdcda503", + "metadata": {}, + "source": [ + "### 1. Add Random Common Cause\n", + "\n", + "데이터셋에 독립적인 무작위 변수를 넣었을 때, 추정값이 바뀌는가?\n", + "\n", + "- **기대**: New effect ≈ Estimated effect, p > 0.05\n", + "\n", + "- **해석**: 크게 변하면 → 모델이 잡음에 민감하거나 과적합일 가능성" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "9ad86368", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Refute: Add a random common cause\n", + "Estimated effect:3.6087034824487034\n", + "New effect:3.4568539723790566\n", + "p value:0.42\n", + "\n" + ] + } + ], + "source": [ + "res_random=est_model.refute_estimate(\n", + " estimand,\n", + " estimate_dml_fast,\n", + " method_name=\"random_common_cause\"\n", + ")\n", + "print(res_random)" + ] + }, + { + "cell_type": "markdown", + "id": "bd770bcd", + "metadata": {}, + "source": [ + "### 2. Add Unobserved Common Cause\n", + "데이터에 관찰되지 않은 교란요인이 존재한다고 가정했을 때, 추정값이 얼마나 변하는가?\n", + "\n", + "- **기대**: New effect ≈ Estimated effect\n", + "- **해석**:\n", + " - 크게 변하지 않으면 → 잠재적 누락변수(confounder) 에도 견고(robust)\n", + " - 크게 변하면 → 모델이 숨은 교란에 민감, 추가 변수 고려 필요" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "dcce63b4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Refute: Add an Unobserved Common Cause\n", + "Estimated effect:3.6087034824487034\n", + "New effect:3.4630068223974586\n", + "\n" + ] + } + ], + "source": [ + "res_unobserved=est_model.refute_estimate(\n", + " estimand,\n", + " estimate_dml_fast,\n", + " method_name=\"add_unobserved_common_cause\",\n", + " confounders_effect_on_treatment=\"linear\",\n", + " confounders_effect_on_outcome=\"linear\",\n", + " effect_strength_on_treatment=0.01,\n", + " effect_strength_on_outcome=0.02\n", + ")\n", + "print(res_unobserved)" + ] + }, + { + "cell_type": "markdown", + "id": "1f01b491", + "metadata": {}, + "source": [ + "### 3. Placebo Treatment\n", + "처치 변수를 무작위로 섞인(permute) 가짜 처치(placebo)로 바꿨을 때, 추정값이 여전히 유의하게 나타나는가?\n", + "\n", + "- **기대**: New effect ≈ 0, p > 0.05\n", + "- **해석**:\n", + " - 효과가 사라지면 → 진짜 처치 효과만 반영된 것 → 견고(robust)\n", + " - 여전히 유의하면 → 모델이 가짜 상관관계(spurious correlation) 를 잡고 있을 가능성" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "545e6293", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Refute: Use a Placebo Treatment\n", + "Estimated effect:3.6087034824487034\n", + "New effect:-0.01017831576756214\n", + "p value:0.4903498144600218\n", + "\n" + ] + } + ], + "source": [ + "res_placebo=est_model.refute_estimate(\n", + " estimand,\n", + " estimate_dml_fast,\n", + " method_name=\"placebo_treatment_refuter\",\n", + " placebo_type=\"permute\",\n", + " num_simulations=10\n", + ")\n", + "print(res_placebo)" + ] + }, + { + "cell_type": "markdown", + "id": "555163a3", + "metadata": {}, + "source": [ + "### 4. Use Subset of Data\n", + "\n", + "데이터의 일부(예: 80%)만 무작위로 남겨두고 추정했을 때, 추정값이 얼마나 안정적인가?\n", + "\n", + "- **기대**: New effect ≈ Estimated effect, p > 0.05\n", + "\n", + "- **해석**:\n", + " - 크게 변하지 않으면 → 표본 구성에 강건(robust)\n", + " - 크게 변하면 → 특정 데이터 표본에 민감하거나, 과적합 가능성" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "69481385", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Refute: Use a subset of data\n", + "Estimated effect:3.6087034824487034\n", + "New effect:3.5177935748179356\n", + "p value:0.36231391604195595\n", + "\n" + ] + } + ], + "source": [ + "res_subset=est_model.refute_estimate(\n", + " estimand,\n", + " estimate_dml_fast,\n", + " method_name=\"data_subset_refuter\",\n", + " subset_fraction=0.8,\n", + " num_simulations=10\n", + ")\n", + "print(res_subset)" + ] } ], "metadata": { diff --git a/book/scm/overview.md b/book/scm/overview.md index 1a96adb..b45ed91 100644 --- a/book/scm/overview.md +++ b/book/scm/overview.md @@ -1,5 +1,5 @@ # SCM -구조적 인과 모형(SCM)은 design-based approach와 달리, 인과관계를 DAG로 모델링하여 식별 가정을 명시적으로 표현하는 접근법입니다. +관찰 데이터를 활용해 ground truth 수준의 인과 메커니즘을 추론하기 위해 SCM(Structural Causal Model)을 사용할 수 있습니다. SCM을 통한 인과추론 과정은 다음과 같이 요약됩니다: From 40b30a227471c1676d1c56db86f53001340d1a83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A1=B0=ED=95=B4=EC=B0=BD?= Date: Sat, 18 Oct 2025 18:37:20 +0900 Subject: [PATCH 6/6] =?UTF-8?q?fix:=20=EB=A6=AC=EB=B7=B0=20=EB=B0=98?= =?UTF-8?q?=EC=98=81(BDC=20code=20=EC=88=98=EC=A0=95,=20overview=20?= =?UTF-8?q?=EC=88=98=EC=A0=95)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .DS_Store | Bin 6148 -> 0 bytes .gitignore | 2 + book/scm/backdoor_criterion.ipynb | 162 +++++++++++------------------- book/scm/causal_model.png | Bin 0 -> 83821 bytes book/scm/overview.md | 60 +++++++++-- 5 files changed, 113 insertions(+), 111 deletions(-) delete mode 100644 .DS_Store create mode 100644 book/scm/causal_model.png diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index dbcfa895b883d20f9e64f4fb66c24a885bf11e8e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHKJ5Iwu5S=xSWGPMPC|62Nq*Q55WKNI^AQLH|#Bz$z`v%ZZQE(L+L_-S&SD@ko zh&MX}St}MLLNF8UzS;Tg*iXu?hlt$tVm>As5K)G~=ve6xHg~!b4Q8j~JywhH?6j`d z9h>}C6F+-OBU;coZQ|!ohQs~XSJg#PuIduD?B)9L`Ev4b)b`K6^{>yi+$5trq@r#~ zHGa#uZtrRN7W?A5xA*<`n?tRuxmCTb+vShz_Fk{Ju8A>V3>X8(!2f0dcQ#Ab7qr=1;pB2bn~ecupv}OZEC+o5ALB36+2prVY-J1>1AmMGmlm^P zikH&6b?5c?uJsrv7%UvuumXYJ`Ut>+&yj=R6u)O3ak*k6$h)vTqyz0kAP{1cG4KNn Fd;lmtNxuL9 diff --git a/.gitignore b/.gitignore index ac0cf43..b86db1f 100644 --- a/.gitignore +++ b/.gitignore @@ -136,3 +136,5 @@ _build/ # poetry files pyproject.toml + +.DS_Store \ No newline at end of file diff --git a/book/scm/backdoor_criterion.ipynb b/book/scm/backdoor_criterion.ipynb index e8a2731..b55a9bc 100644 --- a/book/scm/backdoor_criterion.ipynb +++ b/book/scm/backdoor_criterion.ipynb @@ -29,7 +29,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "id": "dd8821be", "metadata": {}, "outputs": [], @@ -62,7 +62,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "id": "3f63bbe8", "metadata": {}, "outputs": [ @@ -282,7 +282,7 @@ "[5 rows x 67 columns]" ] }, - "execution_count": 3, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -320,7 +320,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "id": "ff2f4b4b", "metadata": {}, "outputs": [ @@ -358,23 +358,6 @@ "print(\"처치군/대조군:\\n\", df_clean[treatment].value_counts())" ] }, - { - "cell_type": "code", - "execution_count": 5, - "id": "d985c724", - "metadata": {}, - "outputs": [], - "source": [ - "# 범주형 변수 원핫 인코딩\n", - "categorical_vars = [\"sex\", \"race\", \"education\", \"active\", \"exercise\"]\n", - "df_encoded = pd.get_dummies(df_clean, columns=categorical_vars, drop_first=True)\n", - "\n", - "# 연속형 변수 스케일링\n", - "numeric_confounders = [\"age\", \"smokeintensity\", \"smokeyrs\", \"wt71\"]\n", - "scaler = StandardScaler()\n", - "df_encoded[numeric_confounders] = scaler.fit_transform(df_encoded[numeric_confounders])" - ] - }, { "cell_type": "markdown", "id": "25ebfea3", @@ -385,7 +368,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 5, "id": "65df40db", "metadata": {}, "outputs": [ @@ -401,8 +384,7 @@ } ], "source": [ - "# 시각화용 DAG (원핫 인코딩 전 변수 기준)\n", - "gml_graph_viz = \"\"\"\n", + "gml_graph = \"\"\"\n", "graph [\n", " directed 1\n", "\n", @@ -442,41 +424,12 @@ "]\n", "\"\"\"\n", "\n", - "cm_for_viz = CausalModel(data=df_clean, treatment=treatment, outcome=outcome, graph=gml_graph_viz)\n", - "cm_for_viz.view_model(\n", + "cm = CausalModel(data=df_clean, treatment=treatment, outcome=outcome, graph=gml_graph)\n", + "cm.view_model(\n", " layout=\"dot\"\n", ")" ] }, - { - "cell_type": "code", - "execution_count": 7, - "id": "2539d612", - "metadata": {}, - "outputs": [], - "source": [ - "# 추정용 DAG\n", - "# - 모든 공변량(원핫 포함) -> {qsmk, wt82_71}\n", - "# - qsmk -> wt82_71\n", - "\n", - "all_cols = df_encoded.columns.tolist()\n", - "confounder_cols = [c for c in all_cols if c not in [treatment, outcome]]\n", - "\n", - "gml_nodes = []\n", - "gml_nodes.append(f' node [ id \"{treatment}\" label \"{treatment}\" ]')\n", - "gml_nodes.append(f' node [ id \"{outcome}\" label \"{outcome}\" ]')\n", - "for c in confounder_cols:\n", - " gml_nodes.append(f' node [ id \"{c}\" label \"{c}\" ]')\n", - "\n", - "gml_edges = []\n", - "for c in confounder_cols:\n", - " gml_edges.append(f' edge [ source \"{c}\" target \"{treatment}\" ]')\n", - " gml_edges.append(f' edge [ source \"{c}\" target \"{outcome}\" ]')\n", - "gml_edges.append(f' edge [ source \"{treatment}\" target \"{outcome}\" ]')\n", - "\n", - "gml_graph = 'graph [\\n directed 1\\n\\n' + \"\\n\".join(gml_nodes) + \"\\n\\n\" + \"\\n\".join(gml_edges) + \"\\n]\"" - ] - }, { "cell_type": "markdown", "id": "5aa85b75", @@ -487,7 +440,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "id": "5d714d62", "metadata": {}, "outputs": [ @@ -501,13 +454,13 @@ "Estimand name: backdoor\n", "Estimand expression:\n", " d ↪\n", - "───────(E[wt_82_71|sex_1,active_1,education_4,race_1,education_2,wt71,educatio ↪\n", + "───────(E[wt_82_71|sex,age,smokeyrs,race,active,wt71,education,exercise,smokei ↪\n", "d[qsmk] ↪\n", "\n", - "↪ \n", - "↪ n_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age])\n", - "↪ \n", - "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,sex_1,active_1,education_4,race_1,education_2,wt71,education_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age,U) = P(wt82_71|qsmk,sex_1,active_1,education_4,race_1,education_2,wt71,education_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age)\n", + "↪ \n", + "↪ ntensity])\n", + "↪ \n", + "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,sex,age,smokeyrs,race,active,wt71,education,exercise,smokeintensity,U) = P(wt82_71|qsmk,sex,age,smokeyrs,race,active,wt71,education,exercise,smokeintensity)\n", "\n", "### Estimand : 2\n", "Estimand name: iv\n", @@ -521,20 +474,20 @@ "Estimand name: general_adjustment\n", "Estimand expression:\n", " d ↪\n", - "───────(E[wt_82_71|sex_1,active_1,education_4,race_1,education_2,wt71,educatio ↪\n", + "───────(E[wt_82_71|sex,age,smokeyrs,race,active,wt71,education,exercise,smokei ↪\n", "d[qsmk] ↪\n", "\n", - "↪ \n", - "↪ n_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age])\n", - "↪ \n", - "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,sex_1,active_1,education_4,race_1,education_2,wt71,education_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age,U) = P(wt82_71|qsmk,sex_1,active_1,education_4,race_1,education_2,wt71,education_5,active_2,smokeintensity,exercise_2,exercise_1,education_3,smokeyrs,age)\n", + "↪ \n", + "↪ ntensity])\n", + "↪ \n", + "Estimand assumption 1, Unconfoundedness: If U→{qsmk} and U→wt82_71 then P(wt82_71|qsmk,sex,age,smokeyrs,race,active,wt71,education,exercise,smokeintensity,U) = P(wt82_71|qsmk,sex,age,smokeyrs,race,active,wt71,education,exercise,smokeintensity)\n", "\n" ] } ], "source": [ "est_model = CausalModel(\n", - " data=df_encoded,\n", + " data=df_clean,\n", " treatment=treatment,\n", " outcome=outcome,\n", " graph=gml_graph\n", @@ -579,7 +532,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 7, "id": "830fe396", "metadata": {}, "outputs": [ @@ -588,7 +541,7 @@ "output_type": "stream", "text": [ "\n", - "[ATE] Linear Regression: 3.3811710339880983\n" + "[ATE] Linear Regression: 3.3811710339880823\n" ] } ], @@ -610,7 +563,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 8, "id": "a7aa0ee5", "metadata": {}, "outputs": [ @@ -618,10 +571,10 @@ "name": "stdout", "output_type": "stream", "text": [ - "[ATE] DR Learner: 3.893642417299098\n", - "[ATE] DR Learner 95% CI: [[[3.35046186]]\n", + "[ATE] DR Learner: 3.8479455513705227\n", + "[ATE] DR Learner 95% CI: [[[3.12167472]]\n", "\n", - " [[5.20724188]]]\n" + " [[5.29732315]]]\n" ] } ], @@ -657,7 +610,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 9, "id": "a91cdd48", "metadata": {}, "outputs": [ @@ -665,10 +618,10 @@ "name": "stdout", "output_type": "stream", "text": [ - "[ATE] DML: 3.464128951245904\n", - "[ATE] DML 95% CI: [[[2.4019656]]\n", + "[ATE] DML: 3.8611289087159135\n", + "[ATE] DML 95% CI: [[[3.06774555]]\n", "\n", - " [[4.4395689]]]\n" + " [[5.17092571]]]\n" ] } ], @@ -696,17 +649,25 @@ "\n" ] }, + { + "cell_type": "markdown", + "id": "60080461", + "metadata": {}, + "source": [ + "## Refute" + ] + }, { "cell_type": "code", - "execution_count": 20, - "id": "869355b3", + "execution_count": 15, + "id": "18481fc5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "[ATE] DML: 3.464128951245904\n" + "[ATE] DML: 3.8611289087159135\n" ] } ], @@ -725,14 +686,6 @@ "print(\"[ATE] DML:\", estimate_dml.value)" ] }, - { - "cell_type": "markdown", - "id": "60080461", - "metadata": {}, - "source": [ - "## Refute" - ] - }, { "cell_type": "markdown", "id": "bdcda503", @@ -749,7 +702,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 11, "id": "9ad86368", "metadata": {}, "outputs": [ @@ -758,9 +711,9 @@ "output_type": "stream", "text": [ "Refute: Add a random common cause\n", - "Estimated effect:3.6087034824487034\n", - "New effect:3.4568539723790566\n", - "p value:0.42\n", + "Estimated effect:3.5111934415796173\n", + "New effect:3.4686090208687586\n", + "p value:0.72\n", "\n" ] } @@ -785,12 +738,13 @@ "- **기대**: New effect ≈ Estimated effect\n", "- **해석**:\n", " - 크게 변하지 않으면 → 잠재적 누락변수(confounder) 에도 견고(robust)\n", - " - 크게 변하면 → 모델이 숨은 교란에 민감, 추가 변수 고려 필요" + " - 크게 변하면 → 모델이 숨은 교란에 민감, 추가 변수 고려 필요\n", + "- **참고**: 도메인 지식을 기반으로, 교란이 처리변수와 결과에 미치는 영향의 크기는 사용자가 직접 설정해야 합니다." ] }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 12, "id": "dcce63b4", "metadata": {}, "outputs": [ @@ -799,8 +753,8 @@ "output_type": "stream", "text": [ "Refute: Add an Unobserved Common Cause\n", - "Estimated effect:3.6087034824487034\n", - "New effect:3.4630068223974586\n", + "Estimated effect:3.5111934415796173\n", + "New effect:2.993841050044186\n", "\n" ] } @@ -834,7 +788,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 13, "id": "545e6293", "metadata": {}, "outputs": [ @@ -843,9 +797,9 @@ "output_type": "stream", "text": [ "Refute: Use a Placebo Treatment\n", - "Estimated effect:3.6087034824487034\n", - "New effect:-0.01017831576756214\n", - "p value:0.4903498144600218\n", + "Estimated effect:3.5111934415796173\n", + "New effect:0.14283539321647556\n", + "p value:0.3866345448655441\n", "\n" ] } @@ -879,7 +833,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 14, "id": "69481385", "metadata": {}, "outputs": [ @@ -888,9 +842,9 @@ "output_type": "stream", "text": [ "Refute: Use a subset of data\n", - "Estimated effect:3.6087034824487034\n", - "New effect:3.5177935748179356\n", - "p value:0.36231391604195595\n", + "Estimated effect:3.5111934415796173\n", + "New effect:3.4052136015402126\n", + "p value:0.4004970164482444\n", "\n" ] } diff --git a/book/scm/causal_model.png b/book/scm/causal_model.png new file mode 100644 index 0000000000000000000000000000000000000000..ab99255db477b472d5eff520a1a9723ca2e6d20d GIT binary patch literal 83821 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�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 literal 0 HcmV?d00001 diff --git a/book/scm/overview.md b/book/scm/overview.md index b45ed91..c989e17 100644 --- a/book/scm/overview.md +++ b/book/scm/overview.md @@ -1,9 +1,55 @@ -# SCM -관찰 데이터를 활용해 ground truth 수준의 인과 메커니즘을 추론하기 위해 SCM(Structural Causal Model)을 사용할 수 있습니다. +# Structural Causal Model(SCM) -SCM을 통한 인과추론 과정은 다음과 같이 요약됩니다: +SCM(Structural Causal Model)은 변수 간의 causal mechanism을 구조방정식과 DAG로 표현하는 접근입니다. +이 섹션에서는 주요 식별 전략을 중심으로, 실제 데이터를 활용한 인과효과 분석을 다룹니다. -1. **Model**: 변수들 사이의 인과적 관계를 DAG로 정의하고, 혼란변수(confounder), 매개변수(mediator), 충돌변수(collider) 등을 구분합니다. -2. **Identify**: 관심 있는 인과효과가 그래프에서 식별 가능한지 검토하고, Back-door, Front-door, 도구변수(IV)와 같은 식별 전략을 탐색합니다. -3. **Estimate**: 식별 전략에 적합한 통계적 방법으로 인과효과를 추정합니다. -4. **Refute**: 위약(placebo) 분석, 무작위 교란(Randomization Test) 등을 통해 추정된 인과효과의 강건성을 검증합니다. \ No newline at end of file +--- + +## 1. Backdoor Criterion + +- **식별 전략:** + 원인과 결과 모두에 영향을 미치는 교란변수(confounder) 를 통제하여, + 인과효과를 다음과 같이 식별합니다. + + $$ + P(Y \mid do(X)) = \sum_Z P(Y \mid X, Z) P(Z) + $$ + +- **데이터:** *National Health and Nutrition Examination Survey (NHEFS)* + +--- + +## 2. Frontdoor Criterion + +- **식별 전략:** + 원인($X$)이 결과($Y$)에 미치는 효과가 매개변수($M$)을 통해서만 전달될 때, + 다음 식을 통해 인과효과를 간접적으로 식별합니다. + + $$ + P(Y \mid do(X)) = \sum_M P(M \mid X) \sum_{X'} P(Y \mid M, X') P(X') + $$ + +- **데이터:** *NYC TLC 2023 High Volume FHV Trip Records* + +--- + +## 3. Instrument Variable (IV) + +- **식별 전략:** + ($X$)와 ($Y$) 간의 내생성(endogeneity) 문제를 해결하기 위해, + ($X$)에는 영향을 주지만 ($Y$) 에는 직접 영향을 미치지 않는 도구변수($Z$)를 사용합니다. + 인과효과는 다음과 같이 식별됩니다. + + $$ + \hat{\beta}_{IV} = \frac{\operatorname{Cov}(Z, Y)}{\operatorname{Cov}(Z, X)} + $$ +- **데이터:** 추후 확정 예정 + +--- + +## 4. Causal Discovery + +- **목표:** + 변수 간 조건부 독립성(Conditional Independence)을 이용해 데이터로부터 DAG 구조를 학습하고 인과 방향성을 탐색합니다. + +- **데이터:** 추후 확정 예정