NLP7:综合实验

简介: NLP7:综合实验

实验要求

完成对中文搜狗新闻语料库的LDA主题提取。

实验内容

一、训练关键词提取算法

(1)加载已有的文档数据集。

为了解决编码错误,将编码改为GB18030:

能读取的文件数量从17678,增加到了17910。

打印文件内容信息,检查是否正确。

(2)加载停用词表。

(3)对数据集中的文档进行分词。并根据停用词表,过滤干扰词。

1.去除文本中的日期和时间

Demo1:

Demo2:

由于还需去除文本中的数字和英文字符,因此对于2022年1月1日这种字符串,去除“年”、“月”、“日”、“时”、“分”、“秒”即可,即将这些字符加入停用词中。而后发现原有停用词已包含这些字符,因此不需要额外处理。

2.去除文本中的数字和英文字符

Demo:

3.去除停用词

\n没有去除。寻找原因:1.停用词中没有\n,因此先打印停用词列表。

找到问题。如果不想让转义字符生效,需要显示字符串原来的意思,这就要用r和R来定义原始字符串。用了r后,还是存在问题。

使用另一种解决方案,问题得到解决。

最终版本:

其中,当len(words) =0时,不添加到列表。

(4)分词后单词的可视化

可以发现,单个词语和市场出现频率很高。

(5)根据数据集训练算法。

发现词频过高的词语会影响主题判断,因此进行过滤。

pyLDAvis是一个可以帮助用户理解语料库中主题分布的一个可视化工具。 pyLDAvis从训练好的LDA主题模型中提取信息,以通Web的交互式形式将主题分布做可视化的展示。

解决:pip install pyLDAvis==2.1.2

基于TF-IDF的建模:

基于计数的建模:

验证:

预期:

C000007 汽车

C000008 财经

C000010 IT

C000013 健康

C000014 体育

C000016 旅游

C000020 教育

C000022 招聘

C000023 文化

C000024 军事

不太符合。。。后期可以改进。

二、对新文档进行关键词提取

(1)对新文档进行分词。

(2)根据停用词表,过滤干扰词。

(3)根据训练好的算法提取关键词。


目录
相关文章
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
【深度学习】实验18 自然语言处理
【深度学习】实验18 自然语言处理
39 0
|
8月前
|
人工智能 自然语言处理 API
实验:自然语言处理简单实现(二)
实验:自然语言处理简单实现(二)
61 0
|
8月前
|
人工智能 自然语言处理 算法
实验:自然语言处理简单实现(一)
实验:自然语言处理简单实现(一)
77 0
|
9月前
|
自然语言处理 算法
nlp入门之新闻分类实验
本文使用sougouCy数据集,对收集到的新闻数据进行分类
|
弹性计算 自然语言处理 Ubuntu
ECS服务器使用体验之搭建brat平台,实现文本文件的简单标注,助力NLP实验
放假在家,由于疫情无法返校,实验室的服务器又无法实验外网web访问。使用ECS服务器解决了外网访问的麻烦。轻轻松松随时随地任意网络访问IP,实现brat标注顺利进行。
ECS服务器使用体验之搭建brat平台,实现文本文件的简单标注,助力NLP实验
|
人工智能 自然语言处理 Java
|
1天前
|
机器学习/深度学习 自然语言处理
利用深度学习技术改进自然语言处理中的命名实体识别
命名实体识别(Named Entity Recognition, NER)在自然语言处理领域扮演着重要角色,但传统方法在处理复杂语境和多样化实体时存在局限性。本文将探讨如何利用深度学习技术,特别是基于预训练模型的方法,来改进命名实体识别,提高其在现实场景中的性能和适用性。
|
1天前
|
机器学习/深度学习 自然语言处理 监控
利用深度学习技术实现自然语言处理中的情感分析
本文将深入探讨如何利用深度学习技术在自然语言处理领域中实现情感分析。通过介绍情感分析的背景和原理,结合深度学习模型如LSTM、BERT等的应用,帮助读者了解情感分析的重要性以及如何利用最新技术实现更准确的情感识别。
|
1天前
|
机器学习/深度学习 自然语言处理 算法
探索机器学习中的自然语言处理技术
【2月更文挑战第16天】 在数字化和智能化的浪潮中,自然语言处理(NLP)技术已成为连接人类与机器沟通的重要桥梁。本文深入探讨了机器学习在自然语言处理中的应用,包括最新的模型架构、算法优化技巧及实际场景中的挑战和解决方案。通过逻辑严密的分析,我们将揭示如何有效利用机器学习提升NLP系统的性能,同时对未来发展趋势进行预测。
138 0
|
1天前
|
机器学习/深度学习 人工智能 自然语言处理
探索机器学习中的自然语言处理技术
【2月更文挑战第31天】 随着人工智能的飞速发展,自然语言处理(NLP)技术在机器学习领域扮演着越来越重要的角色。本文旨在深入探讨NLP的关键技术,包括语言模型、词嵌入和深度学习方法,并分析这些技术如何相互协作,以实现更高效的文本分析和理解。通过案例研究和最新研究成果的介绍,我们展示了NLP在实际应用中的强大潜力,以及它如何推动人机交互和信息检索系统的革新。
145 0