python - 给定一个带有空格的英语句子,我如何在 python 中估计特定单词适合该空格的概率?

标签 python nlp data-science word-embedding

假设我们在 python3 中有一个带有空格的句子,如下所示:

sentence =“明天我想去_______。”

我们想从单词池中找出哪个单词更有可能出现在空白处:

pool_of_words = ['吃', '玩', '思考', '慢跑']

问题:如何估计池中每个单词出现在该空白处的概率?

示例: 我猜想解决方案可能是概率函数的形式,它会给出类似于下面示例的内容。我怎样才能建立这样的功能?

概率('慢跑')= 0.98

概率('吃')= 0.81

概率('思考')= 0.2

提前非常感谢。

最佳答案

您应该阅读语言模型。解决这个问题有不同的方法,从简单的 n-gram 模型开始,计算语料库中单词序列出现的次数,然后根据在语料库中发现的分布来估计下一个单词的可能性。您还可以使用不同复杂度的神经网络来解决这个问题,我认为这对于初学者来说可能有点困难。

查看这篇文章,它包含两种方法的 python 示例代码。

“用 Python 构建自己的语言模型的综合指南!”作者:Mohd Sanad Zaki Rizvi https://link.medium.com/s7zzcsKie2

关于python - 给定一个带有空格的英语句子,我如何在 python 中估计特定单词适合该空格的概率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59225753/

相关文章:

python - 如何加快 Spacy 的 nlp 调用?

python - 如何在spaCy中强制使用某个标签?

python - 如何列出属于一组范围内的所有数字对?

Python 随机样本,有异常

python - 将包含十六进制行的多类型系列转换为 ascii

python-3.x - 需要构建自定义 NER 的方法,以便从任何格式的工资单中提取以下关键字

python - 我想在我的数据框中创建一个新列,即每个特定行的犯罪率

python-3.x - 如何删除数据框中空值数量超过 x 的行?

python - 如何在 ubuntu 上安装密码学?

python - 使用 openpyxl 写入一列