CN109598347A - 用于确定因果关系的方法、系统和计算机程序产品 - Google Patents

用于确定因果关系的方法、系统和计算机程序产品 Download PDF

Info

Publication number
CN109598347A
CN109598347A CN201710922464.1A CN201710922464A CN109598347A CN 109598347 A CN109598347 A CN 109598347A CN 201710922464 A CN201710922464 A CN 201710922464A CN 109598347 A CN109598347 A CN 109598347A
Authority
CN
China
Prior art keywords
matrix
constraint
path
variable
expertise
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710922464.1A
Other languages
English (en)
Inventor
冯璐
刘春辰
卫文娟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to CN201710922464.1A priority Critical patent/CN109598347A/zh
Publication of CN109598347A publication Critical patent/CN109598347A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本公开内容的实现方式涉及用于确定因果关系的方法、系统和计算机程序产品。提供了一种确定多个变量之间的因果关系的方法,包括:响应于采集到与多个变量相关联的多个样本的数据集,获取描述多个变量之间的因果关系的矩阵,多个样本中的每个样本包括对应于多个变量的数据;基于数据集以及矩阵,确定与因果关系相关联的拟合度以及专家知识约束,其中专家知识约束包括针对矩阵中的两个变量之间的直接因果关系的边约束以及针对矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项;根据确定的拟合度和专家知识约束构建描述因果关系的问题公式;以及针对构建的问题公式进行求解以获得矩阵的候选结果。进一步,提供了相应系统和计算机程序产品。

Description

