causal-learn:基于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: 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-learn:基于Python的因果发现算法平台相关推荐
- CORL: 基于变量序和强化学习的因果发现算法
深度强化学习实验室 官网:http://www.neurondance.com/ 论坛:http://deeprl.neurondance.com/ 来源:诺亚实验室 华为诺亚方舟实验室.西安交通大学 ...
- 华为诺亚ICLR 2020满分论文:基于强化学习的因果发现算法
2019-12-30 13:04:12 人工智能顶会 ICLR 2020 将于明年 4 月 26 日于埃塞俄比亚首都亚的斯亚贝巴举行,不久之前,大会官方公布论文接收结果:在最终提交的 2594 篇论文 ...
- python电影推荐算法_基于Python的电影推荐算法
原标题:基于Python的电影推荐算法 第一步:收集和清洗数据 数据链接:https://grouplens.org/datasets/movielens/ 下载文件:ml-latest-small ...
- 【PLA】基于Python实现的线性代数算法库之斯密特正交化
[PLA]基于Python实现的线性代数算法库之斯密特正交化 算法包下载链接:https://download.csdn.net/download/qq_42629529/79481514 from ...
- python基于什么语言-一种基于Python语言的EDA开发平台及其使用方法与流程
本发明涉及EDA开发的技术领域,尤其是指一种基于Python语言的EDA开发平台及其使用方法. 背景技术: 目前,主流的EDA设计语言Verilog HDL能实现完整的芯片硬件逻辑电路开发,但是其代码 ...
- python语言的编程模式_一种基于Python语言的EDA开发平台及其使用方法与流程
本发明涉及EDA开发的技术领域,尤其是指一种基于Python语言的EDA开发平台及其使用方法. 背景技术: 目前,主流的EDA设计语言Verilog HDL能实现完整的芯片硬件逻辑电路开发,但是其代码 ...
- python机器视觉教材_基于Python的机器视觉实验教学平台设计
基于 Python 的机器视觉实验教学平台设计 韩志豪 ; 刘晓英 [期刊名称] <计算机测量与控制> [年 ( 卷 ), 期] 2020(028)003 [摘要] 针对机器视觉领域的学习 ...
- 基于python的可视化分析_基于Python 的数据分析与可视化平台研究
基于 Python 的数据分析与可视化平台研究 宋永生 ; 黄蓉美 ; 王军 [期刊名称] <现代信息科技> [年 ( 卷 ), 期] 2019(003)021 [摘要] 数据分析与可视化 ...
- 基于Python技术栈的算法落地踩坑
背景介绍 在一些业务场景,我们需要把离线训练好的模型以微服务部署线上,如果是简单的使用sklearn pipeline,可以保存为XML格式的pmml供Java调用, 在配置为4 core,8G内存的 ...
最新文章
- Oracle 10g 下载地址
- Scala特质可以继承Java类及限制特质的使用
- MYSQL中用正则筛选一定的数据
- 2020潮流海报设计PNG免抠素材
- php访问url的四种方式
- python 命名管道_Linux 下 Python 读取命名管道的疑惑
- B-Tree 索引和 Hash 索引的对照
- qt 右键显示设置界面 后台运行_1.1安装Qt
- Cocos2d-x特殊节点对象(瓦片地图、粒子系统、视差滚动)概述
- jquery.blockUI.2.31.js 弹出层项目介绍
- 全球顶级银行资管子公司的启示
- SQL语句练习(全)
- d3.js学习笔记-10(布局:树状图、集群图捆、捆图)
- 4.8 putsgets函数
- Java必知必会的问题
- JavaScript学习笔记03【基础——对象(RegExp、Global)】
- “感受野”的直观理解
- 【前端小实战】遮罩层动画效果
- 杭州衣服批发市场服饰外贸SOHO族:实战运营
- 流式低代码编程,拖拽节点画流程图并运行
热门文章
- java 取数组的前90位,LeetCode 面试题21. 调整数组顺序使奇数位于偶数前面
- 大规模数据库的性能改善方法之一 数据分割
- 序列内置方法详解(string/list/tuple)
- Mysql中对table的操作问题
- 正则匹配:Email 密码强度 身份证 手机号 日期 数字每4个字空一格等
- Spring学习(23)--- AOP之Introductions应用
- 视频jourk--hadoop2.2.0(第一个2.x的正式版本)框架介绍:笔记
- 如何解决…has been modified since the precompiled header… was built的问题
- 转:软件设计漫谈之三:30分钟掌握面向对象类的设计原则
- [转]在C#中使用API回调函数的方法