当前位置:   article > 正文

python nlp_将Python用于NLP:Pattern 库简介

pattern库

Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发。

这是我有关使用Python进行自然语言处理系列文章中的第八篇。在上一篇文章中,我解释了如何使用Python的TextBlob库来执行各种NLP任务,从分词到词性标注,从文本分类到情感分析。在本文中,我们将探索Python的Pattern库,这是另一个非常有用的自然语言处理库。

Pattern库是一个多用途的库,它可以处理以下任务:

自然语言处理: 执行诸如标记、词干提取、词性标注、情感分析等任务。

数据挖掘: 它包含从Twitter、Facebook、Wikipedia等网站挖掘数据的API。

机器学习: 它包含SVM、KNN、感知机等机器学习模型,可用于分类、回归和聚类任务。

在本文中,我们将看一下上述列表中关于Pattern库用途的前两个的应用实例。我们将通过执行标记、词干提取和情感分析等任务来探索用于NLP的Pattern库的用法。我们还将看到如何将Pattern库用于web数据挖掘。

安装

你可以使用以下pip命令来安装这个库:

7d171d94d55740e989302dae540b344f.jpg

或者,如果你使用的是Python的Anaconda发布版的话,你可以使用以下Anaconda命令去下载这个库:

31c7721471c34504a58006fbb6c0f09c.jpg

用于NLP的Pattern 库函数

在本节,我们将看一些Pattern库的NLP应用实例。

标记, 词性标注,和分块

在NLTK和spaCy库中,我们有一个单独的函数用于标记、词性标注和在文本文档中查找名词短语。相反,在Pattern库中有一个多用途的parse方法,它接受一个文本字符串作为输入参数,并返回字符串中相应的标记和词性标注。

parse方法还会告诉我们一个标记是名词短语还是动词短语、主语还是宾语。你还可以通过将lemmata参数设置为True来检索词元化的标记。parse方法的语法以及不同参数的默认值如下:

7f06c04c26e749a7bca505a8fe09c4e5.jpg

我们来实际查看一下 parse 方法:

d2cddef0aa704a61a17cd782b58614e7.jpg

要使用parse方法,你必须从pattern库导入en模块。en模块包含英语NLP函数。如果你使用pprint方法在控制台上打印parse方法的输出,你将会看到如下输出:

105b42a529fe49feb3e84c8b757e5ea4.jpg

在输出中,你可以看到标记化的单词及其词性标注、该标记所属的块和角色。你还会看到这些标记的词元化形式。

如果你对parse方法返回的对象调用split方法,输出将是一个句子的列表,其中每个句子都是一个标记列表,每个标记都是一个单词列表,以及与单词关联的标记。

例如,看看下面的脚本:

612b921c7e304aa2993ae1fb7d5f0e9c.jpg

上面脚本的输出如下:

d655d3a9e01841ada13722b36413ca54.jpg

复数化和单数化标记

pluralize 和 singularize 方法可分别用于将单数形式单词转换为复数形式,反之亦然。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/343440?site
推荐阅读
相关标签
  

闽ICP备14008679号