1. A computer-implemented method of assessing pronunciation difficulties of a non-native speaker, the method comprising: determining one or more sources of pronunciation difficulties between a language of a non-native speaker and a second language; assigning a weight to each source; calculating using a processor a phonetic difficulty score based on the one or more sources and the weight assigned to each source; calculating using the processor a language model score based on a sound comparison between the language of the non-native speaker and the second language, including calculating a language model for the language of the non-native speaker and the second language and calculating a cross-entropy of an utterance with respect to the language model of the language of the non-native speaker inversely weighted by the cross-entropy of the utterance with respect to the language model of the second language, wherein calculating the cross-entropy of an utterance with respect to the language model of the language of the non-native speaker comprises assigning a lower score to utterances of the second language that are similar to sounds of the language of the non-native speaker, and assigning a higher score to utterances of the second language that are not similar to sounds of the language of the non-native speaker; normalizing using the processor the phonetic difficulty score and the language model score; and calculating a metric from the normalized phonetic difficulty score and the normalized language model score.