信息论领域内的计算方法仿真,Transfer Entropy,转移熵;
转移熵本质上条件互信息:

将条件互信息,运用到特定的时间序列上,计算得到的就是转移熵。
需要注意的是:虽然说转移熵,能看到因果性。但这种因果性在某种程度上具有欺骗性。因为X和Y之间可能不存在因果性,而是有一个 未观测的隐藏的变量 影响着X和Y的相互作用;
什么是互信息:
I(X;Y),Y减少了多少关于X的不确定性。
推导:

------------------
生成两个时间序列,计算转移熵。
代码如下;
# 计算转移熵;
# pip install pyinform
import numpy as np
from pyinform.transferentropy import *
k = 2
#生成两个序列,target是source的延迟
source = [0,1,1,1,1,0,0,0,0]
target = [0,0,1,1,1,1,0,0,0]
print("the tranfer entropy of X -> Y is {:.2f}".format(transfer_entropy(source, target, k=k)))
the tranfer entropy of X -> Y is 0.68
k = 2
#生成两个一样的序列
source = [0,0,1,1,1,1,0,0,0]
target = [0,0,1,1,1,1,0,0,0]
print("the tranfer entropy of X -> Y is {:.2f}".format(transfer_entropy(source, target, k=k)))
the tranfer entropy of X -> Y is 0.00
总结:
传递熵,能够用来刻画信息的传递;
浙公网安备 33010602011771号