关于本书的内容有任何问题,请联系 刘博
基础篇 第1章 自然语言处理实践基础 2 1.1 开发环境准备 2 1.1.1 Windows命令行cmd 3 1.1.2 在Windows下使用Java 4 1.1.3 Linux终端 6 1.1.4 在Linux下使用Java 7 1.1.5 Eclipse集成开发环境 8 1.2 技术基础 9 1.2.1 机器学习 9 1.2.2 Java基础 9 1.2.3 信息采集 10 1.2.4 文本挖掘 11 1.2.5 SWIG扩展Java性能 11 1.2.6 代码移植 12 1.2.7 语义 14 1.2.8 Hadoop分布式计算框架 15 1.3 专业术语 18 开发篇 第2章 中文分词原理与实现 20 2.1 接口 20 2.1.1 切分方案 22 2.1.2 词典格式 22 2.2 散列表最长匹配中文分词 23 2.2.1 算法实现 23 2.2.2 使用Ant构建分词jar包 24 2.2.3 使用Maven构建分词jar包 27 2.2.4 使用Gradle构建分词jar包 28 2.2.5 生成JavaDoc 29 2.3 查找词典算法 30 2.3.1 标准Trie树 30 2.3.2 三叉Trie树 33 2.4 Trie树最大长度匹配法 39 2.4.1 正向最大长度匹配法 39 2.4.2 逆向最大长度匹配法 43 2.4.3 有限状态机识别未登录串 47 2.5 概率语言模型的分词方法 53 2.5.1 一元模型 54 2.5.2 整合基于规则的方法 59 2.5.3 表示切分词图 60 2.5.4 形成切分词图 65 2.5.5 数据基础 67 2.5.6 改进一元模型 76 2.5.7 二元词典 78 2.5.8 完全二叉树组 83 2.5.9 三元词典 86 2.5.10 N元模型 86 2.5.11 N元分词 87 2.5.12 生成语言模型 93 2.5.13 评估语言模型 94 2.5.14 概率分词的流程与结构 94 2.5.15 可变长N元分词 95 2.5.16 条件随机场 95 2.6 新词发现 96 2.7 Android系统中文输入法 100 2.8 词性标注 102 2.8.1 数据基础 105 2.8.2 隐马尔可夫模型 106 2.8.3 存储数据 113 2.8.4 统计数据 118 2.8.5 整合切分与词性标注 120 2.8.6 大词表 123 2.8.7 词性序列 123 2.8.8 基于转换的学习方法 123 2.8.9 实现词性标注 125 2.9 词类模型 126 2.10 未登录词识别 127 2.10.1 未登录人名 127 2.10.2 提取候选人名 128 2.10.3 最长人名切分 134 2.10.4 一元概率人名切分 134 2.10.5 二元概率人名切分 136 2.10.6 未登录地名 138 2.10.7 未登录企业名 138 2.11 中文分词总体结构 138 2.12 平滑算法 139 2.12.1 最大熵 142 2.12.2 实现中文分词 146 2.13 地名切分 147 2.13.1 识别未登录地名 147 2.13.2 整体流程 152 2.14 企业名切分 154 2.14.1 识别未登录词 154 2.14.2 整体流程 156 2.15 结果评测 156 2.16 专业术语 157 第3章 语义分析 158 3.1 句法分析树 158 3.2 依存文法 162 3.2.1 中文依存文法 162 3.2.2 英文依存文法 169 3.2.3 生成依存文法树 176 3.2.4 机器学习的方法 179 3.3 依存语言模型 180 3.4 使用Java计算机语言的语义分析 180 3.5 专业术语 183 第4章 文章分析 184 4.1 分词 184 4.1.1 句子切分 184 4.1.2 识别未登录串 186 4.1.3 切分边界 187 4.2 词性标注 188 4.3 重点词汇提取 190 4.4 句子时态分析 190 4.5 专业术语 191 第5章 文档语义 192 5.1 相似度计算 192 5.1.1 夹角余弦 192 5.1.2 最长公共子串 194 5.1.3 同义词替换 197 5.1.4 地名相似度 198 5.1.5 企业名相似度 201 5.2 文档排重 201 5.2.1 关键词排重 201 5.2.2 语义指纹排重 203 5.2.3 分布式文档排重 212 5.2.4 使用文档排重 213 5.3 在搜索引擎中使用文档排重 214 5.4 专业术语 214 第6章 信息提取 215 6.1 指代消解 215 6.2 中文关键词提取 216 6.2.1 关键词提取的基本方法 216 6.2.2 HITS算法应用于关键词提取 218 6.2.3 从网页中提取关键词 219 6.3 信息提取 220 6.3.1 提取联系方式 221 6.3.2 从互联网提取信息 222 6.3.3 提取地名 222 6.4 拼写纠错 223 6.4.1 模糊匹配问题 225 6.4.2 正确词表 233 6.4.3 英文拼写检查 234 6.4.4 中文拼写检查 235 6.5 输入提示 237 6.6 专业术语 237 第7章 自动摘要 238 7.1 自动摘要技术 238 7.1.1 英文文本摘要 240 7.1.2 中文文本摘要 242 7.1.3 基于篇章结构的自动摘要 245 7.1.4 句子压缩 245 7.2 指代消解 246 7.3 多文档摘要 246 7.4 分布式部署 246 7.5 专业术语 248 第8章 文本分类 249 8.1 地名分类 250 8.2 文本模板分类 251 8.3 特征提取 251 8.4 线性分类器 254 8.4.1 关键词加权法 254 8.4.2 朴素贝叶斯 257 8.4.3 贝叶斯文本分类 262 8.4.4 支持向量机 262 8.4.5 多级分类 269 8.4.6 使用sklearn实现文本分类 270 8.4.7 规则方法 270 8.4.8 网页分类 272 8.5 FastText文本分类 273 8.5.1 词向量 273 8.5.2 JavaCPP包装Java接口 273 8.5.3 使用JFastText 274 8.6 最大熵分类器 275 8.7 文本聚类 276 8.7.1 K均值聚类算法 276 8.7.2 K均值聚类算法的实现 277 8.7.3 深入理解DBScan算法 281 8.7.4 使用DBScan算法聚类实例 282 8.8 持续集成 283 8.9 专业术语 284 第9章 文本倾向性分析 285 9.1 确定词语的褒贬倾向 287 9.2 实现情感识别 288 9.3 专业术语 290 系统篇 第10章 语音识别 292 10.1 总体结构 292 10.1.1 识别中文 294 10.1.2 自动问答 295 10.2 语音库 297 10.3 语音 297 10.3.1 标注语音 300 10.3.2 动态时间规整计算相似度 301 10.4 Sphinx语音识别 303 10.4.1 中文训练集 305 10.4.2 使用Sphinx4 306 10.4.3 ARPA文件格式 307 10.4.4 PocketSphinx语音识别引擎 309 10.5 说话人识别 312 10.6 专业术语 313 第11章 问答系统 314 11.1 问答系统的结构 314 11.1.1 提取问答对 315 11.1.2 等价问题 315 11.2 问句分析 316 11.2.1 问题类型 316 11.2.2 句型 319 11.2.3 业务类型 319 11.2.4 依存文法树 319 11.2.5 指代消解 320 11.2.6 二元关系 320 11.2.7 问句模板 322 11.2.8 结构化问句模板 323 11.2.9 检索方式 325 11.2.10 问题重写 327 11.2.11 提取事实 327 11.2.12 验证答案 329 11.3 知识库 329 11.4 AIML聊天机器人 330 11.4.1 交互式问答 332 11.4.2 垂直领域问答系统 333 11.4.3 语料库 335 11.4.4 客户端 335 11.5 自然语言生成 335 11.6 JavaFX开发界面 336 11.7 专业术语 337 第12章 机器翻译 338 12.1 使用机器翻译API 338 12.2 翻译日期 338 12.3 神经机器翻译 340 12.4 辅助机器翻译 341 12.5 机器翻译的评价 342 12.6 专业术语 342 参考文献 343 后记 344
本书通过不断调整与优化,形成了结构合理、循序渐进、容量适度的10个教学单元:计算机基础知识、计算机硬件基础、计...
本书是一本采用任务驱动式体例编写的ECharts数据可视化技术教材,以通俗易懂的语言和丰富实用的任务,帮助读者...
本书是面向PHP语言和MySQL数据库初学者的一本入门教材,使用通俗易懂的语言、丰富的图解和实用的案例,详细讲...
本书为Java基础入门教材,适合初学者使用。全书共13章,第1~2章主要讲解Java技术的一些基础知识,内容包...
本书全面、系统地介绍银河麒麟桌面操作系统的基础知识、WPS Office的基本操作,以及其他信息技术的相关内容...
我要评论