Improving training time of Hessian-free optimization for deep neural networks using preconditioning and sampling