1. A speech recognition apparatus comprising: a primary speech recognition unit configured to perform speech recognition on input speech and thus to generate word lattice information; a word string generation unit configured to generate one or more word strings based on the word lattice information; a language model score calculation unit configured to calculate bidirectional language model scores of the generated word strings selectively using forward and backward language models for each of words in each of the generated word strings; and a sentence output unit configured to output one or more of the generated word strings with high scores as results of the speech recognition of the input speech based on the calculated bidirectional language model scores.