Skip to content

Commit 36e44cf

Browse files
Merge pull request #251 from SciML/fm/sparse
Making `SparseArrays.jl` an external dependency
2 parents 44fe813 + 3f3342a commit 36e44cf

File tree

5 files changed

+111
-60
lines changed

5 files changed

+111
-60
lines changed

Project.toml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "ReservoirComputing"
22
uuid = "7c2d2b1e-3dd4-11ea-355a-8f6a8116e294"
33
authors = ["Francesco Martinuzzi"]
4-
version = "0.10.10"
4+
version = "0.10.11"
55

66
[deps]
77
Adapt = "79e6a3ab-5dfb-504d-930d-738a2a938a0e"
@@ -11,17 +11,17 @@ LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
1111
NNlib = "872c559c-99b0-510c-b3b7-b6c96a88d5cd"
1212
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
1313
Reexport = "189a3867-3050-52da-a836-e630ba90ab69"
14-
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
15-
StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91"
1614
WeightInitializers = "d49dbf32-c5c2-4618-8acc-27bb2598ef2d"
1715

1816
[weakdeps]
1917
LIBSVM = "b1bec4e5-fd48-53fe-b0cb-9723c09d164b"
2018
MLJLinearModels = "6ee0df7b-362f-4a72-a706-9e79364fb692"
19+
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
2120

2221
[extensions]
2322
RCLIBSVMExt = "LIBSVM"
2423
RCMLJLinearModelsExt = "MLJLinearModels"
24+
RCSparseArraysExt = "SparseArrays"
2525

2626
[compat]
2727
Adapt = "4.1.1"
@@ -38,7 +38,6 @@ Reexport = "1.2.2"
3838
SafeTestsets = "0.1"
3939
SparseArrays = "1.10"
4040
Statistics = "1.10"
41-
StatsBase = "0.34.4"
4241
Test = "1"
4342
WeightInitializers = "1.0.5"
4443
julia = "1.10"
@@ -49,9 +48,9 @@ DifferentialEquations = "0c46a032-eb83-5123-abaf-570d42b7fbaa"
4948
LIBSVM = "b1bec4e5-fd48-53fe-b0cb-9723c09d164b"
5049
MLJLinearModels = "6ee0df7b-362f-4a72-a706-9e79364fb692"
5150
SafeTestsets = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f"
51+
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
5252
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
5353
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
5454

5555
[targets]
56-
test = ["Aqua", "Test", "SafeTestsets", "DifferentialEquations",
57-
"MLJLinearModels", "LIBSVM", "Statistics"]
56+
test = ["Aqua", "Test", "SafeTestsets", "DifferentialEquations", "MLJLinearModels", "LIBSVM", "Statistics", "SparseArrays"]

ext/RCSparseArraysExt.jl

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
module RCSparseArraysExt
2+
import ReservoirComputing: return_init_as
3+
using SparseArrays: sparse
4+
5+
function return_init_as(::Val{true}, layer_matrix::AbstractVecOrMat)
6+
return sparse(layer_matrix)
7+
end
8+
9+
end #module

src/ReservoirComputing.jl

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,10 @@ module ReservoirComputing
33
using Adapt: adapt
44
using CellularAutomata: CellularAutomaton
55
using Compat: @compat
6-
using LinearAlgebra: eigvals, mul!, I, qr
6+
using LinearAlgebra: eigvals, mul!, I, qr, Diagonal
77
using NNlib: fast_act, sigmoid
8-
using Random: Random, AbstractRNG
8+
using Random: Random, AbstractRNG, randperm
99
using Reexport: Reexport, @reexport
10-
using SparseArrays: sparse
11-
using StatsBase: sample
1210
using WeightInitializers: DeviceAgnostic, PartialFunction, Utils
1311
@reexport using WeightInitializers
1412

@@ -45,7 +43,7 @@ export rand_sparse, delay_line, delay_line_backward, cycle_jumps,
4543
export RNN, MRNN, GRU, GRUParams, FullyGated, Minimal
4644
export train
4745
export ESN, HybridESN, KnowledgeModel, DeepESN
48-
export RECA, sample
46+
export RECA
4947
export RandomMapping, RandomMaps
5048
export Generative, Predictive, OutputLayer
5149

0 commit comments

Comments
 (0)