之前一篇:跟着开源项目学因果推断——CausalImpact 贝叶斯结构时间序列模型(二十一) 这里另外写一篇来继续研究一下CausalImpact这个开源库的一些细节的 1 CausalImpact 一些可调参数 1.1 CausalImpact默认的两种算法 CausalImpact默认使用TensorFlow Probability来求的两种算法,分别是Variational Inference 其中都可以使用GPU来加速,因为使用的是Tensorflow,但是HMC非常慢,复杂一些的算法很容易超过1H 切换的方式: # HMC ci = CausalImpact(data, pre_period import CausalImpact from causalimpact.misc import standardize data = pd.read_csv('tests/fixtures/btc.csv import CausalImpact from causalimpact.misc import standardize data = pd.read_csv('..
2.2 日文案例:CausalImpactの理解と実装 CausalImpactの理解と実装 論文:https://ai.google/research/pubs/pub41854 python実装: https://github.com/dafiti/causalimpact 案例地址:https://github.com/rmizuta3/causalimpact/blob/master/causalimpact_restaurant.ipynb from causalimpact import CausalImpact pre_period = ['2016-05-01', '2016-08-10'] post_period = ['2016- 顺便说一下,CausalImpact包含了UnobservedComponents,可以查看状态空间模型本身的结果。 该包只有一个入口点,即函数CausalImpact()。给定一个响应时间序列和一组控制时间序列,该函数构造一个时间序列模型,对反事实进行后验推理,并返回一个CausalImpact对象。
这篇文章将对比了六个目前社区中最常用的因果推断库:Bnlearn、Pgmpy、CausalNex、DoWhy、PyAgrum 和 CausalImpact。 6、CausalImpact CausalImpact 原本是 Google 的开源项目,用于通过贝叶斯结构时间序列模型来衡量干预效果。 CausalImpact 会先用干预前的数据建立基线模型,再将干预后的实际观测值与预测值比较,计算“反事实差异”。 若满足这些假设,CausalImpact 在定量评估干预效应方面非常可靠。 总结 六个库的思路差异很大。 因果效应型:DoWhy、CausalImpact 侧重在给定结构或时间序列下量化干预效果,适合政策分析或实验验证。
, post_period) #调用CausalImpact # 对于causalImpact的使用我们核心需要填写三个参数:观测数据data、干预前的时间窗口、干预后的时间窗口。 表3-1:展示CausalImpact输出的结果表格,量化效应值effect的估计及其置信区间,反映效应值是否具有显著性。 表3-1:展示CausalImpact输出的结果表格,量化效应值effect的估计及其置信区间,反映效应值是否具有显著性。 CausalImpact(..., model.args = list(niter = 20000, nseasons = 24)) 图4-5展示CausalImpact包中各个参数含义及其默认值。 依照上述方法得到的时序预测模型后,我们再将其代入CausalImpact的代码中,调整参数model为自定义的时序模型即可。
这里不做过多的描述,可参考:A/B Test︱一轮完美的A/B Test 需要具备哪些要素 2.2 时序 + 因果推断 - google的CausalImpact 跟着开源项目学因果推断——CausalImpact 为了准确的量化产品改版的效果,谷歌推出了开源项目causalimpact工具包,该方法基于合成控制法的原理,利用多个对照组数据来构建贝叶斯结构时间序列模型,并调整对照组和实验组之间的大小差异后构建综合时间序列基线
最广为人知的 “ forecast” ,谷歌开发的 CausalImpact, 以及推特的 AnomalyDetection,均是基于 R 语言。很显然,Facebook 想要改变这一点。
CausalImpact: CausalImpact是一个用于因果效应分析的库,它可以帮助评估时间序列数据中某个事件或处理对结果的影响。
CausalImpact: An R package for causal inference in time series https://github.com/google/CausalImpact
CausalImpact: An R package for causal inference in time series https://github.com/google/CausalImpact