chaotic_init
ReservoirComputing.chaotic_init — Function
chaotic_init([rng], [T], dims...;
extra_edge_probability=T(0.1), radius=one(T),
return_sparse=false)Construct a chaotic reservoir matrix using a digital chaotic system (Xie et al., 2024).
The matrix topology is derived from a strongly connected adjacency matrix based on a digital chaotic system operating at finite precision. If the requested matrix order does not exactly match a valid order the closest valid order is used.
Arguments
rng: Random number generator. Default isUtils.default_rng()from WeightInitializers.T: Type of the elements in the reservoir matrix. Default isFloat32.dims: Dimensions of the reservoir matrix.
Keyword arguments
extra_edge_probability: Probability of adding extra random edges in the adjacency matrix to enhance connectivity. Default is 0.1.radius: The target spectral radius for the reservoir matrix. Default is one.return_sparse: flag for returning asparsematrix.truerequiresSparseArraysto be loaded. Default isfalse.
Examples
julia> res_matrix = @test_logs (:warn, r"Adjusting reservoir matrix order") chaotic_init(8, 8);
julia> size(res_matrix)
(4, 4)References
- Xie, M.; Wang, Q. and Yu, S. (2024). Time Series Prediction of ESN Based on Chebyshev Mapping and Strongly Connected Topology. Neural Processing Letters 56.