用于确定因果关系的方法、系统和计算机程序产品
技术领域
本公开内容的各实现方式涉及概率模型,更具体地,涉及用于确定因果关系的方法、系统和计算机程序产品。
背景技术
概率模型是基于概率推理而获得的图形化网络模型,在此概率推理是指通过分析采集到的对应于多个变量的信息来获得这些变量之间的关联关系。贝叶斯网络(Bayesiannetwork)是为了解决不定性和不完整性问题而提出的一种概率模型,目前已经在多个领域中获得广泛应用。
贝叶斯网络可以采用有向无环图(Directed Acyclic Graph,DAG)来描述多个变量之间的因果关系,该DAG可以包括代表变量的节点以及代表变量之间的因果关系的有向边和路径。例如,由父节点指向其子节点的有向边可以表示:父节点所代表的变量与子节点所代表的变量之间具有直接因果关系。又例如,从一个节点指向另一节点的路径可以表示:两个节点所代表的变量之间具有间接因果关系。贝叶斯网络适用于表达和分析具有不确定性和概率性的事件,并且可以从采集到的对应于多个变量的不完全、不精确或不确定的信息来确定。
目前已经开发出了基于采集到的数据集以及专家知识来确定因果关系的技术方案,然而这些技术方案对于专家知识的要求过于苛刻,或者在确定因果关系的过程中可能会涉及到与专家的交互。因而,如何基于专家知识(可能并不完善),以简单有效的方式确定多个变量之间的因果关系成为一个研究热点。
发明内容
专家知识在一定程度上可以提高单纯基于数据集确定的多个变量之间的因果关系的准确性。因而,期望开发并实现一种能够以更为准确并有效的方式来基于专家知识确定因果关系的技术方案。并且期望该技术方案能够尽可能地将专家知识用于指导因果关系的学习的过程。
根据本发明的第一方面,提供了用于确定多个变量之间的因果关系的方法。方法包括:响应于采集到与多个变量相关联的多个样本的数据集,获取描述多个变量之间的因果关系的矩阵,多个样本中的每个样本包括对应于多个变量的数据;基于数据集以及矩阵,确定与因果关系相关联的拟合度以及专家知识约束,其中专家知识约束包括针对矩阵中的两个变量之间的直接因果关系的边约束以及针对矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项;根据确定的拟合度和专家知识约束构建描述因果关系的问题公式;以及针对构建的问题公式进行求解以获得矩阵的候选结果。
根据本发明的第二方面,提供了一种用于确定多个变量之间的因果关系的系统,包括:一个或者多个处理器;耦合至一个或者多个处理器中的至少一个处理器的存储器;在存储器中存储的计算机程序指令,当由至少一个处理器执行计算机程序指令时,使得系统执行用于确定多个变量之间的因果关系的方法。该方法包括:响应于采集到与多个变量相关联的多个样本的数据集,获取描述多个变量之间的因果关系的矩阵,多个样本中的每个样本包括对应于多个变量的数据;基于数据集以及矩阵,确定与因果关系相关联的拟合度以及专家知识约束,其中专家知识约束包括针对矩阵中的两个变量之间的直接因果关系的边约束以及针对矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项;根据确定的拟合度和专家知识约束构建描述因果关系的问题公式;以及针对构建的问题公式进行求解以获得矩阵的候选结果。
根据本发明的第三方面,提供了一种用于确定多个变量之间的因果关系的设备。该设备包括:获取模块,配置用于响应于采集到与多个变量相关联的多个样本的数据集,获取描述多个变量之间的因果关系的矩阵,多个样本中的每个样本包括对应于多个变量的数据;确定模块,配置用于基于数据集以及矩阵,确定与因果关系相关联的拟合度以及专家知识约束,其中专家知识约束包括针对矩阵中的两个变量之间的直接因果关系的边约束以及针对矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项;构建模块,配置用于根据确定的拟合度和专家知识约束构建描述因果关系的问题公式;以及求解模块,配置用于针对构建的问题公式进行求解以获得矩阵的候选结果。
根据本发明的第四方面,提供了一种包括计算机可读存储介质的计算机程序产品,计算机可读存储介质具有存储在其中的计算机可读程序,其中当计算机可读程序在计算设备上被执行时使得计算设备执行如上文所述的用于确定多个变量之间的因果关系的方法。
采用本发明的用于确定多个变量之间的因果关系的技术方案,可以基于专家知识来分别针对有向图中的边和路径给出相应的约束,进而可以更为准确地确定因果关系。
附图说明
结合附图并参考以下详细说明,本发明各实现方式的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本发明的若干实现方式。在附图中:
图1示意性示出了适于实现本发明实现方式的示例性计算系统的框图;
图2示意性示出了根据本公开内容的一个实现方式的用于确定多个变量之间的因果关系的框图;
图3示意性示出了根据本公开内容的一个实现方式的用于确定多个变量之间的因果关系的方法的流程图;
图4示意性示出了根据本公开内容的一个实现方式的与矩阵相关联的有向图的示例;
图5示意性示出了根据本公开内容的一个实现方式的用于确定专家知识约束的方案的框图;
图6示意性示出了根据本公开内容的一个实现方式基于边知识矩阵、路径知识矩阵来确定边知识矩阵和所述路径知识矩阵中的各个元素的框图;
图7示意性示出了根据本公开内容的一个实现方式的用于确定从一个状态到达目标状态的评分的框图;以及
图8示意性示出了根据本公开内容的一个实现方式的用于确定多个变量之间的因果关系的设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实现方式。虽然附图中显示了本公开的优选实现方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实现方式所限制。相反,提供这些实现方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了适于用来实现本公开实现方式的示例性计算系统100的框图。如图1所示,计算机系统100可以包括:CPU(中央处理单元)101、RAM(随机存取存储器)102、ROM(只读存储器)103、系统总线104、硬盘控制器105、键盘控制器106、串行接口控制器107、并行接口控制器108、显示控制器109、硬盘110、键盘111、串行外部设备112、并行外部设备113和触摸屏显示器114。在这些设备中,与系统总线104耦合的有CPU 101、RAM 102、ROM 103、硬盘控制器105、键盘控制器106、串行控制器107、并行控制器108和显示控制器109。硬盘110与硬盘控制器105耦合,键盘111与键盘控制器106耦合,串行外部设备112与串行接口控制器107耦合,并行外部设备113与并行接口控制器108耦合,以及触摸屏显示器114与显示控制器109耦合。应当理解,图1所示的结构框图仅仅是为了示例的目的,而不是对本公开范围的限制。在某些情况下,可以根据具体情况增加或减少某些设备。
所属技术领域的技术人员知道,本公开可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实现方式中,本公开还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如使用因特网服务提供者来通过因特网连接)。
下面将参照本公开实现方式的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本公开。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其他可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能使得计算机或其他可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instructionmeans)的制造品(manufacture)。
也可以把计算机程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其他可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
为了便于下文的描述,首先介绍本公开内容的具体应用环境的示例。基于贝叶斯网络的因果关系分析可以被应用于多种应用环境。例如,在用于监控特定区域中的控制系统是否存在异常的应用环境中,可以分别采集对应于多个变量(例如,该特定区域中的指定位置处的温度、湿度、……、以及控制系统是否存在异常等)的信息(例如,在不同时间点采集到的信息)。在此并不限定变量的数目p,而是在简单应用环境中变量可以是数个,而在复杂应用环境中变量的数目p可以达到数十个甚至更多。
可以将在一个时间点采集到的对应于各个变量的信息存储至一个样本(包括p个维度的向量)中,则此时在n个时间点处采集到的信息可以存储在n个样本中(在此可以将该n个样本称为采集到的数据集)。继而,可以将采集到的数据集作为输入,来确定区域中各处的温度、湿度、……、与控制系统是否存在异常之间的因果关系。
为方便下文描述,在本公开内容的上下文中将仅以用于确定控制系统是否存在异常为具体示例介绍如何确定因果关系。根据本公开内容的其他实现方式,还可以在更多应用环境中采用根据本公开内容的技术方案。例如,在确定特定商品(例如,啤酒)的销量与其他各种变量(啤酒的价格、气温、时间、国家等信息)之间的因果关系的应用环境中,可以分别采集包括销量和其他各种变量的数据集,并基于该数据集来确定啤酒销量与其他各个变量之间的因果关系。又例如,在确定汽车保险费与各种变量(例如,车辆品牌、型号、安全气囊数量、投保人性别、年龄等)之间的因果关系的应用环境中,可以分别采集包括保险费和其他各种变量的数据集,并基于该数据集来确定保险费与其他各个变量之间的因果关系。
在本公开内容的上下文中,将以贝叶斯网络作为因果关系的一个具体示例来描述本公开内容的具体细节。在此,贝叶斯网络是基于有向图定义的图形化概率网络模型。可以采用矩阵方式来表示该有向图。具体地,假设在确定控制系统是否存在异常的应用环境中,存在如下p个变量:温度、湿度、……、控制系统是否存在异常。则此时包括n个样本的数据集可以表示为如下文表1所示的形式。
表1数据集的示例
如上文表1所示,第1列“变量x1=温度”表示p个变量中的第一个变量为“温度”,即在不同时间点测量的温度值。第2列“变量x2=湿度”表示p个变量中的第二个变量为“湿度”,即在不同时间点测量的湿度值。最后一列(第p列)“变量xp=存在异常”表示p个变量中的第p个变量为“是否存在异常”,即在不同时间点该控制系统是否出现异常。可以采用如下文的矩阵B来表示上述p个变量之间的因果关系。
例如,其中矩阵B是包括p×p个元素的p阶矩阵,每个元素表示与该元素的位置相对应的两个变量之间是否存在因果关系。具体地,矩阵B中的变量βji表示p个变量中的第j个变量与第i个变量之间的因果关系。应当注意,两个变量的前后位置的不同,表示的因果关系也不同。因而βji和βij分别表示不同的因果关系。换言之,矩阵B所表示的有向图中的边的方向不同。另外,矩阵B中的对角线部分表示每个元素与自身之间的因果关系。由于特定元素与自身之间并不存在因果关系,因而该对角线部分处的元素的值应当被设置为0。
基于上文的描述可知,在贝叶斯网络中,基于采集到的数据集来确定p个变量之间的因果关系的问题,可以转换为针对描述多个元素之间的因果关系的矩阵的求解过程。目前已经提出了基于数据集和专家知识构建问题公式,来针对矩阵进行求解的技术方案。然而,在现有的技术方案中,针对专家知识的要求过为苛刻,并且很难获取满足这种苛刻要求的专家知识。
例如,在一个技术方案中,专家知识不但需要描述在两个变量之间是否存在因果关系,还需要描述两个变量之间存在该因果关系的概率的大小。可以理解,在现有的大多数应用环境中,专家知识目前还是有限的并且是不完整的。例如,在上文用于确定汽车保险费的应用环境中可能仅存在有限的专家知识:投保人的性别与年龄之间没有直接因果关系,安全气囊的数量与汽车保险费之间具有间接因果关系,等等。在现有的基于专家知识的技术方案中,上述这种有限的专家知识并不能提供所需的全部信息,因而无法用于辅助确定因果关系。
为了解决上述技术方案中的缺陷,根据本公开内容的一个实现方式,提出了一种用于确定多个变量之间的因果关系的方法。在该技术方案中,在构建问题公式时引入了专家知识约束的概念。在此专家知识约束包括两种约束:1)针对描述有向图的矩阵中的两个变量之间的直接因果关系的边约束;以及2)针对矩阵中的两个变量之间的间接因果关系的路径约束。
应当注意,根据本公开内容的一个实现方式,边约束和路径约束是基于现有的(也许并不完整的)专家知识确定的。因而,按照本公开内容,可以在不需要针对多个变量之间的完整的专家知识的情况下,通过简单有效的方式来利用专家知识辅助确定多个变量之间的因果关系。
具体地,根据本公开内容的一个实现方式,提出了一种用于确定多个变量之间的因果关系的方法。该方法包括:响应于采集到与多个变量相关联的多个样本的数据集,获取描述多个变量之间的因果关系的矩阵,多个样本中的每个样本包括对应于多个变量的数据;基于数据集以及矩阵,确定与因果关系相关联的拟合度以及专家知识约束,其中专家知识约束包括针对矩阵中的两个变量之间的直接因果关系的边约束以及针对矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项;根据确定的拟合度和专家知识约束构建描述因果关系的问题公式;以及针对构建的问题公式进行求解以获得矩阵的候选结果。
在下文中,将参见图2概述根据本公开内容的一个实现方式的步骤。图2示意性示出了根据本公开内容的一个实现方式的用于确定多个变量之间的因果关系的框图200。如图2所示,可以采集与多个变量相关联的多个样本(n个样本)的数据集210(例如,上文表1所示的数据集)。并且可以获取(如箭头252所示)描述多个变量之间的因果关系的矩阵220(例如上文所示的矩阵B),多个样本中的每个样本包括对应于多个变量的数据。此时,所构建的矩阵中的各个元素中的数值是未知的,并且需要通过下文的求解过程(如箭头262所示)来获得。
如箭头254和256所示,基于数据集210以及矩阵220,确定与因果关系相关联的拟合度230以及专家知识约束232。专家知识约束232包括针对矩阵中的两个变量之间的直接因果关系的边约束以及针对矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项。如箭头258和260所示,可以分别根据确定的拟合度230和专家知识约束232构建描述因果关系的问题公式240。最后,如箭头262所示,针对构建的问题公式240进行求解,则可以获得矩阵220的候选结果。此时,候选结果即表示矩阵220中的每个元素的具体数值。
图3示意性示出了根据本公开内容的一个实现方式的用于确定多个变量之间的因果关系的方法300的流程图。首先,在方框310处,响应于采集到与多个变量相关联的多个样本的数据集210,获取描述多个变量之间的因果关系的矩阵220,多个样本中的每个样本包括对应于多个变量的数据。
在此,数据集210是从应用环境中采集到的样本数据的集合。例如,在上文的用于确定控制系统是否出现异常的应用环境中,数据集210可以是如上文表1所示的数据集,其中每行记录表示一个样本。每个样本包括p个变量x1、x2、…、xp的测量值。此时,可以获取描述该p个变量之间的因果关系的矩阵220(例如,上文所述的矩阵B的形式)。应当注意,在此并不知晓矩阵220中的每个元素的数值,而是可以认为各个元素的数值是未知数。在后续的步骤中,可以通过构建并求解问题公式,获得矩阵的候选结果(即,矩阵中的每个元素的数值)。由于多个变量之间的因果关系是由该矩阵220来描述的,因而该矩阵的候选结果即表示因果关系。
在方框320处,基于数据集210以及矩阵220,确定与因果关系相关联的拟合度230以及与因果关系相关联的专家知识约束232,其中专家知识约束232包括针对矩阵中的两个变量之间的直接因果关系的边约束以及针对矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项。
矩阵220可以采用参见上文所述的矩阵B的形式,其中该矩阵220可以包括p个向量,每个向量例如矩阵220中的一行所示。在下文中,为了简化描述起见,仅以p=3的三维矩阵为描述因果关系的矩阵220的具体示例来介绍根据本公开内容的一个实现方式的具体细节。此时,数据集210可以表示为表2的形式。
表2数据集的示例
当p=3时,矩阵可以表示为:
此时,矩阵M中的各个向量如下所示:
第一个向量:β1=[0 β1,2 β1,3];
第二个向量:β2=[β2,1 0 β2,3];
第三个向量:β3=[β3,1 β3,2 0]。
根据本公开内容的实现方式,可以分别针对矩阵中包括的多个向量中的每个向量来确定拟合度230和专家知识约束232。在下文中将参见具体公式详细描述。在方框330处,可以基于拟合度230和专家知识约束232来构建描述因果关系的问题公式240。在方框340处,针对构建的问题公式240进行求解以获得矩阵220的候选结果。应当注意,在此候选结果包括矩阵220中的各个元素的具体数值。通过使用该候选结果,即可获得描述多个变量之间的因果关系的矩阵220,由此获得各个变量之间的关系的有向图。由于矩阵220中包括多个向量β1、β2、β3,可以分别确定针对每个向量的拟合度和专家知识约束。
根据本公开内容的一个实现方式,可以分别针对矩阵中的两个变量之间的直接因果关系和间接因果关系分别设置边约束和路径约束。在下文中,将参见图4描述直接因果关系和间接因果关系的概念。图4示意性示出了根据本公开内容的一个实现方式的与矩阵相关联的有向图400的示例。具体地,该有向图400例如与上文所述的矩阵B关联。有向图400中的节点410、420、430、440、…、450分别表示变量x1、x2、x3、x4、…、xp。有向边460、462、464、466、468、470分别表示在该有向边两端的两个节点所代表的变量之间具有因果关系。
例如,从节点410指向节点450的有向边460表示:变量x1对于变量xp具有直接因果关系,换言之,变量x1是变量xp的直接原因。在有向图400中,路径包括一系列的边,并且表示路径两端的两个节点之间具有间接因果关系。具体地,从节点410到节点450之间存在两个路径,其中第一路径包括边470、468和466,第二路径包括边462和464。在此,两个路径表示在节点410所代表的变量x1与节点450所代表的变量xp之间存在间接因果关系。在此可以将路径中所包括的边的数量称为路径长度。例如,第一路径的长度为3,而第二路径的长度为2。
在下文中,将参见具体示例描述如何构建问题公式。根据本公开内容的一个实现方式,问题公式可以包括与因果关系相关联的拟合度和专家知识约束。由于矩阵220中包括多个向量β1、β2、β3,可以分别确定针对每个向量的拟合度和专家知识约束。根据本公开内容的一个实现方式,问题公式例如可以采用如下公式1的方式构建:
在公式1中,βj表示矩阵220中的多个向量的当前向量,Fitnessj和Constraintj分别表示针对当前向量的βj的拟合度和专家知识约束。在此实现方式中,Fitnessj和Constraintj分别关联于当前向量βj。可以针对公式1进行求解,来将获得使得问题公式获得最小值的取值,并将该取值作为当前向量βj的候选结果。以此方式,通过针对矩阵220中的多个向量中的每个向量进行求解,即可获得矩阵220中的各个元素的数值。
由于针对多个向量中的每个向量的操作是类似的,在下文中将以一个向量为具体示例描述根据本公开内容的一个实现方式的细节。具体地,可以针对矩阵220中的多个向量中的当前向量βj,来分别确定针对当前向量βj的拟合度和专家知识约束。
对于矩阵中的各个向量而言,该拟合度表示数据集中的与当前向量βj相对应的当前列和其他列之间的拟合关系。根据本公开内容的一个实现方式,可以基于二范数运算确定针对当前向量的βj的拟合度Fitnessj。具体地,可以基于如下公式1来确定针对当前向量的βj的拟合度Fitnessj
在公式1中,xj表示数据集210中的多个样本中的与当前向量βj相关联的部分,x-j表示多个样本中的与当前向量βj以外的向量相关联的部分,βj表示当前向量,表示二范数运算。例如,当j=1时,xj表示表1所示数据集中的第一列“变量x1=温度”中的数值T1、T2、…、Tn;而x-j表示表1所示数据集中的第一列以外的其他列中的数值(例如,第二列“变量x2=湿度”中的M1、M2、…、Mn,以及第p列“变量xp=存在异常”中的E1、E2、…、En)。
在公式2中,表示与当前向量的βj相关联的拟合度,在此该拟合度表示矩阵中的当前列和其他列之间的拟合关系。该拟合度采用二范数形式表示,该拟合度可以表示xj与x-jβj之间的拟合程度。如果的值越小,则表示两者之间的拟合程度越高;反之,则表示两者的拟合程度越低。
在下文中,将参见具体示例描述如何确定边约束和路径约束。根据本公开内容的一个实现方式,可以基于专家知识确定多个变量中的两个变量之间的直接因果关系的状态的边约束矩阵;以及基于该边约束矩阵和矩阵确定边约束。
在此实现方式中,专家知识可能会包括多方面的因素,例如,在确定控制系统是否出现异常的应用环境中,专家知识可以指示:变量x1(温度)与变量xp(存在异常)之间存在直接因果关系;变量x2(湿度)与变量xp(存在异常)之间存在间接因果关系。此时可以基于上述的直接和间接因果关系来确定针对矩阵所表示的有向图中的边约束。
相对于现有技术中的基于专家知识来辅助确定因果关系的技术方案,在本公开的上下文中,并不需要精确的专家知识。例如,专家知识仅需要概括地指示两个变量之间是否存在因果关系即可,并不需要针对存在因果关系给出更多描述(例如,并不需要具体的概率)。此外,在已经基于专家知识确定了边约束和路径约束之后,并不需要其他额外的交互。因而,根据本公开内容的一个实现方式,可以降低对于专家知识的完善性的要求,并且可以在无需与专家进行额外交互的情况下以简单有效的方式辅助确定因果关系。
图5示意性示出了根据本公开内容的一个实现方式的确定专家知识约束的方案的框图500。如图5所示,基于专家知识510(例如,描述哪些变量之间具有直接因果关系,哪些变量之间具有间接因果关系),可以分别确定边知识矩阵520(例如,表示为矩阵K)和路径知识矩阵522(例如,表示为矩阵A)。接着,基于该边知识矩阵520和路径知识矩阵522,可以确定边约束矩阵530(例如,表示为矩阵)以及路径约束矩阵532(例如,表示为矩阵)。进一步,可以基于该边约束矩阵530和路径约束矩阵532来确定专家知识约束232。
在下文中,将基于不同的示例描述如何确定图5中所涉及的各个矩阵。根据本公开内容的一个实现方式,为了将专家知识引入到约束中,可以分别从专家知识中确定有关有向图中的边的知识。具体地,可以基于专家知识来确定描述多个变量中的两个变量之间的直接因果关系的状态的边知识矩阵K。根据本公开内容的一个实现方式,可以基于如下公式3来确定边知识矩阵K中的每个元素kji
在公式3中,如果专家知识指示与元素相关联的第一变量(例如,变量xj)和第二变量(例如,变量xi)之间具有直接因果关系,将元素kji设置为满足第一条件(例如,1);响应于专家知识指示第一变量和第二变量之间不具有直接因果关系,将元素kji设置为满足第二条件;以及响应于专家知识不具有第一变量和第二变量之间的直接因果关系的知识,将元素kji设置为满足第三条件(例如,-1)。
根据本公开内容的一个实现方式,可以基于专家知识,确定描述多个变量中的两个变量之间的间接因果关系的状态的路径知识矩阵。具体地,可以基于如下公式4来确定边知识矩阵A中的每个元素aji
在公式4中,如果专家知识指示与元素相关联的第一变量(例如,变量xj)和第二变量(例如,变量xi)之间具有间接因果关系,将元素设置为满足第一条件(例如,1);如果专家知识指示第一变量和第二变量之间不具有间接因果关系,将元素设置为满足第二条件;以及如果响应于专家知识不具有第一变量和第二变量之间的间接因果关系的知识,将元素设置为满足第三条件(例如,-1)。
应当注意,尽管在上文的公式中在不同的条件下分别将元素kji和aji设置为1、0、-1,在其他具体实现中,还可以将元素kji设置为满足其他第一、第二、第三条件,只要可以区分三种不同的条件即可。
在上文中,已经详细描述了如何基于专家知识确定边知识矩阵K和路径知识矩阵A。随后,可以基于边知识矩阵K和路径知识矩阵A确定边约束矩阵。在下文中,将参见图6描述如何基于边知识矩阵K和路径知识矩阵A来确定边知识矩阵和路径知识矩阵中的各个元素。
图6示意性示出了根据本公开内容的一个实现方式基于边知识矩阵、路径知识矩阵来确定边知识矩阵和所述路径知识矩阵中的各个元素的框图600。如图6所示,框图600中的行610中示出了边知识矩阵K中的各个元素的可能的取值(例如,0、1、-1),而列620中示出了路径知识矩阵A中的各个元素的可能的取值(例如,0、1、-1)。根据图6所示的关系,可以基于如下方法来确定边约束矩阵中的元素。
如框图600中的第二列(kji=0)所示,边知识矩阵K中与元素相对应的元素kji满足第二条件(等于0),将边约束矩阵中的元素设置为较大值。将会理解,尽管在图6中示出了该较大值的具体示例为无穷大,在其他实现方式中还可以将设置为其他数值,只要该数值相对于边约束而言给出较大的惩罚即可。
如框图600中的第三列(kji=1)所示,如果边知识矩阵K中与元素相对应的元素kji为满足第一条件(例如,等于1),则将边约束矩阵中的元素设置为零。
如框图600中的第四列(kji=-1)所示,如果边知识矩阵中与元素相对应的元素满足第三条件,将边约束矩阵中的元素设置为与矩阵B中的相应元素βji相关联。
根据本公开内容的一个实现方式,可以基于如下公式5来确定边约束矩阵中(j,i)位置处的元素
在公式5中,是基于所述数据集计算的预定义的超参数,ols表示最小二乘运算,||表示绝对值运算,γ表示预定参数。在此实现方式中,可以基于具体应用环境的要求来确定γ的数值。本领域技术人员可以基于现有技术中的相关定义来确定的数值,根据本公开内容的实现方式中将不再赘述。
根据本公开内容的一个实现方式,根据图6所示的关系,可以基于如下方法来确定路径约束矩阵中的元素。如框图600中的第二行(aji=0)所示,响应于路径知识矩阵A中与元素相对应的元素aji满足第二条件(例如,等于0),将路径约束矩阵中的元素设置为较大值。将会理解,尽管在图6中示出了该较大值的具体示例为无穷大,在其他实现方式中还可以将设置为其他数值,只要该数值相对于路径约束而言给出较大的惩罚即可。
如框图600中的第三行(aji=1)所示,如果路径知识矩阵A中与元素相对应的元素aji满足第一条件(例如,1),将路径约束矩阵中的元素设置为零。
如框图600中的第四行(aji=-1)所示,如果路径知识矩阵A中与元素相对应的元素aji满足第三条件(例如,-1),将路径约束矩阵中的元素设置为1。
应当注意,在框图600中还示出了符号“N.A.”,该符号表示不可能存在这样的情况。例如,参见框图600中的第二行(aji=-1)与第三列(kji=1)的交点,该交点表示在专家知识中不具有与两个变量xj和xi之间的边关系的知识,然而专家知识却指示两个变量xj和xi之间具有路径,这与构建边知识矩阵和路径知识矩阵时的定义是矛盾的,因而采用“N.A.”表示不可能存在这样的情况。
根据本公开内容的一个实现方式,为了确定针对矩阵所表示的有向图中的路径的约束,可以首先基于矩阵确定描述多个变量中的两个变量之间的路径的路径矩阵;继而,基于路径知识矩阵、路径矩阵和矩阵确定路径约束。
在此实现方式中,在确定针对矩阵所表示的有向图中的路径的约束期间,将会涉及基于有向图中的多个边来生成路径的过程。因而,此时可以基于专家知识确定多个变量中的两个变量之间的间接因果关系的状态的路径约束矩阵继而,基于路径约束矩阵和矩阵确定路径约束。
具体地,矩阵中的元素βji表示矩阵中(j,i)位置处的元素,βji即表示多个变量中的变量xj与xi之间的直接因果关系。为了获取多个变量中的两个变量之间的间接因果关系,还可以将矩阵进行连乘运算,以便分别获得路径长度大于1的两个变量之间的间接因果关系。
在下文中将分别描述如何确定与不同长度的路径相关联的路径矩阵。根据本公开内容的一个实现方式,可以逐步确定长度K=2、3、…、p-1的路径。具体地,可以确定关联于长度为K的路径的K长度路径矩阵,其中K长度路径矩阵表示关联于矩阵的有向图中的两个节点之间的长度为K的路径的状态,其中K≤p-1,p表示多个变量的个数;以及基于K长度路径矩阵确定路径矩阵。
假设K=2,则此时可以基于将如上文的矩阵B进行连乘,以确定“2长度路径矩阵”。具体地,可以2长度路径矩阵基于B×B来确定。根据本公开内容的一个实现方式,可以基于矩阵B的K次连乘来确定与路径长度K相关联的K长度路径矩阵。为方便描述起见,可以将K长度路径矩阵表示为MK,可以基于如下公式6来确定K长度路径矩阵表示为MK
在公式6中,表示K次连乘,abs(B)表示矩阵B的绝对值。
根据本公开内容的一个实现方式,在已经获得了K长度路径矩阵MK的情况下,可以将所获得的各个K长度路径矩阵MK进求和,以便获得描述有向图中的两个节点之间的各个长度的路径的路径矩阵P。具体地,可以基于如下公式7来确定路径矩阵P。
其中矩阵P中的位置(j,i)处的元素pji可以基于如下公式8计算:
根据本公开内容的一个实现方式,可以基于如下公式9来构建关联于当前向量βj的问题公式:
在公式9中,βj表示当前向量,表示边约束矩阵中与当前向量相关联的部分,表示与当前向量βj相关联的拟合度,xj表示所述多个样本中的与所述当前向量βj相关联的部分,x-j表示所述多个样本中的与所述当前向量βj以外的向量相关联的部分,表示约束条件,其中为预定参数。
此时,专家知识约束包括与矩阵中的当前向量βj相关联的边约束向量和路径约束向量,其中:所述边约束向量为以及所述路径约束向量为
根据本公开内容的上下文,由于期望以有向无环图来描述确定的因果关系,因而还可以设置约束条件,以确保求解所得的矩阵中不存在环路。可以通过构建因果序列来逐个考虑多个变量中的变量,因而为了达到目标状态,可以形成不同的因果序列。
图7示意性示出了根据本公开内容的一个实现方式的用于确定从一个状态到达目标状态的评分的框图700。如图7所示,基于因果推导的基本原理可知,假设当前的因果序列为Qs,并且与该因果序列Qs相关联的状态如节点720所示。则此时从与当前因果序列Qs相关联的状态到达目标状态(如,节点730所示,该状态关联于包括全部变量的因果序列)的得分可以按照如下公式计算:
f(Qs)=g(Qs)+h(Qs) 公式10
在公式10中,f(Qs)表示从与当前因果序列Qs相关联的状态到达目标状态的得分,g(Qs)表示从初始状态(如节点710所示的空集)到达与当前因果序列Qs相关联的状态(如节点720所示)的得分,h(Qs)表示从与当前因果序列Qs相关联的状态到达目标状态的预测得分。
基于图7所示,可以基于公式11来构建目标公式:
在公式11中,表示全集中的变量xj之前的变量的集合,Supp(βj)表示当前向量βj的支撑,Qs表示与多个元素中的至少一部分元素相关联的因果序列,xj表示多个样本中的与当前向量βj相关联的部分,x-j表示多个样本中的与当前向量βj以外的向量相关联的部分,表示二范数运算,表示边约束矩阵中(j,i)位置处的元素,βji表示矩阵中(j,i)位置处的元素,表示路径约束矩阵中(j,i)位置处的元素,pvi表示路径矩阵中(j,i)位置处的元素,βjv表示矩阵中(j,v)位置处的元素,||表示绝对值运算。
进一步,上述公式中分别包括关联于边的约束和关联于路径的约束,可以将这两种约束设置为不同的值。此时,通过将公式11中与路径相关联的约束设置为不同的值,可以获得如下公式12。
在此公式12中,表示Qs中的在变量xi之后的节点,表示关联于边的约束,而表示关联于路径的约束。
根据本公开内容的一个实现方式,可以基于上文的公式12进行求解,以获得针对矩阵的各个向量的候选结果。应当注意,在此采用现有技术中已知的或者将在未来开发的求解算法,来确定矩阵中的各个元素的值。在公式12中,已经引入了基于专家知识的边约束和路径约束,因而可以利用已有的专家知识来辅助确定多个变量之间的因果关系。应当注意,尽管在上文的公式12中给出的公式中包括边约束和路径约束两者。根据本公开内容的一个实现方式,所构建的问题公式中可以仅包括边约束,仅包括路径约束,或者包括边约束和路径约束两者。
图8示意性示出了根据本公开内容的一个实现方式的用于确定多个变量之间的因果关系的设备800的框图。根据本公开内容的一个实现方式,提供了一种用于确定多个变量之间的因果关系的设备800。该设备包括:获取模块810,配置用于响应于采集到与多个变量相关联的多个样本的数据集,获取描述多个变量之间的因果关系的矩阵,多个样本中的每个样本包括对应于多个变量的数据;确定模块820,配置用于基于数据集以及矩阵,确定与因果关系相关联的拟合度以及专家知识约束,其中专家知识约束包括针对矩阵中的两个变量之间的直接因果关系的边约束以及针对矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项;构建模块830,配置用于根据确定的拟合度和专家知识约束构建描述因果关系的问题公式;以及求解模块840,配置用于针对构建的问题公式进行求解以获得矩阵的候选结果。
根据本公开内容的一个实现方式,确定模块820进一步配置用于基于专家知识确定多个变量中的两个变量之间的直接因果关系的状态的边约束矩阵;以及基于边约束矩阵和矩阵确定边约束。
根据本公开内容的一个实现方式,确定模块820进一步配置用于基于专家知识确定多个变量中的两个变量之间的间接因果关系的状态的路径约束矩阵;以及基于路径约束矩阵和矩阵确定路径约束。
根据本公开内容的一个实现方式,确定模块820进一步配置用于基于矩阵,确定描述多个变量中的两个变量之间的路径的路径矩阵;以及基于路径知识矩阵、路径矩阵和矩阵确定路径约束。
根据本公开内容的一个实现方式,确定模块820进一步配置用于确定关联于长度为K的路径的K长度路径矩阵,其中K长度路径矩阵表示关联于矩阵的有向图中的两个节点之间的长度为K的路径的状态,其中K≤p-1,p表示多个变量的个数;以及基于K长度路径矩阵确定路径矩阵。
根据本公开内容的一个实现方式,确定模块820进一步配置用于基于专家知识确定描述多个变量中的两个变量之间的直接因果关系的状态的边知识矩阵;以及基于边知识矩阵确定边约束矩阵。
根据本公开内容的一个实现方式,确定模块820进一步配置用于针对边知识矩阵中的元素,响应于专家知识指示与元素相关联的第一变量和第二变量之间具有直接因果关系,将元素设置为满足第一条件;响应于专家知识指示第一变量和第二变量之间不具有直接因果关系,将元素设置为满足第二条件;以及响应于专家知识不具有第一变量和第二变量之间的直接因果关系的知识,将元素设置为满足第三条件。
根据本公开内容的一个实现方式,确定模块820进一步配置用于针对路径知识矩阵中的元素,响应于专家知识指示与元素相关联的第一变量和第二变量之间具有间接因果关系,将元素设置为满足第一条件;响应于专家知识指示第一变量和第二变量之间不具有间接因果关系,将元素设置为满足第二条件;以及响应于专家知识不具有第一变量和第二变量之间的间接因果关系的知识,将元素设置为满足第三条件。
根据本公开内容的一个实现方式,确定模块820进一步配置用于针对边约束矩阵中的元素,响应于边知识矩阵中与元素相对应的元素等于0,将边约束矩阵中的元素设置为较大值;响应于边知识矩阵中与元素相对应的元素满足第一条件,将边约束矩阵中的元素设置为零;以及响应于边知识矩阵中与元素相对应的元素满足第三条件,将边约束矩阵中的元素设置为与矩阵中的相应元素相关联。
根据本公开内容的一个实现方式,确定模块820进一步配置用于将边约束矩阵中(j,i)位置处的元素设置为其中是基于所述数据集计算的预定义的超参数,ols表示最小二乘运算,||表示绝对值运算,γ表示预定参数。
根据本公开内容的一个实现方式,确定模块820进一步配置用于基于专家知识确定描述多个变量中的两个变量之间的间接因果关系的状态的路径知识矩阵;以及基于路径知识矩阵确定路径约束矩阵。
根据本公开内容的一个实现方式,确定模块820进一步配置用于针对路径约束矩阵中的元素,响应于路径知识矩阵中与元素相对应的元素等于0,将路径约束矩阵中的元素设置为较大值;响应于路径知识矩阵中与元素相对应的元素满足第一条件,将路径约束矩阵中的元素设置为零;以及响应于路径知识矩阵中与元素相对应的元素满足第三条件,将路径约束矩阵中的元素设置为1。
根据本公开内容的一个实现方式,边约束向量为以及路径约束向量为
根据本公开内容的一个实现方式,构建模块830进一步配置用于针对当前向量βj构建问题公式向量:
其中Supp(βj)表示当前向量βj的支撑,Qs表示与多个元素中的至少一部分元素相关联的因果序列,xj表示多个样本中的与当前向量βj相关联的部分,x-j表示多个样本中的与当前向量βj以外的向量相关联的部分,表示二范数运算,表示边约束矩阵中(j,i)位置处的元素,βji表示矩阵中(j,i)位置处的元素,表示路径约束矩阵中(j,i)位置处的元素,pvi表示路径矩阵中(j,i)位置处的元素,βjv表示矩阵中(j,v)位置处的元素,||表示绝对值运算,表示Qs中的在节点i之后的节点。
根据本公开内容的一个实现方式,针对问题公式向量进行求解以获得针对矩阵的当前向量βj的候选结果。
根据本公开内容的一个实现方式,提供了一种用于确定多个变量之间的因果关系的系统,包括:一个或者多个处理器;耦合至一个或者多个处理器中的至少一个处理器的存储器;在存储器中存储的计算机程序指令,当由至少一个处理器执行计算机程序指令时,使得系统执行一种用于确定多个变量之间的因果关系的方法。该方法包括:响应于采集到与多个变量相关联的多个样本的数据集,获取描述多个变量之间的因果关系的矩阵,多个样本中的每个样本包括对应于多个变量的数据;基于数据集以及矩阵,确定与因果关系相关联的拟合度以及专家知识约束,其中专家知识约束包括针对矩阵中的两个变量之间的直接因果关系的边约束以及针对矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项;根据确定的拟合度和专家知识约束构建描述因果关系的问题公式;以及针对构建的问题公式进行求解以获得矩阵的候选结果。
根据本公开内容的一个实现方式,确定专家知识约束包括确定边约束,包括:基于专家知识确定多个变量中的两个变量之间的直接因果关系的状态的边约束矩阵;以及基于边约束矩阵和矩阵确定边约束。
根据本公开内容的一个实现方式,确定专家知识约束包括确定路径约束,包括:基于专家知识确定多个变量中的两个变量之间的间接因果关系的状态的路径约束矩阵;以及基于路径约束矩阵和矩阵确定路径约束。
根据本公开内容的一个实现方式,基于路径约束矩阵和矩阵确定路径约束包括:基于矩阵,确定描述多个变量中的两个变量之间的路径的路径矩阵;以及基于路径知识矩阵、路径矩阵和矩阵确定路径约束。
根据本公开内容的一个实现方式,确定路径矩阵包括:确定关联于长度为K的路径的K长度路径矩阵,其中K长度路径矩阵表示关联于矩阵的有向图中的两个节点之间的长度为K的路径的状态,其中K≤p-1,p表示多个变量的个数;以及基于K长度路径矩阵确定路径矩阵。
根据本公开内容的一个实现方式,确定边约束矩阵包括:基于专家知识确定描述多个变量中的两个变量之间的直接因果关系的状态的边知识矩阵;以及基于边知识矩阵确定边约束矩阵。
根据本公开内容的一个实现方式,确定边知识矩阵包括:针对边知识矩阵中的元素,响应于专家知识指示与元素相关联的第一变量和第二变量之间具有直接因果关系,将元素设置满足第一条件;响应于专家知识指示第一变量和第二变量之间不具有直接因果关系,将元素设置为满足第二条件;以及响应于专家知识不具有第一变量和第二变量之间的直接因果关系的知识,将元素设置为满足第三条件。
根据本公开内容的一个实现方式,确定路径知识矩阵包括:针对路径知识矩阵中的元素,响应于专家知识指示与元素相关联的第一变量和第二变量之间具有间接因果关系,将元素设置为满足第一条件;响应于专家知识指示第一变量和第二变量之间不具有间接因果关系,将元素设置为满足第二条件;以及响应于专家知识不具有第一变量和第二变量之间的间接因果关系的知识,将元素设置为满足第三条件。
根据本公开内容的一个实现方式,基于边知识矩阵确定边约束矩阵包括:针对边约束矩阵中的元素,响应于边知识矩阵中与元素相对应的元素等于0,将边约束矩阵中的元素设置为较大值;响应于边知识矩阵中与元素相对应的元素满足第一条件,将边约束矩阵中的元素设置为零;以及响应于边知识矩阵中与元素相对应的元素满足第三条件,将边约束矩阵中的元素设置为与矩阵中的相应元素相关联。
根据本公开内容的一个实现方式,将边约束矩阵中的元素设置为与矩阵中的相应元素相关联包括:将边约束矩阵中(j,i)位置处的元素设置为其中是基于所述数据集计算的预定义的超参数,ols表示最小二乘运算,||表示绝对值运算,γ表示预定参数。
根据本公开内容的一个实现方式,确定路径约束矩阵包括:基于专家知识确定描述多个变量中的两个变量之间的间接因果关系的状态的路径知识矩阵;以及基于路径知识矩阵确定路径约束矩阵。
根据本公开内容的一个实现方式,基于路径知识矩阵确定路径约束矩阵包括:针对路径约束矩阵中的元素,响应于路径知识矩阵中与元素相对应的元素等于0,将路径约束矩阵中的元素设置为较大值;响应于路径知识矩阵中与元素相对应的元素满足第一条件,将路径约束矩阵中的元素设置为满足第三条件;以及响应于路径知识矩阵中与元素相对应的元素满足第三条件,将路径约束矩阵中的元素设置为1。
根据本公开内容的一个实现方式,专家知识约束包括与矩阵中的当前向量βj相关联的边约束向量和路径约束向量,其中:所述边约束向量为以及所述路径约束向量为
根据本公开内容的一个实现方式,构建描述因果关系的问题公式包括:针对当前向量βj构建问题公式向量:其中Supp(βj)表示当前向量βj的支撑,Qs表示与多个元素中的至少一部分元素相关联的因果序列,xj表示多个样本中的与当前向量βj相关联的部分,x-j表示多个样本中的与当前向量βj以外的向量相关联的部分,表示二范数运算,表示边约束矩阵中(j,i)位置处的元素,βji表示矩阵中(j,i)位置处的元素,表示路径约束矩阵中(j,i)位置处的元素,pvi表示路径矩阵中(j,i)位置处的元素,βjv表示矩阵中(j,v)位置处的元素,||表示绝对值运算。
根据本公开内容的一个实现方式,所述针对构建的所述问题公式进行求解以获得所述矩阵的候选结果包括:针对所述问题公式向量进行求解以获得针对所述矩阵的所述当前向量βj的候选结果。
根据本公开内容的一个实现方式,提供了一种计算机程序产品,所述计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,所述机器可执行指令在被执行时使机器执行根据上文所述的方法的步骤。
前面已经参考附图描述了实现本发明的方法的各个实现方式。本领域技术人员可以理解的是,上述方法既可以以软件方式实现,也可以以硬件方式实现,或者通过软件与硬件相结合的方式实现。并且,本领域技术人员可以理解,通过以软件、硬件或者软硬件相结合的方式实现上述方法中的各个步骤,可以提供一种基于相同发明构思的一种设备。即使该设备在硬件结构上与通用处理设备相同,由于其中所包含的软件的作用,使得该设备表现出区别于通用处理设备的特性,从而形成本发明的各个实现方式的设备。本发明中所述设备包括若干装置或模块,所述装置或模块被配置为执行相应步骤。本领域的所述技术人员通过阅读本说明书可以理解如何编写程序实现所述装置或模块执行的动作。由于所述设备与方法基于相同的发明构思,因此其中相同或相应的实现细节同样适用于与上述方法对应的装置或模块,由于其在上文中已经进行了详细和完整的描述,因此在下文中可能不再进行赘述。
附图中的流程图和框图显示了根据本公开的多个实现方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实现方式,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实现方式。在不偏离所说明的各实现方式的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现方式的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实现方式。

