Если вы читаете примечание 2 в конце страницы 4 цитируемого документа, оно гласит:
Нам нужен конечный символ, чтобы сделать грамматику биграммы истинным распределением вероятности.
При чтении рассматриваемой страницы также становится ясно, что автор выполняет группировку по нграмм, принимая во внимание начальные и конечные символы для каждого предложения, которые называются соответственно <s>
и <\s>
.
Если вы вычисляете распределение униграмм и биграмм в двух предложениях, которые вы предоставили в качестве примера, вы должны сначала добавить начальный и конечный символы, затем сгруппировать по униграммам и биграммам, а затем проверить, не является ли len(bigram[red]) == len(unigram[red])
Если вы используете в качестве регулярного выражения 'w+'
и добавляете начальный и конечный символы, предложенные автором, то два примера предложения будут разбиты на токены следующим образом:
'<s>', 'A', 'ball', 'is', 'red', '<\s>'
'<s>', 'All', 'balls', 'are', 'red', '<\s>'
Биграммы, начинающиеся с «красный», («красный», «<\ s>») в предложении 1 и снова («красный», «<\ s> ') в предложении 2, всего 2 биграммы , Символы, содержащие «красный», - это («красный») в предложении 1 и еще раз («красный») в предложении 2, всего два символа.
Таким образом, общее количество униграмм, содержащих «красный», совпадает с количеством биграмм, первым элементом которых является «красный».