Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 条件互信息_Python_Python 3.x_Numpy_Entropy_Information Theory - Fatal编程技术网

Python 条件互信息

Python 条件互信息,python,python-3.x,numpy,entropy,information-theory,Python,Python 3.x,Numpy,Entropy,Information Theory,]正在尝试测试此包以从数据集计算条件互信息。包名为“dit” 我的代码: from __future__ import division import numpy as np import dit from dit import Distribution as D from dit.multivariate import coinformation as I from dit.example_dists import Xor d=Xor() d.set_rv_names(['X','Y','Z

]正在尝试测试此包以从数据集计算条件互信息。包名为“dit”

我的代码:

from __future__ import division
import numpy as np
import dit
from dit import Distribution as D
from dit.multivariate import coinformation as I
from dit.example_dists import Xor

d=Xor()
d.set_rv_names(['X','Y','Z'])
X=111010
Y=101101
Z=001011

a=dit.multivariate.coinformation(d,'XY','Z')
print(a)
运行此程序时,我始终得到的结果是“1.0”。
结果为负值或正值,如“-0.0023”或“0.120”

基本上,我想这样做 在Python中。
非常感谢您提供的一点帮助

告诉我这是否是您的解决方案:
将名称设置为
d

d=Xor()

## ADD THIS LINE OF CODE BELOW
d.set_rv_names(['X', 'Y', 'Z'])

X=0.052290766
Y=0.004951425
Z=0.000246642

a=dit.multivariate.coinformation(d,'XY','Z')
print(a)

非常感谢你的帮助。和其他方法一样,我可以用python解决信息论方法的问题。是的,你也可以从头开始构建模型,只要你对信息论有一致的知识。您可以在决策树、梯度增强、神经网络中使用它来定制损失和树拆分。答案解决了你的问题吗?是的,解决了!再次感谢。但是,你知道有什么软件包可以在这种信息理论方法中有所帮助吗?很高兴知道,请投赞成票,我将非常感谢。我建议你学习理论,以便更好地理解概念,并探讨深入学习、信息处理、基于树的分类方法是如何工作的。例如,您可以使用信息论、KL散度、熵、惊喜、互信息定制深度学习模型的损失。我不知道这方面的具体库。试试这个:
X=[1,1,0]
Y=[0,0,1]
Z=[0,1,1]