龙空技术网

​causal-learn:基于Python的因果发现算法平台

数据派THU 2139

前言:

如今小伙伴们对“社区发现算法 python”大体比较着重,兄弟们都想要了解一些“社区发现算法 python”的相关知识。那么小编在网摘上收集了一些对于“社区发现算法 python””的相关文章,希望各位老铁们能喜欢,兄弟们一起来学习一下吧!

来源:集智俱乐部

本文约1100字,建议阅读5分钟

本文为你介绍基于Python的统一算法基本框架。

Causal-learn,由CMU张坤老师主导,多个团队(CMU因果研究团队、DMIR实验室、宫明明老师团队和Shohei Shimizu老师团队)联合开发出品的因果发现算法平台。

Causal-learn用Python实现了CMU开发的基于Java的Tetrad因果发现平台(WAIC2020 SAIL 之 L奖),并进一步加入新的算法和功能。其中包含了因果发现的经典算法与API,并且提供了模块化的代码,以方便研究者实现自己的算法。Causal-learn所有模块均基于Python实现,从而避免了传统因果发现库对R/Java的依赖,为Python开发者提供便利。

Causal-learn支持:

Constrained-based causal discovery methods.Score-based causal discovery methods.Causal discovery methods based on constrained functional causal models.Hidden causal representation learning.Granger causal analysis.多个独立的基础模块,比如独立性测试,评分函数,图操作,评测指标。更多最新的因果发现算法,如gradient-based methods等。

Causal-learn团队正在积极维护与开发算法平台,保持版本稳定,并持续更新最新的因果发现算法与实用功能。

GitHub:

文档:

简单使用案例:

建议反馈: 郑雨嘉:yujiazh@cmu.edu,陈薇:chenweiDelight@gmail.com

平台介绍

1. 基于Python的统一算法框架

Causal-learn在设计上尽量的将代码模块化,简化了研究者的开发难度。同时通过提供简洁高效的代码接口,让不同领域的用户都能够轻松地应用因果发现算法。整体平台全部基于Python,用户无需再依赖于Java或R等环境,充分享受Python开发与使用的便利性。

同时,causal-learn提供了简单的安装方式,一行代码就能够将最经典、最全面的因果推荐算法部署在用户的项目中。

2. 经典算法的官方实现

Causal-learn包含了许多经典算法及其扩展的官方实现,如PC,PNL, LiNGAM等。这些因果发现领域“里程碑式”的算法的主要作者,都在causal-learn的领导团队中为平台建设指引方向。因此,causal-learn提供了最‘官方’的算法实现。用户通过熟悉相关代码,能够更快地掌握因果发现的经典算法,从而把握领域的整体发展,为相关研究提供启发。

3. 持续更新,掌握领域前沿

Causal-learn有着一个稳定的开发与维护团队,其背后的科研团队也持续的在因果发现领域输出最新的工作。因此,用户通过关注causal-learn算法平台,能够时刻掌握领域最新进展,第一时间将最新工作应用在不同的科研与生产项目中。

简单上手

1. 安装

Causal-learn提供Pip作为安装方式,用户可以通过简单的一行命令来进行安装使用:

pip install causal-learn

2. 因果发现,只需一步

Causal-learn为所有模型都提供了简单易用的借口,用户可以通过一行代码在自己的数据上进行因果发现:

G = pc(data, alpha, indep_test, stable, uc_rule, uc_priority, mvpc, correction_name, background_knowledge)

3. 可视化与评测

算法运行结束后,用户可以查看生成的因果图,并通过多种评测指标来与基准图进行对比:

G.to_nx_graph()G.draw_nx_graph(skel=False)

Causal-learn团队正在积极维护与开发算法平台,并持续更新最新的因果发现算法。欢迎大家关注以及提供宝贵意见!如果有问题或者建议,请联系我们。

标签: #社区发现算法 python