您当前的位置:首页 > IT编程 > 自然语言处理
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 |

自学教程:使用NLTK(python)提取高频单词

51自学网 2023-11-01 20:08:30
  自然语言处理
这篇教程使用NLTK(python)提取高频单词写得很实用,希望能帮到您。

尝试使用NLTK(python)提取高频单词

在阅读NLTK(自然语言工具包)的正式文档时,我尝试提取文档中常用的单词。暂时,我尝试从顶部开始按顺序从示例数据中频繁显示关键字,因此将其保留在备注中。

开发环境

  • Python
  • NLTK

NLTK安装

熟悉其他库,因此请先安装pip。

1
$ pip install nltk

提取高频词

总体流程如下:1)下载功能以获取词性和词性后,2)读取示例文本,将读取的文本转换为单词分隔,3)获取稍后,我们将缩小到名词词的范围,最后,4)仅显示三个最常用的热门词。

下载所需的功能

nltk_test.py

1
2
3
4
import nltk

nltk.download('punkt')
nltk.download('averaged_perceptron_tagger')

导入

nltk之后,从官方网站下载将单词和词性划分的功能。一旦在环境中下载,则无需进一步下载。尝试下载它时,出现类似Package punkt is already up-to-date!的警报。

获取示例文本并将其转换为单词分隔的

nltk_test.py

1
2
3
4
5
raw = open('sample.txt').read()
tokens = nltk.word_tokenize(raw)
text = nltk.Text(tokens)

tokens_l = [w.lower() for w in tokens]

提前准备英语文章和一长串句子。 (Sample.txt)阅读此内容后,将其转换为用word_tokenize()分隔的单词。之后,如果小写字母和大写字母之间存在差异,为了使它们识别相同,所有小写字母都被用来识别相同的事物。

获得词性后仅提取名词

nltk_test.py

1
2
3
only_nn = [x for (x,y) in pos if y in ('NN')]

freq = nltk.FreqDist(only_nn)

仅提取与

 

 

NN(名词)相对应的语音部分,并使用FreDist计算频率分布,并计算频繁出现的次数。

显示前3名

nltk_test.py

1
print(freq.most_common(3))

使用函数most_common()完成显示,该函数计算Python的出现次数并从最大的angular开始显示。


返回列表
处理数据不平衡(文本分类)
51自学网自学EXCEL、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。
京ICP备13026421号-1