-
Notifications
You must be signed in to change notification settings - Fork 1
Estimate the acceptable minimum embedding dimension
Estimate the acceptable minimum embedding dimension.
Estimate the acceptable minimum embedding dimension using False Nearest Neighbors Algorithm [Kennel_1992].
Select appropriately from the embedded data with dimension
, find the closest tangent vector
, and set the distance to
. It is embedded from 1 to
D_max
.
Calculate the closest distance for all data. The points that satisfy the following two conditions are counted. (
threshold_A
) and (
threshold_R
) are thresholds.
is the standard deviation obtained from the time series.
Let the acceptable minimum embedding dimension be the first dimension below 1% (threshold_percent
) in the percentages obtained for each embedded dimension.
By default, the actual calculation result is displayed. The point actually adopted is red. If you want to turn off the display, give plot=False
.
It is necessary to set the threshold appropriately, and it is difficult to adapt to unknown data. Different value of and
may lead to different result (
dimension
). AFF Algorithm (est_dimension_w_afn
) is devised.
from hundun.exploration import est_dimension_w_fnn
- u_seq
- T
- D_max=10
- threshold_R=10
- threshold_A=2
- threshold_percent=1
- plot=True
- path_save_plot=None
- dimension
- percentages:
numpy.ndarray
Estimate the acceptable minimum embedding dimension for x in the Lorenz time series.
from hundun.equations import Lorenz
from hundun.exploration import est_dimension_w_fnn
x_seq = Lorenz.get_u_seq(25000)[::5, 0]
D, percentages = est_dimension_w_fnn(x_seq, T=10)
print(D)
3
(1992) Matthew B. Kennel, Reggie Brown, and Henry D. I. Abarbanel
DOI: 10.1103/PhysRevA.45.3403
(1993) Abarbanel, Henry D. I. and Brown, Reggie and Sidorowich, John J. and Tsimring, Lev Sh
DOI: 10.1103/RevModPhys.65.1331
Estimate the acceptable minimum embedding dimension using Averaged False Neighbors Algorithm [Cao_1997].
Calculate the distance in the same way as FNN. However, it uses maximum norm instead of Euclidean distance.
Estimate the acceptable minimum embedding dimensions with reference to E1 and E2 obtained by calculation.
The first value at which E1 and E2 each exceed the threshold (threshold_E1=0.9
, threshold_E2=1
) is retrieved as the dimension.
from hundun.exploration import est_dimension_w_afn
- u_seq
- T
- D_max=10
- threshold_E1=0.9
- threshold_E2=1
- plot=True
- path_save_plot=None
- dimension_list:
List[int]
- E_list:
List[numpy.ndarray]
from hundun.equations import Lorenz
from hundun.exploration import est_dimension_w_afn
import numpy as np
x_seq = Lorenz.get_u_seq(25000)[::5, 0]
D, E_list = est_dimension_w_afn(x_seq, T=1)
print(D)
[4, 3]
(1997) Liangyue Cao
DOI: 10.1016/S0167-2789(97)00118-8
It will not be available after version 0.2. Use est_dimension_w_fnn
instead.
It will not be available after version 0.2. Use est_dimension_w_afn
instead.