A preliminary word-selecting section selects one or more words following words which have been obtained in a word string serving as a candidate for a result of voice recognition; and a matching section calculates acoustic or linguistic scores for the selected words, and forms a word string serving as a candidate for a result of voice recognition according to the scores. A control section generates word-connection relationships between words in the word string serving as a candidate for a result of voice recognition, sends them to a word-connection-information storage section, and stores them in it. A re-evaluation section corrects the word-connection relationships stored in the word-connection-information storage section 16, and the control section determines a word string serving as the result of voice recognition according to the corrected word-connection relationships. <IMAGE>
Language models for speech recognition