基于广义独立噪声 (GIN) 条件的方法

算法介绍

基于 GIN [1] 条件学习线性、非高斯隐变量模型 (LiNLAM) 的结构。

使用方法

from causallearn.search.HiddenCausal.GIN.GIN import GIN
G, K = GIN(data)

# Visualization using pydot
from causallearn.utils.GraphUtils import GraphUtils
import matplotlib.image as mpimg
import matplotlib.pyplot as plt
import io

pyd = GraphUtils.to_pydot(G)
tmp_png = pyd.create_png(f="png")
fp = io.BytesIO(tmp_png)
img = mpimg.imread(fp, format='png')
plt.axis('off')
plt.imshow(img)
plt.show()

推荐使用 pydot 进行可视化(使用示例)。如果需要指定标签名称,请参考此使用示例(例如,GraphUtils.to_pydot(G, labels=["A", "B", "C"])。

参数

data: numpy.ndarray,形状 (n_samples, n_features)。数据,其中 n_samples 是样本数量,n_features 是特征数量。

返回值

G: GeneralGraph。因果图。

K: list。因果顺序。