我正在做一个约会书项目,我的主要想法是用“ngram”来做。我在这里输入http://books.google.com/ngrams,我发现 ngrams 具有最明确的图表(多年来的值不稳定)。然后我在 python 中编写了一个“阅读”书籍的代码——它获取书籍、一些 ngram,然后计算 ngram 在文本上的频率。例如,文本“用爆炸性的大爆炸灭绝所有人类”中的 ngram “ex”将是 0.05263157894736842,因为该文本中有 2 个“ex”,并且有 38 种可能的 2 字母组合,所以我认为 ngram 将是2/38。
所以我对很多 1 克(ABC)的书进行了这个计算,我得到的所有书的数字或多或少都相同。然后我回到谷歌的 ngram,显然我得到的数字和他们得到的数字完全不同。例如,1gram "a" 大约是 0.078,b 是 0.0135 等等,但是 Google 的 ngram 是 [a=1.54] 和 [b=0.0066]...
我得出的结论是我的计算完全错误。现在,我问你ngram 的真实计算是什么。我真的需要理解这一点,所以请,如果你知道这件事是如何工作的,请告诉我。
非常感谢 :)
回答后编辑:我确实得到了比 Google 更高的值,因为我的值是概率(0 到 1),所以如果我想将此值转换为 %,我必须乘以 100,这是有道理的,因为还有更多在英语中,“a”(8%)作为字母比“a”作为单词。