let log_loss y y' = let z = MX.map (fun x -> if x > 18. then exp (-1. *. x) else if x < (-18.) then (-1. *. x) else log (1. +. exp(-1. *. x)) ) MX.(y *@ y') in MX.average_rows z