1. A method for dynamically learning new pronunciations for speech recognition assisted by subsequent user inputs, the method comprising: determining that a task initiated by a spoken utterance was not completed successfully; determining that a recognition result for the spoken utterance includes a misrecognized word based on the determination that the task initiated by the recognition result was not completed successfully; determining that a subsequent task initiated by subsequent user inputs was completed successfully; associating the spoken utterance with the subsequent user inputs based on similarity between the spoken utterance and the subsequent user inputs; after associating the spoken utterance with the subsequent user inputs based on similarity between the spoken utterance and the subsequent user inputs, generating hypothetical pronunciations for the misrecognized word in the spoken utterance based on a predicted intended word derived from the associated subsequent user inputs; recognizing the spoken utterance using a language model containing the hypothetical pronunciations to find matching hypothetical pronunciations; and accepting a new pronunciation for the predicted intended word from the matching hypothetical pronunciations.