Module Owl_neural_parallel.Make

Parameters

module M : ModelSig
module E : EngineSig

Signature

type task = {
  1. mutable id : int;
  2. mutable state : Owl_optimise.S.Checkpoint.state option;
  3. mutable params : Owl_optimise.S.Params.typ;
  4. mutable model : M.network;
  5. mutable data_x : Owl_algodiff.S.t;
  6. mutable data_y : Owl_algodiff.S.t;
}
val delta_model : M.network -> M.network -> unit
val local_model : task -> 'a
val schedule : task -> 'a list -> ('b * (int * 'c) list) list
val pull : task -> ('a * M.network) list -> ('b * 'c) list
val push : task -> 'a -> ('b * M.network) list -> ('c * 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