社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

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

集智俱乐部 • 3 年前 • 592 次点击  


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: https://github.com/cmu-phil/causal-learn

文档: https://causal-learn.readthedocs.io/en/latest/

简单使用案例:https://github.com/cmu-phil/causal-learn/tree/main/tests

建议反馈: 郑雨嘉: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团队正在积极维护与开发算法平台,并持续更新最新的因果发现算法。欢迎大家关注以及提供宝贵意见!如果有问题或者建议,请联系我们。


因果科学读书会第三季启动


由智源社区、集智俱乐部联合举办的因果科学与Causal AI读书会第三季,将主要面向两类人群:如果你从事计算机相关方向研究,希望为不同领域引入新的计算方法,通过大数据、新算法得到新成果,可以通过读书会各个领域的核心因果问题介绍和论文推荐快速入手;如果你从事其他理工科或人文社科领域研究,也可以通过所属领域的因果研究综述介绍和研讨已有工作的示例代码,在自己的研究中快速开始尝试部署结合因果的算法。读书自2021年10月24日开始,每周日上午 10:00-12:00举办,持续时间预计 2-3 个月。



详情请见:

因果+X:解决多学科领域的因果问题 | 因果科学读书会第三季启动



点击“阅读原文”,报名读书会

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/123230
 
592 次点击