Module Owl_neural_parallel.Make

Parameters

Signature

type task = {
mutable id : int;
mutable state : Owl_optimise.S.Checkpoint.state option;
mutable params : Owl_optimise.S.Params.typ;
mutable model : M.network;
mutable data_x : Owl_algodiff.S.t;
mutable data_y : Owl_algodiff.S.t;
}
val make_task : int -> Owl_optimise.S.Params.typ -> M.network -> Owl_algodiff.S.t -> Owl_algodiff.S.t -> task
val delta_model : M.network -> M.network -> unit
val local_model : task -> 'a
val schedule : task -> 'a list -> ('a * (int * 'b) list) list
val pull : task -> ('a * M.network) list -> ('a * 'b) list
val push : task -> 'a -> ('b * M.network) list -> ('b * M.network) list
val stop : 'a -> 'b -> bool
val train_generic : ?⁠params:Owl_optimise.S.Params.typ -> M.network -> Owl_algodiff.S.t -> Owl_algodiff.S.t -> string -> string -> unit
val train : ?⁠params:Owl_optimise.S.Params.typ -> M.network -> Owl_algodiff.S.A.arr -> Owl_algodiff.S.A.arr -> string -> string -> unit