Python 二元组
文本中的一对连续单词称为二元组。 这些通常用于统计语言处理,也用于识别文本中最常见的单词。
双字母组可用于查找文本中最常见的单词,也可用于生成新文本。 例如,I like 和 like to 的二元组可以用来造句 I like to eat。
Python 中的二元组
您可以使用 NLTK 库在 Python 的文本中查找二元语法。 这个库有一个名为 bigrams() 的函数,它接受一个单词列表作为输入并返回一个 bigrams 列表。
双字母组也可用于提高语言模型的准确性。 语言模型用于预测文本中的下一个单词,而二元组可用于提高这些预测的准确性。
那么,二元语法适合做什么? 双字母组可用于各种任务,包括查找文本中最常见的单词、生成新文本以及提高语言模型的准确性。
示例代码:
ans = []
text = ['cant railway station','citadel hotel',' police stn']
for line in text:
arr = line.split()
for i in range(len(arr)-1):
ans.append([[arr[i]], [arr[i+1]]])
print(ans)
输出:
[[['cant'], ['railway']], [['railway'], ['station']], [['citadel'], ['hotel']], [['police'], ['stn']]]
从 Python 中的单词列表形成双字母组
双字母组用于通常在文本中一起出现的一对单词。 要形成双字母组,我们首先需要将文本标记化为单词列表。
然后,我们可以从列表中迭代,对于每个单词,检查它之前的单词是否也在列表中。 如果是这样,我们将这两个词添加到二元组列表中。
这些是在 Python 中形成二元语法的核心步骤。
- 要形成双字母组,我们需要创建一个词汇表。
- 我们需要为我们的语料库获取一个句子列表。
- 最后,我们将创建语料库中所有可用单词的二元组。
双字母组有助于语言建模,因为它们可以让我们更好地了解某些单词一起出现的可能性。 您还可以将它们用于其他任务,例如拼写检查和信息检索。
Python 提供了一种从单词列表中形成二元组的简单方法。 bigrams() 函数将接受一个单词列表并返回一个 bigrams 列表; 每个二元组都是两个单词的元组。
例如,如果我们有一个单词列表 ['I', 'love', 'python'],bigrams() 函数将返回 [('I', 'love'), ('love', 'python' )]。
示例代码:
text = ["this is a sentence", "so is this one"]
bigrams = [b for l in text for b in zip(l.split(" ")[:-1], l.split(" ")[1:])]
print(bigrams)
输出:
[('this', 'is'), ('is', 'a'), ('a', 'sentence'), ('so', 'is'), ('is', 'this'), ('this', 'one')]
使用 NLTK 库在 Python 中形成双字母组 下面的代码展示了如何使用 NLTK 库从单词列表中形成双字母组。 NLTK 是一个流行的 Python 自然语言处理库。
示例代码:
import nltk
words = ['please', 'turn', 'off', 'the', 'light']
bigrams = nltk.bigrams(words)
for bigram in bigrams:
print(bigram)
输出:
('please', 'turn')
('turn', 'off')
('off', 'the')
('the', 'light')
双字母组的优点
在分析文本数据时使用二元语法有一些显着的优势。
- 首先,二元语法可以帮助识别经常一起使用的词,这有助于理解文本的整体含义。
- 此外,二元语法可以为文本分类等预测任务创建更准确的模型。
- 最后,二元语法还有助于降低数据的维度,这在处理大型文本语料库时很有用。
双字母组的缺点
虽然二元语法在某些情况下很有用,但它们也有缺点。
- 一个缺点是它们比其他方法(例如 unigrams)更难计算。
- 双字母组有时会产生不如其他方法准确的结果。
- 最后,二元语法比其他方法更难解释,因此更难理解结果的含义。
总结
双字母组和三字母组可以捕获文本中单词的共现和并置模式。 例如,二元组 red wine 很可能出现在有关葡萄酒的文本中,而三元组 the red wine 很可能出现在有关品酒的文本中。
这些模式可以帮助识别文本的主题或生成与给定文本相似的新文本。
相关文章
Django 中的 Slug
发布时间:2023/05/04 浏览次数:173 分类:Python
-
本篇文章旨在定义一个 slug 以及我们如何使用 slug 字段在 Python 中使用 Django 获得独特的帖子。
在 Django 中按降序过滤查询集中的项目
发布时间:2023/05/04 浏览次数:157 分类:Python
-
在这个讲解中,学习如何借助 Django 中的 order_by() 方法按降序过滤出查询集中的项目。
Django ALLOWED_HOSTS 介绍
发布时间:2023/05/04 浏览次数:181 分类:Python
-
本文展示了如何创建您的 Django 网站,为公开发布做好准备,如何设置 ALLOWED_HOSTS 以及如何在使用 Django 进行 Web 部署期间修复预期的主要问题。
Django 中的 Select_related 方法
发布时间:2023/05/04 浏览次数:129 分类:Python
-
本文介绍了什么是查询集,如何处理这些查询以及我们如何利用 select_related() 方法来过滤 Django 中相关模型的查询。
使用 Post 请求将数据发送到 Django 服务器
发布时间:2023/05/04 浏览次数:159 分类:Python
-
在这篇关于Django的讲解中,我们简要介绍了post和get请求以及如何在Django中用post实现CSRF token。
Django 返回 JSON
发布时间:2023/05/04 浏览次数:106 分类:Python
-
在与我们的讨论中,我们简要介绍了 JSON 格式,并讨论了如何借助 Django 中的 JsonResponse 类将数据返回为 JSON 格式。
在 Django 中创建对象
发布时间:2023/05/04 浏览次数:59 分类:Python
-
本文的目的是解释什么是模型以及如何使用 create() 方法创建对象,并了解如何在 Django 中使用 save() 方法。
在 Django 中为多项选择创建字段
发布时间:2023/05/04 浏览次数:75 分类:Python
-
在本文中,我们将着眼于为多项选择创建一个字段,并向您展示如何允许用户在 Django 中进行多项选择。