1. A method for training a deep neural network, comprising: receiving, using at least one processor operatively coupled to a memory of a computer system, speech data for the training; formatting, using the at least one processor, the speech data for the training; dividing, using the at least one processor, the speech data into a plurality of subsets; performing, using the at least one processor, Hessian-free sequence training on a first subset of the plurality of subsets of the speech data; iteratively performing, using the at least one processor, the Hessian-free sequence training on successive subsets of the plurality of subsets of the speech data; wherein iteratively performing the Hessian-free sequence training comprises: processing the first subset of the speech data to generate a first gradient of loss in a first iteration; processing a successive subset of the speech data to generate a second gradient of loss in a second iteration; dynamically computing weights for the first gradient of loss and for the second gradient of loss; and reusing gradient information from at least one previous iteration, wherein reusing the gradient information from the at least one previous iteration comprises integrating a weighted first gradient of loss and a weighted second gradient of loss to generate a solution to the second iteration; and transmitting, using the at least one processor, a result of the iterative performance of the Hessian-free sequence training to the deep neural network.