Neural.Graphmodule Neuron : sig ... endtype node = Owl_neural_generic.Make_Embedded(Engine).node = {mutable name : string;mutable prev : node array;mutable next : node array;mutable neuron : Neuron.neuron;mutable output : Neuron.Optimise.Algodiff.t option;mutable network : network;mutable train : bool;}and network = Owl_neural_generic.Make_Embedded(Engine).network = {mutable nnid : string;mutable size : int;mutable roots : node array;mutable outputs : node array;mutable topo : node array;}val make_node :
?name:string ->
?train:bool ->
node array ->
node array ->
Neuron.neuron ->
Neuron.Optimise.Algodiff.t option ->
network ->
nodeval get_network_name : network -> stringval set_network_name : network -> string -> unitval collect_output : node array -> Neuron.Optimise.Algodiff.t arrayval add_node :
?act_typ:Neuron.Activation.typ ->
network ->
node array ->
node ->
nodeval input_shape : network -> int arrayval input_shapes : network -> int array arrayval init : network -> unitval reset : network -> unitval mktag : int -> network -> unitval mkpar : network -> Neuron.Optimise.Algodiff.t array arrayval mkpri : network -> Neuron.Optimise.Algodiff.t array arrayval mkadj : network -> Neuron.Optimise.Algodiff.t array arrayval update : network -> Neuron.Optimise.Algodiff.t array array -> unitval run : Neuron.Optimise.Algodiff.t -> network -> Neuron.Optimise.Algodiff.tval run_inputs :
Neuron.Optimise.Algodiff.t array ->
network ->
Neuron.Optimise.Algodiff.t arrayval forward :
network ->
Neuron.Optimise.Algodiff.t ->
Neuron.Optimise.Algodiff.t * Neuron.Optimise.Algodiff.t array arrayval forward_inputs :
network ->
Neuron.Optimise.Algodiff.t array ->
Neuron.Optimise.Algodiff.t array * Neuron.Optimise.Algodiff.t array arrayval backward :
network ->
Neuron.Optimise.Algodiff.t ->
Neuron.Optimise.Algodiff.t array array
* Neuron.Optimise.Algodiff.t array arrayval model :
network ->
Neuron.Optimise.Algodiff.A.arr ->
Neuron.Optimise.Algodiff.A.arrval model_inputs :
network ->
Neuron.Optimise.Algodiff.A.arr array ->
Neuron.Optimise.Algodiff.A.arr arrayval input : ?name:string -> int array -> nodeval inputs : ?names:string array -> int array array -> node arrayval activation : ?name:string -> Neuron.Activation.typ -> node -> nodeval linear :
?name:string ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int ->
node ->
nodeval linear_nobias :
?name:string ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int ->
node ->
nodeval embedding :
?name:string ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int ->
int ->
node ->
nodeval recurrent :
?name:string ->
?init_typ:Neuron.Init.typ ->
act_typ:Neuron.Activation.typ ->
int ->
int ->
node ->
nodeval lstm : ?name:string -> ?init_typ:Neuron.Init.typ -> int -> node -> nodeval gru : ?name:string -> ?init_typ:Neuron.Init.typ -> int -> node -> nodeval conv1d :
?name:string ->
?padding:Owl_types.padding ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval conv2d :
?name:string ->
?padding:Owl_types.padding ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval conv3d :
?name:string ->
?padding:Owl_types.padding ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval dilated_conv1d :
?name:string ->
?padding:Owl_types.padding ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
int array ->
node ->
nodeval dilated_conv2d :
?name:string ->
?padding:Owl_types.padding ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
int array ->
node ->
nodeval dilated_conv3d :
?name:string ->
?padding:Owl_types.padding ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
int array ->
node ->
nodeval transpose_conv1d :
?name:string ->
?padding:Owl_types.padding ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval transpose_conv2d :
?name:string ->
?padding:Owl_types.padding ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval transpose_conv3d :
?name:string ->
?padding:Owl_types.padding ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval fully_connected :
?name:string ->
?init_typ:Neuron.Init.typ ->
?act_typ:Neuron.Activation.typ ->
int ->
node ->
nodeval max_pool1d :
?name:string ->
?padding:Owl_types.padding ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval max_pool2d :
?name:string ->
?padding:Owl_types.padding ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval avg_pool1d :
?name:string ->
?padding:Owl_types.padding ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval avg_pool2d :
?name:string ->
?padding:Owl_types.padding ->
?act_typ:Neuron.Activation.typ ->
int array ->
int array ->
node ->
nodeval global_max_pool1d :
?name:string ->
?act_typ:Neuron.Activation.typ ->
node ->
nodeval global_max_pool2d :
?name:string ->
?act_typ:Neuron.Activation.typ ->
node ->
nodeval global_avg_pool1d :
?name:string ->
?act_typ:Neuron.Activation.typ ->
node ->
nodeval global_avg_pool2d :
?name:string ->
?act_typ:Neuron.Activation.typ ->
node ->
nodeval upsampling2d :
?name:string ->
?act_typ:Neuron.Activation.typ ->
int array ->
node ->
nodeval padding2d :
?name:string ->
?act_typ:Neuron.Activation.typ ->
int array array ->
node ->
nodeval normalisation :
?name:string ->
?axis:int ->
?training:bool ->
?decay:float ->
?mu:Neuron.Optimise.Algodiff.A.arr ->
?var:Neuron.Optimise.Algodiff.A.arr ->
node ->
nodeval lambda :
?name:string ->
?act_typ:Neuron.Activation.typ ->
?out_shape:int array ->
(Neuron.Optimise.Algodiff.t -> Neuron.Optimise.Algodiff.t) ->
node ->
nodeval lambda_array :
?name:string ->
?act_typ:Neuron.Activation.typ ->
int array ->
(Neuron.Optimise.Algodiff.t array -> Neuron.Optimise.Algodiff.t) ->
node array ->
nodeval add : ?name:string -> ?act_typ:Neuron.Activation.typ -> node array -> nodeval mul : ?name:string -> ?act_typ:Neuron.Activation.typ -> node array -> nodeval dot : ?name:string -> ?act_typ:Neuron.Activation.typ -> node array -> nodeval max : ?name:string -> ?act_typ:Neuron.Activation.typ -> node array -> nodeval average :
?name:string ->
?act_typ:Neuron.Activation.typ ->
node array ->
nodeval concatenate :
?name:string ->
?act_typ:Neuron.Activation.typ ->
int ->
node array ->
nodeval to_string : network -> stringval pp_network : Stdlib.Format.formatter -> network -> unitval print : network -> unitval save : ?unsafe:bool -> network -> string -> unitval load : string -> networkval save_weights : network -> string -> unitval load_weights : network -> string -> unitval train_generic :
?state:Neuron.Optimise.Checkpoint.state ->
?params:Neuron.Optimise.Params.typ ->
?init_model:bool ->
network ->
Neuron.Optimise.Algodiff.t ->
Neuron.Optimise.Algodiff.t ->
Neuron.Optimise.Checkpoint.stateval train :
?state:Neuron.Optimise.Checkpoint.state ->
?params:Neuron.Optimise.Params.typ ->
?init_model:bool ->
network ->
Neuron.Optimise.Algodiff.A.arr ->
Neuron.Optimise.Algodiff.A.arr ->
Neuron.Optimise.Checkpoint.state