Auto Byte

Science AI

David Salazar作者陈萍、魔王编辑

# 相关性 ≠ 因果性，用图的方式打开因果关系

David Salazar 发布了一系列博客介绍因果关系。在之前的文章中，他将因果关系定义为干预分布（interventional distribution），并介绍了两种识别因果关系的策略：后门准则和前门准则。然而，这些准则并不适用于所有因果关系。

confounded component

````tidy_dagitty(example, layout = "nicely", seed = 2) %>%`
`   node_descendants("x") %>%`
`   mutate(linetype = if_else(direction == "->", "solid", "dashed")) %>%`
`   ggplot(aes(x = x, y = y, xend = xend, yend = yend, color = descendant)) +`
`   geom_dag_edges(aes(end_cap = ggraph::circle(10, "mm"), edge_linetype = linetype)) +``   geom_dag_point() +  geom_dag_text(col = "white") +`
`   labs(title = "The causal effect of X is identifiable",`
`        subtitle = "There's no bi-directed path between X and its descendats")````

````non_identifiable_example <- dagify(x ~ z,`
`                                  x ~~~ z,`
`                                  x ~~ y,`
`                                  w ~ x,`
`                                  w ~~ z,`
` ``                                 y ~ w,`
`  ``                                y ~~ z)````

````tidy_dagitty(non_identifiable_example, layout = "nicely", seed = 2) %>%`
`   node_descendants("x") %>%`
`   mutate(linetype = if_else(direction == "->", "solid", "dashed")) %>%`
`  `` ggplot(aes(x = x, y = y, xend = xend, yend = yend, color = descendant)) +`
`  `` geom_dag_edges(aes(end_cap = ggraph::circle(10, "mm"), edge_linetype = linetype)) +`
`  `` geom_dag_point() +  geom_dag_text(col = "white")````

````third_example <- dagify(z1 ~ x + z2,`
`                        x ~ z2,`
` ``                       x ~~ z2,`
`                        x ~~ y,`
`                        z2 ~~ y,`
`                        z3 ~ z2,`
` ``                       x ~~ z3,`
`                        y ~ z1 + z3)````

````tidy_dagitty(third_example, layout = "nicely", seed = 2) %>%`
`   node_descendants("x") %>%`
`   ``mutate(linetype = if_else(direction == "->", "solid", "dashed")) %>%`
`  `` ggplot(aes(x = x, y = y, xend = xend, yend = yend, color = descendant)) +`
`  `` geom_dag_edges(aes(end_cap = ggraph::circle(10, "mm"), edge_linetype = linetype)) +`
`  `` geom_dag_point() +  geom_dag_text(col = "white")````

````first_example_igraph <- graph.formula(x -+ z_2,`
`                                       z_2 -+ x,``                                        ``                                                       x -+ z_1,`
`                             ``          z_2 -+ z_1,`
`                                       ``z_1 -+ y,`
`                                       ``y -+ z_1,`
`                                       ``x -+ y,                                       ``                                                           z_1 -+ y,`
`                                       ``z_2 -+ y, simplify = FALSE) %>%`
`                                   set.edge.attribute("description", index = c(1, 2, 5, 6), "U")`
`ce <- causal.effect(y = "y", x = "x", z = NULL, G = first_example_igraph, expr = TRUE) `
`plot(TeX(ce), cex = 3)````

「马尔可夫模型」是指基于马尔可夫性质的模型，其假设一个给定过程的未来状态仅取决于当前状态。根据系统状态是否完全可被观测以及系统是自动的还是受控的，可以将常见的马尔可夫模型分成四种：马尔可夫链、隐马尔可夫模型（HMM）、马尔可夫决策过程（MDP）和部分可观测马尔可夫决策过程（POMDP）。另外还有马尔可夫随机场（MRF）和马尔可夫链蒙特卡洛（MCMC）这两个模型也常常被用于近似和预测。