Skip to content

Transfer entropy (TE) estimators

Transfer operator grid estimator

The transfer operator grid estimator computes TE from the invariant distribution arising from an approximation to the transfer operator over a discretization of the state space reconstruction (delay embedding). This is a new estimator from Diego et al. (2018).

Documentation

# TransferEntropy.tetogridFunction.

transferentropy_transferoperator_grid(
        bins_visited_by_orbit::Array{Int, 2},
        iv::PerronFrobenius.InvariantDistribution,
        v::TEVars, normalise_to_tPP = false)

Using the invariant probability distribution obtained from the transfer operator to the visited bins of the partitioned state space. bins_visited_by_orbit are the bin labels assigned to each element of the partition that gets visited by the orbit.

We calculate transfer entropy from the embedding E, given a discretization scheme controlled by psilon and information v::TEVars about which columns of the embedding to consider for each of the marginal distributions. From these marginal distributions, we calculate marginal entropies and insert these into the transfer entropy expression.

If normalise_to_tPP = true, then the TE estimate is normalised to the entropy rate of the target variable, H(target_future | target_presentpast).

transferentropytransferoperatorgrid( E::Embeddings.AbstractEmbedding, ϵ::Union{Int, Float64, Vector{Float64}, Vector{Int}}, v::TransferEntropy.TEVars; normalisetotPP = false allocate_frac = 1) -> Float64

Using the transfer operator to calculate probability distributions, calculate transfer entropy from the embedding E, given a discretization scheme controlled by ϵ and information v::TEVars about which columns of the embedding to consider for each of the marginal distributions. From these marginal distributions, we calculate marginal entropies and insert these into the transfer entropy expression.

If normalise_to_tPP = true, then the TE estimate is normalised to the entropy rate of the target variable H(target_future | target_presentpast).

transferentropy_transferoperator_grid(E::Embeddings.AbstractEmbedding,
    ϵ::Vector{Union{Int, Float64, Vector{Float64}, Vector{Int}}},
    v::TEVars, normalise_to_tPP = false)

Compute transfer entropy over a range of bin sizes.

Using the transfer operator to calculate probability distributions, calculate transfer entropy from the embedding E, given a discretization scheme controlled by the ϵs and information v::TEVars about which columns of the embedding to consider for each of the marginal distributions. From these marginal distributions, we calculate marginal entropies and insert these into the transfer entropy expression.

If normalise_to_tPP = true, then the TE estimate is normalised to the entropy rate of the target variable, H(target_future | target_presentpast).

transferentropy_transferoperator_grid(pts::AbstractArray{T, 2},
    ϵ::Union{Int, Float64, Vector{Float64}, Vector{Int}},
    v::TransferEntropy.TEVars)

Using the transfer operator to calculate probability distributions, calculate transfer entropy from the points pts, given a discretization scheme controlled by ϵ and information v::TEVars about which columns of the embedding to consider for each of the marginal distributions. From these marginal distributions, we calculate marginal entropies and insert these into the transfer entropy expression. The points will be embedded behind the scenes.

References

Diego, D., Agasøster Haaga, K., & Hannisdal, B. (2018, November 1). Transfer entropy computation using the Perron-Frobenius operator. Eprint ArXiv:1811.01677. https://arxiv.org/abs/1811.01677.