自然语言处理Python进阶 - (EPUB全文下载)
文件大小:0.48 mb。
文件格式:epub 格式。
书籍内容:
自然语言处理Python进阶
第1章 语料库和WordNet
1.2 访问内置语料库
1.3 下载外部语料库,加载并访问
1.4 计算布朗语料库中三种不同类别的特殊疑问词
1.5 探讨网络文本和聊天文本的词频分布
1.6 使用WordNet进行词义消歧
1.7 选择两个不同的同义词集,使用WordNet探讨上位词和下位词的概念
1.8 基于WordNet计算名词、动词、形容词和副词的平均多义性
第2章 针对原始文本,获取源数据和规范化
2.2 字符串操作的重要性
2.3 深入实践字符串操作
2.4 在Python中读取PDF文件
2.5 在Python中读取Word文件
2.6 使用PDF、DOCX和纯文本文件,创建用户自定义的语料库
2.7 读取RSS信息源的内容
2.8 使用BeautifulSoup解析HTML
第3章 预处理
3.2 分词——学习使用NLTK内置的分词器
3.3 词干提取——学习使用NLTK内置的词干提取器
3.4 词形还原——学习使用NLTK中的WordnetLemmatizer函数
3.5 停用词——学习使用停用词语料库及其应用
3.6 编辑距离——编写计算两个字符串之间编辑距离的算法
3.7 处理两篇短文并提取共有词汇
第4章 正则表达式
4.2 正则表达式——学习使用*、+和?
4.3 正则表达式——学习使用$和^,以及如何在单词内部(非开头与结尾处)进行模式匹配
4.4 匹配多个字符串和子字符串
4.5 学习创建日期正则表达式和一组字符集合或字符范围
4.6 查找句子中所有长度为5的单词,并进行缩写
4.7 学习编写基于正则表达式的分词器
4.8 学习编写基于正则表达式的词干提取器
第5章 词性标注和文法
5.2 使用内置的词性标注器
5.3 编写你的词性标注器
5.4 训练你的词性标注器
5.5 学习编写你的文法
5.6 编写基于概率的上下文无关文法
5.7 编写递归的上下文无关文法
第6章 分块、句法分析、依存分析
6.2 使用内置的分块器
6.3 编写你的简单分块器
6.4 训练分块器
6.5 递归下降句法分析
6.6 shift-reduce句法分析
6.7 依存句法分析和主观依存分析
6.8 线图句法分析
第7章 信息抽取和文本分类
7.2 使用内置的命名实体识别工具
7.3 创建字典、逆序字典和使用字典
7.4 特征集合选择
7.5 利用分类器分割句子
7.6 文本分类
7.7 利用上下文进行词性标注
第8章 高阶自然语言处理实践
8.2 创建一条自然语言处理管道
8.3 解决文本相似度问题
8.4 主题识别
8.5 文本摘要
8.6 指代消解
8.7 词义消歧
8.8 情感分析
8.9 高阶情感分析
8.10 创建一个对话助手或聊天机器人
第9章 深度学习在自然语言处理中的应用
9.2 利用深度神经网络对电子邮件进行分类
9.3 使用一维卷积网络进行IMDB情感分类
9.4 基于双向LSTM的IMDB情感分类模型
9.5 利用词向量实现高维词在二维空间的可视化
第10章 深度学习在自然语言处理中的高级应用
10.2 基于莎士比亚的著作使用LSTM技术自动生成文本
10.3 基于记忆网络的情景数据问答
10.4 使用循环神经网络LSTM进行语言建模以预测最优词
10.5 使用循环神经网络LSTM构建生成式聊天机器人
第1章 语料库和WordNet
1.1 引言
解决任何实际的自然语言处理(NLP)问题,都需要处理大量的数据。这些数据通常以公开语料库的形式存在,并可以由NLTK数据包的附加组件提供。例如,如果要创建一个拼写检查器,需要用一个大型单词语料库进行匹配。
本章将涵盖以下内容:
·介绍NLTK提供的各种有用的文本语料库
·如何用Python访问内置语料库
·计算频率分布
·WordNet及其词法特征介绍
我们将通过实践的方式来理解这些内容。下面我们会进行一些练习,通过实例来完成这些学习目标。
1.2 访问内置语料库
如前所述,NLTK有许多可供使用的语料库。这里假设你已经在计算机上完成了NLTK数据库的下载和安装。如果没有,你可以通过网址http://www.nltk.org/data.html下载。此外,NLTK数据库内的完整语料库列表可以通过网址http://www.nltk.org/nltk_data/获取。
现在,我们的第一个任务/实例是学习如何访问这些语料库。我们在路透社语料库(Reuters corpus)上做一些实验。将语料库导入我们的程序中,并尝试用不同的方式进行访问。
如何实现
1.创建一个新文件,将其命名为reuters.py,并在该文件中添加以下代码。这是在整个NLTK数据集中仅访问路透社语料库的特定方式:
2.当我们想知道这个语料库中有什么内容时,最简单的方法是调用语料库对象中的fileids()函数。在程序中添加以下代码:
3.运行该程序,将得到如下输出:
这些是路透社语料库中的文件列表和它们的相对路径。
4.访问这些文件的具体内容。使用语料库对象的words()函数来访问test/16097文件:
5.再次运行该程序,会出现一行新的输出内容:
输出了test/16097文件中的单词列表。虽然整个单词列表被加载到内存对象中,此处仅输出部分结果。
6.从test/16097文件中获取特定数量的单词(例如20个)。当然,我们可以指定想要获取的单词数,并将其存储在列表中以供使用。添加如下两行代码:
运行代码,输出结果如下:
7.进一步,路透社语料库不仅仅是一个文件列表,而且还被按层次分成90个主题。每个主题都有许多与之关联的文件。也就是说,当你访问任何一个主题时,实际上访问的是与该主题相关的所有文件的集合。添加如下代码以输出主题列表:
运行代码,输出控制台将有如下输出:
显示了所有的90个类别。
8.最后,编写四行简单的代码,这不仅可以访问两个主题,还可以将单词以一行一个句子这样松散的方式打印出来。将以下代码添加到Python文件中:
............
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » 自然语言处理Python进阶 - (EPUB全文下载)