Claims (31)

1.一种用于确定多个变量之间的因果关系的方法,包括:
响应于采集到与所述多个变量相关联的多个样本的数据集,获取描述所述多个变量之间的所述因果关系的矩阵,所述多个样本中的每个样本包括对应于所述多个变量的数据;
基于所述数据集以及所述矩阵,确定与所述因果关系相关联的拟合度以及专家知识约束,其中所述专家知识约束包括针对所述矩阵中的两个变量之间的直接因果关系的边约束以及针对所述矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项;
根据确定的所述拟合度和所述专家知识约束构建描述所述因果关系的问题公式;以及
针对构建的所述问题公式进行求解以获得所述矩阵的候选结果。
2.根据权利要求1所述的方法,其中所述确定所述专家知识约束包括确定所述边约束,包括:
基于专家知识确定所述多个变量中的两个变量之间的直接因果关系的状态的边约束矩阵;以及
基于所述边约束矩阵和所述矩阵确定所述边约束。
3.根据权利要求2所述的方法,其中所述确定所述专家知识约束包括确定所述路径约束,包括:
基于所述专家知识确定所述多个变量中的两个变量之间的间接因果关系的状态的路径约束矩阵;以及
基于所述路径约束矩阵和所述矩阵确定所述路径约束。
4.根据权利要求3所述的方法,其中所述基于所述路径约束矩阵和所述矩阵确定所述路径约束包括:
基于所述矩阵,确定描述所述多个变量中的两个变量之间的路径的路径矩阵;以及
基于所述路径知识矩阵、所述路径矩阵和所述矩阵确定所述路径约束。
5.根据权利要求4所述的方法,其中所述确定所述路径矩阵包括:
确定关联于长度为K的路径的K长度路径矩阵,其中所述K长度路径矩阵表示关联于所述矩阵的有向图中的两个节点之间的长度为K的路径的状态,其中K≤p-1,p表示所述多个变量的个数;以及
基于所述K长度路径矩阵确定所述路径矩阵。
6.根据权利要求4所述的方法,其中确定所述边约束矩阵包括:
基于所述专家知识确定描述所述多个变量中的两个变量之间的直接因果关系的状态的边知识矩阵;以及
基于所述边知识矩阵确定所述边约束矩阵。
7.根据权利要求6所述的方法,其中所述确定所述边知识矩阵包括:针对所述边知识矩阵中的元素,
响应于所述专家知识指示与所述元素相关联的第一变量和第二变量之间具有直接因果关系,将所述元素设置为满足第一条件;
响应于所述专家知识指示所述第一变量和所述第二变量之间不具有直接因果关系,将所述元素设置为满足第二条件;以及
响应于所述专家知识不具有所述第一变量和所述第二变量之间的直接因果关系的知识,将所述元素设置为满足第三条件。
8.根据权利要求6所述的方法,其中所述确定所述路径知识矩阵包括:针对所述路径知识矩阵中的元素,
响应于所述专家知识指示与所述元素相关联的第一变量和第二变量之间具有间接因果关系,将所述元素设置为满足第一条件;
响应于所述专家知识指示所述第一变量和所述第二变量之间不具有间接因果关系,将所述元素设置为满足第二条件;以及
响应于所述专家知识不具有所述第一变量和所述第二变量之间的间接因果关系的知识,将所述元素设置为满足第三条件。
9.根据权利要求6所述的方法,其中所述基于所述边知识矩阵确定所述边约束矩阵包括:针对所述边约束矩阵中的元素,
响应于所述边知识矩阵中与所述元素相对应的元素等于0,将所述边约束矩阵中的所述元素设置为较大值;
响应于所述边知识矩阵中与所述元素相对应的元素满足第一条件,将所述边约束矩阵中的所述元素设置为零;以及
响应于所述边知识矩阵中与所述元素相对应的元素满足第三条件,将所述边约束矩阵中的所述元素设置为与预定义的超参数相关联。
10.根据权利要求9所述的方法,其中将所述边约束矩阵中的所述元素设置为与预定义的超参数相关联包括:
将所述边约束矩阵中(j,i)位置处的元素设置为其中是基于所述数据集计算的预定义的超参数,ols表示最小二乘运算,||表示绝对值运算,γ表示预定参数。
11.根据权利要求6所述的方法,其中确定所述路径约束矩阵包括:
基于所述专家知识确定描述所述多个变量中的两个变量之间的间接因果关系的状态的路径知识矩阵;以及
基于所述路径知识矩阵确定所述路径约束矩阵。
12.根据权利要求11所述的方法,其中所述基于所述路径知识矩阵确定所述路径约束矩阵包括:针对所述路径约束矩阵中的元素,
响应于所述路径知识矩阵中与所述元素相对应的元素等于0,将所述路径约束矩阵中的所述元素设置为较大值;
响应于所述路径知识矩阵中与所述元素相对应的元素满足第一条件,将所述路径约束矩阵中的所述元素设置为零;以及
响应于所述路径知识矩阵中与所述元素相对应的元素满足第三条件,将所述路径约束矩阵中的所述元素设置为1。
13.根据权利要求12所述的方法,其中所述专家知识约束包括与所述矩阵中的当前向量βj相关联的边约束向量和路径约束向量,其中:
所述边约束向量为以及所述路径约束向量为
14.根据权利要求13所述的方法,其中构建描述所述因果关系的所述问题公式包括:针对所述当前向量βj构建问题公式向量:
其中Supp(βj)表示所述当前向量βj的支撑,Qs表示与所述多个元素中的至少一部分元素相关联的因果序列,xj表示多个样本中的与当前向量βj相关联的部分,x-j表示多个样本中的与当前向量βj以外的向量相关联的部分,表示二范数运算,表示所述边约束矩阵中(j,i)位置处的元素,βji表示所述矩阵中(j,i)位置处的元素,表示所述路径约束矩阵中(j,i)位置处的元素,pvi表示所述路径矩阵中(j,i)位置处的元素,βjv表示所述矩阵中(j,v)位置处的元素,||表示绝对值运算,表示Qs中的在节点i之后的节点。
15.根据权利要求14所述的方法,其中所述针对构建的所述问题公式进行求解以获得所述矩阵的候选结果包括:
针对所述问题公式向量进行求解以获得针对所述矩阵的所述当前向量βj的候选结果。
16.一种用于确定多个变量之间的因果关系的系统,包括:
一个或者多个处理器;
耦合至所述一个或者多个处理器中的至少一个处理器的存储器;
在所述存储器中存储的计算机程序指令,当由所述至少一个处理器执行所述计算机程序指令时,使得所述系统执行一种用于确定多个变量之间的因果关系的方法,所述方法包括:
响应于采集到与所述多个变量相关联的多个样本的数据集,获取描述所述多个变量之间的所述因果关系的矩阵,所述多个样本中的每个样本包括对应于所述多个变量的数据;
基于所述数据集以及所述矩阵,确定与所述因果关系相关联的拟合度以及专家知识约束,其中所述专家知识约束包括针对所述矩阵中的两个变量之间的直接因果关系的边约束以及针对所述矩阵中的两个变量之间的间接因果关系的路径约束中的至少任一项;
根据确定的所述拟合度和所述专家知识约束构建描述所述因果关系的问题公式;以及
针对构建的所述问题公式进行求解以获得所述矩阵的候选结果。
17.根据权利要求16所述的系统,其中所述确定所述专家知识约束包括确定所述边约束,包括:
基于专家知识确定所述多个变量中的两个变量之间的直接因果关系的状态的边约束矩阵;以及
基于所述边约束矩阵和所述矩阵确定所述边约束。
18.根据权利要求17所述的系统,其中所述确定所述专家知识约束包括确定所述路径约束,包括:
基于所述专家知识确定所述多个变量中的两个变量之间的间接因果关系的状态的路径约束矩阵;以及
基于所述路径约束矩阵和所述矩阵确定所述路径约束。
19.根据权利要求18所述的系统,其中所述基于所述路径约束矩阵和所述矩阵确定所述路径约束包括:
基于所述矩阵,确定描述所述多个变量中的两个变量之间的路径的路径矩阵;以及
基于所述路径知识矩阵、所述路径矩阵和所述矩阵确定所述路径约束。
20.根据权利要求19所述的系统,其中所述确定所述路径矩阵包括:
确定关联于长度为K的路径的K长度路径矩阵,其中所述K长度路径矩阵表示关联于所述矩阵的有向图中的两个节点之间的长度为K的路径的状态,其中K≤p-1,p表示所述多个变量的个数;以及
基于所述K长度路径矩阵确定所述路径矩阵。
21.根据权利要求19所述的系统,其中确定所述边约束矩阵包括:
基于所述专家知识确定描述所述多个变量中的两个变量之间的直接因果关系的状态的边知识矩阵;以及
基于所述边知识矩阵确定所述边约束矩阵。
22.根据权利要求21所述的系统,其中所述确定所述边知识矩阵包括:针对所述边知识矩阵中的元素,
响应于所述专家知识指示与所述元素相关联的第一变量和第二变量之间具有直接因果关系,将所述元素设置为满足第一条件;
响应于所述专家知识指示所述第一变量和所述第二变量之间不具有直接因果关系,将所述元素设置为满足第二条件;以及
响应于所述专家知识不具有所述第一变量和所述第二变量之间的直接因果关系的知识,将所述元素设置为满足第三条件。
23.根据权利要求21所述的系统,其中所述确定所述路径知识矩阵包括:针对所述路径知识矩阵中的元素,
响应于所述专家知识指示与所述元素相关联的第一变量和第二变量之间具有间接因果关系,将所述元素设置为满足第一条件;
响应于所述专家知识指示所述第一变量和所述第二变量之间不具有间接因果关系,将所述元素设置为满足第二条件;以及
响应于所述专家知识不具有所述第一变量和所述第二变量之间的间接因果关系的知识,将所述元素设置为满足第三条件。
24.根据权利要求21所述的系统,其中所述基于所述边知识矩阵确定所述边约束矩阵包括:针对所述边约束矩阵中的元素,
响应于所述边知识矩阵中与所述元素相对应的元素等于0,将所述边约束矩阵中的所述元素设置为较大值;
响应于所述边知识矩阵中与所述元素相对应的元素满足第一条件,将所述边约束矩阵中的所述元素设置为零;以及
响应于所述边知识矩阵中与所述元素相对应的元素满足第三条件,将所述边约束矩阵中的所述元素设置为与预定义的超参数相关联。
25.根据权利要求24所述的系统,其中将所述边约束矩阵中的所述元素设置为与预定义的超参数相关联包括:
将所述边约束矩阵中(j,i)位置处的元素设置为其中是基于所述数据集计算的预定义的超参数,ols表示最小二乘运算,||表示绝对值运算,γ表示预定参数。
26.根据权利要求21所述的系统,其中确定所述路径约束矩阵包括:
基于所述专家知识确定描述所述多个变量中的两个变量之间的间接因果关系的状态的路径知识矩阵;以及
基于所述路径知识矩阵确定所述路径约束矩阵。
27.根据权利要求26所述的系统,其中所述基于所述路径知识矩阵确定所述路径约束矩阵包括:针对所述路径约束矩阵中的元素,
响应于所述路径知识矩阵中与所述元素相对应的元素等于0,将所述路径约束矩阵中的所述元素设置为较大值;
响应于所述路径知识矩阵中与所述元素相对应的元素满足第一条件,将所述路径约束矩阵中的所述元素设置为零;以及
响应于所述路径知识矩阵中与所述元素相对应的元素满足第三条件,将所述路径约束矩阵中的所述元素设置为1。
28.根据权利要求27所述的系统,其中所述专家知识约束包括与所述矩阵中的当前向量βj相关联的边约束向量和路径约束向量,其中:
所述边约束向量为以及所述路径约束向量为
29.根据权利要求38所述的系统,其中构建描述所述因果关系的所述问题公式包括:针对所述当前向量βj构建问题公式向量:
其中Supp(βj)表示所述当前向量βj的支撑,Qs表示与所述多个元素中的至少一部分元素相关联的因果序列,xj表示多个样本中的与当前向量βj相关联的部分,x-j表示多个样本中的与当前向量βj以外的向量相关联的部分,表示二范数运算,表示所述边约束矩阵中(j,i)位置处的元素,βji表示所述矩阵中(j,i)位置处的元素,表示所述路径约束矩阵中(j,i)位置处的元素,pvi表示所述路径矩阵中(j,i)位置处的元素,βjv表示所述矩阵中(j,v)位置处的元素,||表示绝对值运算,表示Qs中的在节点i之后的节点。
30.根据权利要求29所述的系统,其中所述针对构建的所述问题公式进行求解以获得所述矩阵的候选结果包括:
针对所述问题公式向量进行求解以获得针对所述矩阵的所述当前向量βj的候选结果。
31.一种计算机程序产品,所述计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,所述机器可执行指令在被执行时使机器执行根据权利要求1至15中的任一项所述的方法的步骤。
CN201710922464.1A 2017-09-30 2017-09-30 用于确定因果关系的方法、系统和计算机程序产品 Pending CN109598347A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710922464.1A CN109598347A (zh) 2017-09-30 2017-09-30 用于确定因果关系的方法、系统和计算机程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710922464.1A CN109598347A (zh) 2017-09-30 2017-09-30 用于确定因果关系的方法、系统和计算机程序产品

