From fe6ca0140228bc45da14857566af86f72140f38c Mon Sep 17 00:00:00 2001 From: Scott Lawrence Date: Sat, 22 Jun 2024 21:59:53 -0700 Subject: Progress toward MCMC --- src/NeuralNetworks.jl | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 src/NeuralNetworks.jl (limited to 'src/NeuralNetworks.jl') diff --git a/src/NeuralNetworks.jl b/src/NeuralNetworks.jl new file mode 100644 index 0000000..7bc9c5d --- /dev/null +++ b/src/NeuralNetworks.jl @@ -0,0 +1,41 @@ +module NeuralNetworks + +struct Linear + W::Matrix{Float64} + b::Vector{Float64} +end + +function (l::Linear)(x::Vector{Float64}) +end + +struct Activation +end + +struct MLP +end + +struct AffineCoupling +end + +function (f::AffineCoupling)(x::Vector{Float64})::Float64 + return 0. +end + +struct RealNVP + layers::Vector{AffineCoupling} + + function RealNVP() + layers = Vector{AffineCoupling}() + new(layers) + end +end + +function (f::RealNVP)(x::Vector{Float64})::Float64 + ldJ::Float64 = 0. + for l! in f.layers + ldJ += l!(x) + end + return ldJ +end + +end -- cgit v1.2.3-54-g00ecf