Java自然语言处理(原书第2版)
作者:【美】理查德·M. 里斯(Richard M. Reese),【印】艾希什辛格·巴蒂亚(AshishSingh Bhatia)
出版日期:2020年06月
文件大小:70.38M
支持设备:
¥50.00
适用客户端:
言商书局
iPad/iPhone客户端:下载 Android客户端:下载PC客户端:下载更多详情:查看
?对图书下载、阅读卡购买有疑问:立即进入帮助中心>>
图书简介
目录
本书将教会读者如何在Java库的帮助下执行语言分析,同时不断地从结果中获得见解。首先介绍NLP及其各种概念是如何工作的,然后探索Java中用于NLP的重要工具和库,如CoreNLP、OpenNLP、Neuroph、Mallet等。之后,读者将开始对不同的输入和任务执行NLP,例如标记、模型训练、部分语音、解析树等。读者会学习到统计机器翻译、摘要、对话系统、复杂搜索、有监督和无监督的NLP,以及其他内容。在本书的最后,读者也会学习到更多关于NLP、神经网络和其他各种Java中用于增强NLP应用程序性能的训练模型。
译者序
前言
作者简介
审校者简介
第1章 NLP概论
1.1 NLP是什么
1.2 为什么使用NLP
1.3 为什么NLP这么难
1.4 NLP工具汇总
1.4.1 Apache OpenNLP
1.4.2 Stanford NLP
1.4.3 LingPipe
1.4.4 GATE
1.4.5 UIMA
1.4.6 Apache Lucene Core
1.5 Java深度学习
1.6 文本处理任务概述
1.6.1 查找文本的各部分
1.6.2 文本断句
1.6.3 特征工程
1.6.4 查找人物和事件
1.6.5 词性判断
1.6.6 对文本和文档进行分类
1.6.7 关系提取
1.6.8 使用组合方法
1.7 理解NLP方法
1.7.1 识别任务
1.7.2 选择模型
1.7.3 建立并训练模型
1.7.4 验证模型
1.7.5 运用模型
1.8 准备数据
1.9 总结
第2章 查找文本的各部分
2.1 理解文章的各个部分
2.2 分词是什么
2.3 简单的Java分词器
2.3.1 使用Scanner类
2.3.2 使用split方法
2.3.3 使用BreakIterator类
2.3.4 使用StreamTokenizer类
2.3.5 使用StringTokenizer类
2.3.6 Java核心分词的性能考虑
2.4 NLP分词器API
2.4.1 使用OpenNLPTokenizer类
2.4.2 使用Stanford分词器
2.4.3 训练分词器找出文本的各部分
2.4.4 分词器比较
2.5 了解规范化
2.5.1 转换成小写
2.5.2 删除停用词
2.5.3 使用词干分析
2.5.4 使用词元化
2.5.5 使用管道进行标准化处理
2.6 总结
第3章 文本断句
3.1 SBD方法
3.2 SBD难在何处
3.3 理解LingPipe的HeuristicSentenceModel类的SBD规则
3.4 简单的Java SBD
3.4.1 使用正则表达式
3.4.2 使用BreakIterator类
3.5 使用NLP API
3.5.1 使用OpenNLP
3.5.2 使用Stanford API
3.5.3 使用LingPipe
3.6 训练文本断句模型
3.6.1 使用训练好的模型
3.6.2 使用SentenceDetectorEvaluator类评估模型
3.7 总结
第4章 人物识别
4.1 NER难在何处
4.2 NER方法
4.2.1 列表和正则表达式
4.2.2 统计分类器
4.3 使用正则表达式进行NER
4.3.1 使用Java的正则表达式来寻找实体
4.3.2 使用LingPipe的RegExChunker类
4.4 使用NLP API
4.4.1 使用OpenNLP进行NER
4.4.2 使用Stanford API进行NER
4.4.3 使用LingPipe进行NER
4.5 使用NER注释工具构建新数据集
4.6 训练模型
4.7 总结
第5章 词性判断
5.1 词性标注
5.1.1 词性标注器的重要性
5.1.2 词性标注难在何处
5.2 使用NLP API
5.2.1 使用OpenNLP POS标注器
5.2.2 使用 Stanford POS标注器
5.2.3 使用LingPipe POS标注器
5.2.4 训练OpenNLP POSModel
5.3 总结
第6章 用特征表示文本
6.1 n-gram
6.2 词嵌入
6.3 GloVe
6.4 word2vec
6.5 降维
6.6 主成分分析
6.7 t-SNE
6.8 总结
第7章 信息检索
7.1 布尔检索
7.2 字典和容错性检索
7.2.1 通配符查询
7.2.2 拼写校正
7.2.3 Soundex
7.3 向量空间模型
7.4 计分和术语加权
7.5 逆文档频率
7.6 TF-IDF加权
7.7 信息检索系统的评估
7.8 总结
第8章 对文本和文档进行分类
8.1 如何使用分类
8.2 理解情感分析
8.3 文本分类技术
8.4 使用API对文本进行分类
8.4.1 使用OpenNLP
8.4.2 使用Stanford API
8.4.3 使用LingPipe对文本进行分类
8.5 总结
第9章 主题建模
9.1 什么是主题建模
9.2 LDA的基础
9.3 使用MALLET进行主题建模
9.3.1 训练
9.3.2 评价
9.4 总结
第10章 使用解析器提取关系
10.1 关系类型
10.2 理解解析树
10.3 使用提取的关系
10.4 提取关系
10.5 使用NLP API
10.5.1 使用OpenNLP
10.5.2 使用Stanford API
10.5.3 查找共指消解实体
10.6 为问答系统提取关系
10.6.1 查找单词依赖关系
10.6.2 确定问题类型
10.6.3 寻找答案
10.7 总结
第11章 组合管道
11.1 准备数据
11.1.1 使用Boilerpipe从HTML抽取文本
11.1.2 使用POI从Word文档中抽取文本
11.1.3 使用PDFBox从PDF文档抽取文本
11.1.4 使用Apache Tika进行内容分析和抽取
11.2 管道
11.2.1 使用Stanford管道
11.2.2 在Stanford管道中使用多核处理器
11.3 创建用于搜索文本的管道
11.4 总结
第12章 创建一个聊天机器人
12.1 聊天机器人架构
12.2 人工语言网络计算机实体
12.2.1 了解AIML
12.2.2 使用ALICE和AIML开发聊天机器人
12.3 总结