《自然语言处理技术》——实训7 自动提取文本关键词.docx
《《自然语言处理技术》——实训7 自动提取文本关键词.docx》由会员分享,可在线阅读,更多相关《《自然语言处理技术》——实训7 自动提取文本关键词.docx(7页珍藏版)》请在三一文库上搜索。
1、项目2初识文本基础处理自动提取文本关键词1实训目标(1) 掌握读取文档的方法。(2) 掌握自定义StoP_WOrdS函数获取停用词列表,自定义Filter_word函数处理文档的方法。(3) 掌握使用TF-IDF算法对关键词进行提取的方法。2实训环境环境版本说明Windows1064电脑操作系统Python3.8.5Python语言版本pandas1.3.0主要用于数据读取、清洗等操作NumPy1.21.6主要用于Python中的数值计算jieba0.42.1主要用于文本分词Gensim4.2.0主要用于检索文本、计算文本相似度、训练词向量、建模主题等MatpIotlib3.3.0主要用于数据
2、可视化PaddlePaddle2.4.2是一个深度学习框架,提供了高效的计算框架和优化算法PaddlcSpeech1.2.0主要用于语音和音频中的各种关键任务的开发scikit-learn1.0.2广泛地用于统计分析和机器学习建模等数据科学领域Librosa0.8.1主要用于分析一般的音频信号,是一个非常强大的Python语音信号处理的第三方库NLTK3.5是一个常用的自然语言处理工具包,可用于文本处理、语义分析、词性标注等SciPy1.7.3是一个科学计算工具包,可用于数学、科学、工程学等领域pyttsx32.9.0主要用于将文本转换成语音3实训说明自动提取文本关键词任务是指通过计算机自动化
3、地从一篇或多篇文本中提取出最具代表性、最能反映文本主题的关键词或短语。本任务根据TF-IDF算法原理自定义一个TF-IDF算法函数,并通过实例介绍关键词自动提取。关键词提取流程主要包括读取文档、文本预处理和TF-IDF实现等步骤,如图2-1所示。读取文档加载停用词文件文本预处理过滤停用词计算TF-IDF值TF-IDF实现通过函数实现关键词提取图2-1提取文本关键词具体步骤4实训步骤4.1 读取文档本任务以嫦娥五号的相关新闻为例,进行文档读取。读取文档,如代码2-1所示。代码2-1读取文档defread_txt_file(file_path):”读取txt文件,返回文件内容”withopen(f
4、ile_path,r,encoding-utf-8)asf:#file_path:文件路径content=f.read()returncontentfile_path=,.datainput.txtcontent=read_txt_file(file_path)print(content)运行读取文档代码,得到的文档内容如下。嫦娥五号实现我国首次地外天体起飞科技日报北京12月3日电(李晨记者付毅飞)记者从国家航天局获悉,12月3日23时10分,嫦娥五号上升器3000牛发动机工作约6分钟,成功将携带样品的上升器送入到预定环月轨道。这是我国首次实现地外天体起飞。与地面起飞不同,嫦娥五号上升器月面起
5、飞不具备成熟的发射塔架系统,着陆器相当于上升器的“临时塔架”,上升器起飞存在起飞初始基准与起飞平台姿态不确定、发动机羽流导流空间受限、地月环境差异等问题。另外由于月球上没有导航星座,上升器起飞后,需在地面测控辅助下,借助自身携带的特殊敏感器实现自主定位、定姿。点火起飞前,着上组合体实现月面国旗展开以及上升器、着陆器的解锁分离。此次国旗展开是我国在月球表面首次实现国旗的“独立展示”。点火起飞后,上升器经历垂直上升、姿态调整和轨道射入三个阶段,进入预定环月飞行轨道。随后,上升器将与环月等待的轨返组合体交会对接,将月球样品转移到返回器,后者将等待合适的月地入射窗口,做好返回地球的准备。4.2 文本预
6、处理读入需要提取关键字的文档之后,需要进行预处理。文本预处理包括加载停用词、对当前文档进行分词和词性标注,以及过滤一些对提取关键词帮助不大的词。在本步骤中,只将名词作为候选关键词,在过滤词中只留下名词,并且删除长度小于或等于1的无意义词语。文本预处理的具体步骤如图2-2所示。获取停用词列表过漉停用词图2-2文本预处理具体步骤1 .获取停用词列表加载停用词文件stopword.txt并按行读取文件中的停用词,对文本中多余的换行符进行替换,最终获取停用词列表。其中,自定义StOP_WordS函数用于获取停用词列表。加载停用词文件stopword.txt,如代码2-2所示。代码2-2加载停用词文件s
7、topword.txtdefStop_words():# 创建一个空列表,用于存储停用词stopword=data=# 打开停用词文件f=open(,.datastopword.txt,)# 逐行读取文件中的内容forlineinf.readlines():#去除行末的换行符,并将处理后的字符串添加到dala列表中data.append(line.strip()#将data列表中的字符串添加到StOPWord列表中foriindata:#去除字符串末尾的换行符,并将处理后的字符串添加到StOPWord列表中output=i.replace(n,)stopword.append(output)#
8、返回停用词列表returnstopword#调用Stop_words函数,并输出停用词列表PrintC停用词列表(前5个):n,Stop_words()0:5)运行加载停用词文件代码,得到停用词列表的前5个元素如下,主要包括标点符号。停用词列表(前5个):rufeff2.过滤停用词对当前文档过滤停用词。自定义FilteJWord函数用于对当前文档进行处理,输入参数为当前文档内容。处理后的文档存放在filter_word变量中,它是一个包含多个字符串的列表。过滤停用词如代码2-3所示。代码2-3过滤停用词#采用jieba进行词性标注,对当前文档过滤词和停用词importjieba.possegd
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自然语言处理技术 自然语言处理技术实训7 自动提取文本关键词 自然语言 处理 技术 实训 自动 提取 文本 关键词
