赞
踩
在知识图谱中发现变量之间的因果序,将知识图谱上的矩阵分解和基于矩阵的因果发现算法做了一个结合
第一步是使用TuckER算法对知识图谱上的邻接张量做矩阵分解,得到核心张量;然后对核心张量经过投影和维度变换得到一个数据矩阵;然后验证数据矩阵的非高斯性,并将其作为DirectLiNGAM因果发现算法的输入计算因果序
对于输入张量,算法将其分解为一个核心张量以及因子矩阵A、B、C,并满足
在知识图谱问题上,假设实体对应的嵌入矩阵为E,,为实体和关系的数量,为实体和关系的维度,分解之后有,,可以得到一个核心张量。给定一个三元组,其可能存在的概率为
,由于,且DirectLiNGAM接受二维矩阵作为输入,将其转换为
这里首先要给出对数据的假设,对于可观测变量,如果将它们按因果序排列,则序列中位于后面的变量无法对前面的变量施加因果影响,一种线性的数据构造方式是
注意噪音项要服从非高斯分布
前置知识二:非高斯数据在统计量上的非对称性
为了发现因果结构,数据的二阶统计量是不够用的,因为它不能指明方向性,比如皮尔逊相关系数就是对称的。因此一般用高阶统计量来获取方向性,论文里面的例子是标准四阶中心矩,也称之为峰度,定义为
两个变量之间的四阶皮尔逊相关系数是有方向的,定义为
由于峰度本质上定义了数据分布相对于正态分布的陡缓程度,如果数据服从正态分布,则,因此数据被要求服从非高斯分布。因此当噪音项服从非高斯分布或者函数方程满足非线性约束时,由于原因变量和噪音项间的独立性仅在正确的因果方向下成立,使得变量间的因果方向是可判定的。
前置知识三:LiNGAM算法
LiNGAM算法用独立成分分析法来完成因果发现,其最终求解出一个矩阵B,满足
论文中指出LiNGAM算法容易收敛到局部最优,并且会学到不正确的因果序,因此最终采用了DirectLiNGAM算法
独立主成分分析技术(ICA)被用于LiNGAM 的模型选择,由于超参数选择问题,ICA 算法常常陷入局部最优而无法收敛于最优解。为此,DirectLiNGAM 算法利用外部变量及非外部变量在其上的回归残差间的独立性信息求解变量间的因果结构,被证明可以收敛于最优。
比较简单,就是把上面的方法线性拼接
论文里面说目前没有类似的任务,无法量化模型的性能,只能画一下因果图看看效果。
模型的思路还是比较简单的,就是把两个算法拼起来,中间加一个对矩阵的投影。LiNGA和之前看的DAG求解论文虽然思路不一样,但最终的求解目标是一致的,不知道DAG方法在这上面表现如何。另外论文里面对TuckER算法里面各个矩阵的含义没有说得很清楚,还需要再找找资料理解一下。论文的一个硬伤是无法知道学习到的因果图准不准,也没有将它用于提升后续的推理任务。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。