Publications (1)

Publication Number Publication Date
CN109598347A true CN109598347A (zh) 2019-04-09

Family

ID=65956697

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710922464.1A Pending CN109598347A (zh) 2017-09-30 2017-09-30 用于确定因果关系的方法、系统和计算机程序产品

Country Status (1)

Country Link
CN (1) CN109598347A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020191770A1 (zh) * 2019-03-28 2020-10-01 日本电气株式会社 用于确定因果关系的方法、系统和计算机程序产品
WO2021056733A1 (zh) * 2019-09-23 2021-04-01 苏州车付通信息科技有限公司 智能逻辑分析系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020191770A1 (zh) * 2019-03-28 2020-10-01 日本电气株式会社 用于确定因果关系的方法、系统和计算机程序产品
US11232175B2 (en) 2019-03-28 2022-01-25 Nec Corporation Method, system, and computer program product for determining causality
US11893079B2 (en) 2019-03-28 2024-02-06 Nec Corporation Method, system, and computer program product for determining causality
WO2021056733A1 (zh) * 2019-09-23 2021-04-01 苏州车付通信息科技有限公司 智能逻辑分析系统

Similar Documents

Publication Publication Date Title
US11227188B2 (en) Computer system for building, training and productionizing machine learning models
Sabatier et al. Fractional systems state space description: some wrong ideas and proposed solutions
JP6844562B2 (ja) アノテーション方法、アノテーション装置、アノテーションプログラム及び識別システム
JP5570008B2 (ja) カーネル回帰システム、方法及びプログラム
EP3474274A1 (en) Speech recognition method and apparatus
Regis Multi-objective constrained black-box optimization using radial basis function surrogates
CN110689110B (zh) 处理交互事件的方法及装置
JP6947108B2 (ja) データ予測装置、方法、及びプログラム
JP5991317B2 (ja) 情報処理システム、ネットワーク構造学習装置、リンク強度予測装置、リンク強度予測方法およびプログラム
JP6631540B2 (ja) 情報処理システム、変化点検出方法、およびプログラム
CN109598347A (zh) 用于确定因果关系的方法、系统和计算机程序产品
CN111026973B (zh) 一种商品兴趣度预测方法、装置及电子设备
CN110288444B (zh) 实现用户相关推荐的方法和系统
CN112561569B (zh) 基于双模型的到店预测方法、系统、电子设备及存储介质
CN111382846B (zh) 基于迁移学习的训练神经网络模型的方法和装置
CA3204121A1 (en) Recommendation with neighbor-aware hyperbolic embedding
CN110880141A (zh) 一种深度双塔模型智能匹配算法及装置
CN110019833A (zh) 用于确定因果关系的方法、系统和计算机程序产品
CN110322019A (zh) 用于处理数据集的方法、系统和存储介质
Tripathi et al. Discriminating lysosomal membrane protein types using dynamic neural network
CN115018077A (zh) 贝叶斯网络的结构学习方法、装置及电子设备
JP6558860B2 (ja) 推定装置、予測装置、方法、及びプログラム
CN110782287A (zh) 实体相似度计算方法及装置、物品推荐系统、介质、设备
WO2020191770A1 (zh) 用于确定因果关系的方法、系统和计算机程序产品
JP5684055B2 (ja) 時間関係データ解析装置、方法、及びプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination