1. A computer-implemented method comprising: receiving, by the one or more computing devices, an image containing characters associated with character sequences; processing, by the one or more computing devices, the received image using a trained neural network, wherein the trained neural network has been trained on a plurality of training images to predict character sequences in images by maximizing log P(S|X), wherein X represents an input image and S represents an output sequence of characters for the input image; and the plurality of training images each contain a sequence of characters having a character sequence length that is greater than 1, wherein each character in the character sequence is a discrete variable having a finite number of multiple possible values; and generating, by the one or more computing devices, with the trained neural network a predicted sequence of characters based at least in part on the processing of the received image.