Owl_neural_neuron.Make
module Optimise : Owl_optimise_generic_sig.Sig
module Optimise = Optimise
module Init : sig ... end
module Input : sig ... end
module Activation : sig ... end
module Linear : sig ... end
module LinearNoBias : sig ... end
module Recurrent : sig ... end
module LSTM : sig ... end
module GRU : sig ... end
module Conv1D : sig ... end
module DilatedConv1D : sig ... end
module TransposeConv1D : sig ... end
module Conv2D : sig ... end
module DilatedConv2D : sig ... end
module TransposeConv2D : sig ... end
module Conv3D : sig ... end
module DilatedConv3D : sig ... end
module TransposeConv3D : sig ... end
module FullyConnected : sig ... end
module MaxPool1D : sig ... end
module MaxPool2D : sig ... end
module AvgPool1D : sig ... end
module AvgPool2D : sig ... end
module GlobalMaxPool1D : sig ... end
module GlobalMaxPool2D : sig ... end
module GlobalAvgPool1D : sig ... end
module GlobalAvgPool2D : sig ... end
module UpSampling1D : sig ... end
module UpSampling2D : sig ... end
module UpSampling3D : sig ... end
module Padding1D : sig ... end
module Padding2D : sig ... end
module Padding3D : sig ... end
module Lambda : sig ... end
module LambdaArray : sig ... end
module Dropout : sig ... end
module Reshape : sig ... end
module Flatten : sig ... end
module Slice : sig ... end
module Add : sig ... end
module Mul : sig ... end
module Dot : sig ... end
module Max : sig ... end
module Average : sig ... end
module Concatenate : sig ... end
module Normalisation : sig ... end
module GaussianNoise : sig ... end
module GaussianDropout : sig ... end
module AlphaDropout : sig ... end
module Embedding : sig ... end
module Masking : sig ... end
type neuron =
| Input of Input.neuron_typ
| Linear of Linear.neuron_typ
| LinearNoBias of LinearNoBias.neuron_typ
| Embedding of Embedding.neuron_typ
| LSTM of LSTM.neuron_typ
| GRU of GRU.neuron_typ
| Recurrent of Recurrent.neuron_typ
| Conv1D of Conv1D.neuron_typ
| Conv2D of Conv2D.neuron_typ
| Conv3D of Conv3D.neuron_typ
| DilatedConv1D of DilatedConv1D.neuron_typ
| DilatedConv2D of DilatedConv2D.neuron_typ
| DilatedConv3D of DilatedConv3D.neuron_typ
| TransposeConv1D of TransposeConv1D.neuron_typ
| TransposeConv2D of TransposeConv2D.neuron_typ
| TransposeConv3D of TransposeConv3D.neuron_typ
| FullyConnected of FullyConnected.neuron_typ
| MaxPool1D of MaxPool1D.neuron_typ
| MaxPool2D of MaxPool2D.neuron_typ
| AvgPool1D of AvgPool1D.neuron_typ
| AvgPool2D of AvgPool2D.neuron_typ
| GlobalMaxPool1D of GlobalMaxPool1D.neuron_typ
| GlobalMaxPool2D of GlobalMaxPool2D.neuron_typ
| GlobalAvgPool1D of GlobalAvgPool1D.neuron_typ
| GlobalAvgPool2D of GlobalAvgPool2D.neuron_typ
| UpSampling2D of UpSampling2D.neuron_typ
| Padding2D of Padding2D.neuron_typ
| Dropout of Dropout.neuron_typ
| Reshape of Reshape.neuron_typ
| Flatten of Flatten.neuron_typ
| Slice of Slice.neuron_typ
| Lambda of Lambda.neuron_typ
| LambdaArray of LambdaArray.neuron_typ
| Activation of Activation.neuron_typ
| GaussianNoise of GaussianNoise.neuron_typ
| GaussianDropout of GaussianDropout.neuron_typ
| AlphaDropout of AlphaDropout.neuron_typ
| Normalisation of Normalisation.neuron_typ
| Add of Add.neuron_typ
| Mul of Mul.neuron_typ
| Dot of Dot.neuron_typ
| Max of Max.neuron_typ
| Average of Average.neuron_typ
| Concatenate of Concatenate.neuron_typ
val get_in_out_shape : neuron -> int array * int array
val get_in_shape : neuron -> int array
val get_out_shape : neuron -> int array
val connect : int array array -> neuron -> unit
val init : neuron -> unit
val reset : neuron -> unit
val mktag : int -> neuron -> unit
val mkpar : neuron -> Optimise.Algodiff.t array
val mkpri : neuron -> Optimise.Algodiff.t array
val mkadj : neuron -> Optimise.Algodiff.t array
val update : neuron -> Optimise.Algodiff.t array -> unit
val save_weights : neuron -> Optimise.Algodiff.t array
val load_weights : neuron -> Optimise.Algodiff.t array -> unit
val run : Optimise.Algodiff.t array -> neuron -> Optimise.Algodiff.t
val to_string : neuron -> string
val to_name : neuron -> string