[分享创造] Apache2.0 开源因果真理锻造机-寻找绝对尺度,用于一切决策场景

Causal Forge 开源项目介绍 最近自己做了个开源项目,叫 Causal Forge ,核心目标是解决因果分析中「决策不可靠」的痛点。 一、项目背景:为什么做这个工具? 我们平时接触的「因果关系」,大多来自两个孤立的维度,最终导致决策靠“拍脑袋”: 文本侧:政策文件、研究报告、分析文章中提出...
[分享创造] Apache2.0 开源因果真理锻造机-寻找绝对尺度,用于一切决策场景
[分享创造] Apache2.0 开源因果真理锻造机-寻找绝对尺度,用于一切决策场景

Causal Forge 开源项目介绍

最近自己做了个开源项目,叫 Causal Forge ,核心目标是解决因果分析中「决策不可靠」的痛点。

一、项目背景:为什么做这个工具?

我们平时接触的「因果关系」,大多来自两个孤立的维度,最终导致决策靠“拍脑袋”:

  • 文本侧:政策文件、研究报告、分析文章中提出的因果判断(比如“调降利率会带动工业生产回升”),有语义、可解释,但主观、不可证伪。
  • 数据侧:时间序列等数据中挖掘出的影响关系,客观、可量化,但天生不区分「因果」和「相关」,缺乏业务语义。 写报告的人讲一套,跑数据的人看一套,到底哪些因果链条可信,没有统一标准——这就是 Causal Forge 要解决的核心问题。

二、核心思路:把“文本因果”和“数据因果”放进同一条流水线

不追求“自动生成厉害的因果图”,而是聚焦更朴素、更实用的目标:让因果结论可验证、可追溯、可复盘,具体流程如下:

  1. 从文本中抽取结构化的因果关系
  2. 从数据中挖掘候选因果边
  3. 将文本侧与数据侧的结果双向对撞、对齐
  4. 通过多轮严格验证,只保留真正站得住脚的因果链条

三、适用场景

目前更适合偏研究、审计类的场景,尤其适配:

  • 宏观 / 政策传导分析
  • 基本面研究(如投研、行业分析)
  • 风险归因与复盘
  • 研究结论复核(验证研报/报告中的因果逻辑)

四、核心技术栈

不重复造轮子,基于成熟工具组合,聚焦“流水线编排+证据管理”,核心技术包括:

  • LLM + 结构化抽取:将文本中的因果关系抽成 Decision/Callback/Link 等结构化对象,避免模型自由发挥,确保输出规范。
  • 因果工具链组合:底层复用 causal-learn 、Tigramite 、DoWhy 、EconML 等成熟库,负责因果发现、估计、反驳与验证。
  • 时间序列因果验证:不止看相关性,重点校验时序方向、反向因果可能性、跨窗口稳定性。
  • 强类型 Schema 设计:将因果链、证据、验证结果均封装为可追溯的数据结构,避免散乱脚本。
  • 可复现实验流水线:配置、运行产物、验证报告、失败原因全部沉淀,支持重复复现,拒绝一次性分析。

五、独特功能(核心优势)

  1. 文本与数据因果双向验证(核心)

    区别于“只做文本抽取”或“只做数据因果发现”的项目,强制让两边结果对撞,只有双方都支持的候选,才进入后续验证。

  2. 失败也留档,不只展示成功结论

    每条因果链若未通过验证,会详细记录“卡在哪一步”“失败原因”(如时序不成立、稳定性不足),为复盘和迭代提供依据。

  3. 五道闸门式严格验证

    验证不止一步,需依次通过:必要性、充分性、时序性、不可逆性、跨周期稳定性,全部通过才认定为可信因果链。

  4. 因果链条全链路可追溯

    最终结论不是“模型认为 A 导致 B”,而是能回查到对应的原始文本段落、数据切片、验证参数和过程,确保可信。

  5. 偏研究/审计,而非黑盒预测器

    核心价值不是“给答案”,而是“说明答案为什么可信”,适配研究、复核等需要严谨证据的场景。

六、核心模块说明

模块 职责 关键依赖 schema/ 所有数据契约( Decision / Callback / CausalLink / CausalChain / Evidence ) Pydantic v2 topdown/ 文本 → 结构化 Decision/Callback 候选 LLM via instructor, spaCy, CauseNet bottomup/ 数据 → 候选因果边集(静态 + 时序) causal-learn, Tigramite, DoWhy, EconML crosscheck/ 语义对齐 + 双向取交集 + 冲突标注 sentence-transformers, networkx validate/ 五道闸门串联校验 + 失败原因记录 DoWhy, statsmodels, scipy chain/ Link 拼 DAG + 剪枝 + 综合置信度评分 networkx store/ 结果沉淀( JSONL/Parquet/GraphML/Neo4j ) — utils/ 时间轴对齐、随机种子、日志、配置加载 loguru, rich, OmegaConf

七、项目价值总结

  • 比纯 LLM 抽取更可靠:多了数据侧的验证,避免“只讲故事不落地”;
  • 比纯数据因果发现更可解释:有文本语义锚点,让数据结论能对应业务逻辑;
  • 比普通分析流程更可复盘:失败链条、验证过程全部保存,便于追溯问题;
  • 比单次研究报告更可积累:最终沉淀为因果链仓库,让组织记住因果,而非依赖个人记忆。

八、项目地址

如果你对「把文本因果叙事和数据因果验证结合」有兴趣,欢迎查看完整文档: https://github.com/zjhong/causal-forge/blob/main/README.zh-CN.md

来源: v2ex查看原文