信息论估计工具jidt基本使用

介绍JIDT工具库的基本使用方法,包括安装配置、转移熵估计等信息论度量计算示例。

信息论估计工具jidt基本使用

JIDT基本介绍

  • JIDT是 Java Information Dynamics Toolkit的简称,用于研究复杂系统中信息论相关度量的计算,它是一个基于java的开源工具库,也可以在Matlab、Octave、Python、R、Julia和Clojure中使用;
  • JIDT提供了如下计算工具:
    • 信息熵、互信息、转移熵
    • 条件互信息、条件转移熵
    • 多变量互信息和多变量转移熵
    • 信息存储
  • JIDT同时支持离散型数据和连续型数据
  • JIDT提供多种估计算子

主页:https://github.com/jlizier/jidt

安装

在这里插入图片描述

  • 第一步:下载编译好的版本,图中的v1.5 full distribution,然后解压放到合适的目录,如~/software/infodynamics,我们只需要里面的infodynamics.jar文件。

  • 第二步:熟悉Java的同学应该知道这个jar文件是个什么东东,这就是所有信息论度量计算所需要的函数哈,所以现在需要安装配置Java环境,这里不再赘述。

  • 第三步:由于需要在python环境中使用java计算,所以需要安装jpype,安装命令:pip install jpype1

配置好环境之后,在使用jidt之前加入如下一段代码:

import jpype
from jpype import *

try:
    jarLocation = "~/software/infodynamics/infodynamics.jar"
    jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=" + jarLocation)
except:
    print("JVM  has already started !")

注: 需要把jarLocation换成自己的路径!

接下来就能够调用jidt中各种封装好的信息论估计算子了:
在这里插入图片描述

转移熵估计

转移熵估计作者提供了多种估计方法:

例:TransferEntropyCalculatorMultiVariateKraskov

我们以这个多变量转移熵的ksg估计算子为例来介绍如何使用jidt估计转移熵,首先使用如下代码打开JVM:

import jpype
from jpype import *

try:
    jarLocation = "~/software/infodynamics/infodynamics.jar"
    jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", 
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值