作品简介

本书将教会读者如何在Java库的帮助下执行语言分析,同时不断地从结果中获得见解。首先介绍NLP及其各种概念是如何工作的,然后探索Java中用于NLP的重要工具和库,如CoreNLP、OpenNLP、Neuroph、Mallet等。之后,读者将开始对不同的输入和任务执行NLP,例如标记、模型训练、部分语音、解析树等。读者会学习到统计机器翻译、摘要、对话系统、复杂搜索、有监督和无监督的NLP,以及其他内容。在本书的最后,读者也会学习到更多关于NLP、神经网络和其他各种Java中用于增强NLP应用程序性能的训练模型。

理查德·M.里斯(Richard M.Reese)

曾就职于学术界和工业界。他曾在电话和航天工业工作17年,其间曾担任研发、软件开发、监督和培训等多个职位。他目前任教于塔尔顿州立大学。Richard曾出版多本关于Java和C指针的书籍,他使用浅显易懂的方法讲授相关主题,他的Java书涵盖EJB3.1、Java7和8的新功能、认证、函数式编程和jMonkey Engine,及自然语言处理。

艾希什辛格·巴蒂亚(AshishSingh Bhatia)

是学习者、读者、探索者和开发者。他在不同的领域(包括银行、ERP和教育)有超过10年的IT经验,并对Python、Java、R、Web和移动开发一直充满热情。他总是准备探索新技术。

作品目录

  • 译者序
  • 前言
  • 作者简介
  • 审校者简介
  • 第一章 NPL概论
  • 1.1 NLP是什么
  • 1.2 为什么使用NLP
  • 1.3 为什么NLP这么难
  • 1.4 NLP工具汇总
  • 1.5 Java深度学习
  • 1.6 文本处理任务概述
  • 1.7 理解NLP方法
  • 1.8 准备数据
  • 1.9 总结
  • 第二章 查找文本的各部分
  • 2.1 理解文章的各个部分
  • 2.2 分词是什么
  • 2.3 简单的Java分词器
  • 2.4 NLP分词器API
  • 2.5 了解规范化
  • 2.6 总结
  • 第三章 文本断句
  • 3.1 SBD方法
  • 3.2 SBD难在何处
  • 3.3 理解LingPipe的HeuristicSentenceModel类的SBD规则
  • 3.4 简单的Java SBD
  • 3.5 使用NLP API
  • 3.6 训练文本断句模型
  • 3.7 总结
  • 第四章 人物识别
  • 4.1 NER难在何处
  • 4.2 NER方法
  • 4.3 使用正则表达式进行NER
  • 4.4 使用NLP API
  • 4.5 使用NER注释工具构建新数据集
  • 4.6 训练模型
  • 4.7 总结
  • 第五章 词性判断
  • 5.1 词性标注
  • 5.2 使用NLP API
  • 5.3 总结
  • 第六章 用特征表示文本
  • 6.1 n-gram
  • 6.2 词嵌入
  • 6.3 GloVe
  • 6.4 word2vec
  • 6.5 降维
  • 6.6 主成分分析
  • 6.7 t-SNE
  • 6.8 总结
  • 第七章 信息检索
  • 7.1 布尔检索
  • 7.2 字典和容错性检索
  • 7.3 向量空间模型
  • 7.4 计分和术语加权
  • 7.5 逆文档频率
  • 7.6 TF-IDF加权
  • 7.7 信息检索系统的评估
  • 7.8 总结
  • 第八章 对文本和文档进行分类
  • 8.1 如何使用分类
  • 8.2 理解情感分析
  • 8.3 文本分类技术
  • 8.4 使用API对文本进行分类
  • 8.5 总结
  • 第九章 主题建模
  • 9.1 什么是主题建模
  • 9.2 LDA的基础
  • 9.3 使用MALLET进行主题建模
  • 9.4 总结
  • 第十章 使用解析器提取关系
  • 10.1 关系类型
  • 10.2 理解解析树
  • 10.3 使用提取的关系
  • 10.4 提取关系
  • 10.5 使用NLP API
  • 10.6 为问答系统提取关系
  • 10.7 总结
  • 第十一章 组合管道
  • 11.1 准备数据
  • 11.2 管道
  • 11.3 创建用于搜索文本的管道
  • 11.4 总结
  • 第十二章 创建一个聊天机器人
  • 12.1 聊天机器人架构
  • 12.2 人工语言网络计算机实体
  • 12.3 总结
展开全部