自然语言处理技术入门与实战
  • 推荐0
  • 收藏2
  • 浏览923

自然语言处理技术入门与实战

兰红云 (作者) 

  • 书  号:978-7-121-32763-6
  • 出版日期:2017-10-30
  • 页  数:1
  • 开  本:16(170*240)
  • 出版状态:上市销售
  • 维护人:张慧敏
纸质版 ¥59.00

相关图书

强化学习实战:强化学习在阿里的技术演进和业务创新

笪庆 曾安祥 (作者)

近年来,随着与深度神经网络的结合,强化学习在以Atari2600和围棋为代表的游戏领域取得了突破性的进展。与学术界关注的方向不同,在阿里巴巴,我们则将重点放在推...

 

深度学习之美:AI时代的数据处理与最佳实践

张玉宏 (作者)

深度学习是人工智能的前沿技术。本书深入浅出地介绍了深度学习的相关理论和实践,全书共分16章,采用理论和实践双主线写作方式。第1章给出深度学习的大图。第2章和第3...

 

机器学习vs复杂系统

许铁 (作者)

本书从跨学科视角来看待人工智能这个技术性的学科。围绕用数学模型预测未来这一主题,介绍算法,主要包括现在流行的机器学习和深度学习算法,以及算法要解决问题本身的复杂...

¥59.00

自然语言处理理论与实战

白宁超 (作者)

自然语言处理是什么?谁需要学习自然语言处理?自然语言处理在哪些地方应用?相关问题一直困扰<br>着不少初学者。针对这一情况,作者结合教学经验和工程应用编写此书。...

¥79.00

Python带我起飞——入门、进阶、商业实战

李金洪 (作者)

本书针对Python 3.5 以上版本,采用“理论+实践”的形式编写,通过大量的实例(共42 个),全面而深入地讲解“Python 基础语法”和“Python ...

¥79.00

HyperLedger Fabric开发实战——快速掌握区块链技术

杨毅 (作者)

本书系统地介绍了超级账本HyperLedger Fabric v1.1架构的设计和应用方法,包括环境及源码部署、Solo多机部署、Kafka集群部署、智能合约编...

 
本书主要从语义模型详解、自然语言处理系统基础算法和系统案例实战三个方面,介绍了自然语言处理中相关的一些技术。对于每一个算法又分别从应用原理、数学原理、代码实现,以及对当前方法的思考四个方面进行讲解。
本书面向的读者为有志于从事自然语言处理相关工作的在校学生、企事业单位工作人员等人群。本书的结构是由浅入深地进行相关内容的介绍,以满足不同层次读者的学习需求。
手把手教你搭建自然语言处理系统!
全面的实用技术要点:语义模型详解、自然语言处理系统基础算法和系统案例实战
完整的应用解决方案:问题解决的原理、实现的算法原理、具体算法的实现
兰红云,湖北襄阳人。曾任职于猎豹移动,现为阿里影业数据挖掘专家,拥有多年的算法和数据挖掘的工作经验,申请过多项算法专利。研究方向包括自然语言处理和机器学习。
前言
随着移动互联网的飞速发展,特别是物联网(Internet of Thing,IoT)的飞速发展,人与设备的语言交互场景也越来越多,并且越来越成为核心。这种语言的交互既包括纯文字的,也包括语音的。自然语言处理(Natural Language Processing, NLP)就是以电子计算机、编程语言为工具对人类特有的书面和口头形式的自然语言信息进行各种类型处理和加工的技术。当然,随着技术的不断发展,其处理领域也出现了跨形态的组合。比如通过与图形图像处理技术的结合,可以实现看图说话、在线答题等应用。所以,自然语言处理是一门涉及语言学、计算机科学,当然还有数学的交叉性科学。
自然语言处理的目的是为了让计算机能够理解人的语言,然后做出相应的处理或者应答。根据应用场景的不同,自然语言处理可以分为如下三点:(1)信息抽取,包括自动摘要、自动检索、舆情分析等;(2)语言理解,包括机器翻译、人机对话、语义理解等;(3)跨形态组合,包括看图说话、语音自动合成、辅助教学等。这些应用都是利用自然语言处理技术,对所需要处理的信息进行挖掘和分析,找出人们想要的东西,进而做出响应。而落实到具体的应用,又会衍生出很多不同的应用系统,由此衍生出来的应用系统包括但不限于:信息自动抽取系统、信息自动检索系统、文本信息挖掘系统、机器翻译系统、人机对话系统、图片描述自动生成系统、语音自动识别系统、语音自动合成系统、计算机辅助教学系统,等等。
因为自然语言自身的复杂性,比如:很多歧义、结构复杂多样、表达千变万化,导致其处理方法纷繁复杂,要考虑非常多的情景。所以上述这些系统之间又存在交叉,或者上下关联,或者前后依赖等复杂的关系。而这些复杂的应用对于一个初学者来说,是非常庞杂和难以掌握的,在学习的过程中难免存在因为其中某一个细节不能掌握,而影响整个进程的进度。或者是虽然理解了算法的数学原理,但是怎么在实际场景中应用,以及当前算法能解决哪些实际问题,还是不了解。在笔者学习的过程中,发现目前出版的一些书籍,或者是偏理论性的,会介绍很多自然语言处理技术发展的历史,比如符号逻辑的发展轨迹、语义网络的发展轨迹、语言学派和统计学派的“恩怨情仇”,会让初学者在学习的过程中抓不住重点,有时候又感觉它们好像就是一回事;又或者介绍的内容过于技术,开篇就把其中涉及的一些数学知识全都介绍一遍,因为这其中有很多数学知识是比较高阶的,比如隐马尔科夫链、条件随机场、数理逻辑推理等,在介绍数学知识的过程中,又难免会涉及相关的证明。本来其数学形式就比较复杂,再加上连环的证明就更难懂了,对于数学基础稍微薄弱一点的读者,就感觉没有学习的欲望和必要了。但是在实际应用中,其实这些烦琐的证明根本不需要,有时候只需要记住一个结论,然后根据自己数据的情况,优化模型中的参数就可以了。所以笔者就想结合自己学习过程中和实际工作中的一些经验和教训,从应用的角度来对自然语言处理中的一些技术进行介绍。在介绍的时候,希望尽量地避免烦琐和突兀的数学证明,从应用的角度尽可能简洁明了地对一个算法或者处理系统进行简要的介绍,先让大家对这个方法有一个直观感性的认识,然后再深入了解其中的难点,进而深入学习和攻克难点。
本书采用以应用为主,算法和实现为辅的形式对自然语言处理中的一些技术进行介绍。对于算法数学原理的介绍,都是穿插在每一个应用的介绍中,对每一部分的数学知识进行分别介绍和讲解,没有开篇便对所涉及的数学知识进行一个全面的介绍,这样大家就不会因为某一个部分的数学知识不完备,或者掌握起来有困难而放弃整个知识体系的学习,这样大家就可以独立学习和掌握。同时因为知识遗忘的必然性,笔者将数学知识融入到应用中进行介绍,就更容易让读者记住。否则前后脱节之后,就忘记了之前讲解的数学原理,即使在应用中又要重新学习,也并不一定能够知道具体的应用原理。
因此,笔者完全从应用的角度来进行各个内容的组织,没有涉及太多的处理技术起源、变革、发展等历史信息。这一方面是因为各个技术都有自己的长处和缺点,这个是理论学派争论的焦点,但不是应用层面应该关心或者需要表明立场的地方;另一方面作为主要介绍应用实战的书,这里更多的是想让读者了解对于同一个问题目前的一些处理的方法和这些方法之间的优劣,以及相互的关联,以便找到解决问题更好的方法,这样也更有利于整个事情的发展。所以从做事情的本身来说,我们需要关心的是事情怎么能够做起来,没有做起来是因为什么,所以我们更多关心的是“术”的事情,而对于“道”的层面更多的是了解,是取众家之长,来“集大成”,而不能剑走偏锋。
目前,随着源工具的不断增加,大家对底层应用的开发需求在逐渐降低,所以本书先从上层应用介绍入手,让读者能够直接用起来,这样更有利于读者边实践边学习,也可以避免大家因为学习底层技术太难而阻碍后期应用的学习。从企业的角度出发,缺的也不是底层通用的处理技术和能力,更多的是缺少对实际业务的处理能力,业务跑起来之后,整个系统便会随着业务的发展而不断发展。所以本书采用以应用贯串始终的方式来进行相关技术的介绍和说明。
具体来说,本书主要从以下三个方面介绍了自然语言处理中相关的一些技术。
1)语义模型详解:主要是从应用的角度介绍自然语言处理中的一些语义处理模型,比如关键词提取、计算词距离、文本自动生成等。
2)自然语言处理系统基础算法:这一部分主要是从基础系统搭建的角度对相关算法进行介绍。包括分词、词性标注、句法分析等。这两部分介绍的内容又分别从使用原理、实现原理、具体的代码实现,以及对当前方法的思考这四个角度进行介绍。
3)系统案例实战:介绍了搭建一个舆情分析和挖掘系统所要涉及的环节、各个环节的算法实现,以及部分实现代码。
本书在写作过程中力求普及并与实践相结合,尽可能地照顾到不同层次不同专业的读者。另外,本书是以应用场景来组织各个内容的,每一个章节都包含一个完整的应用解决方案:问题解决的原理、实现的算法原理、具体算法的实现,所以读者可以根据自己的需要独立地学习各个章节的内容。在各个章节的学习过程中,笔者强烈建议读者在学习具体方法之前,一定要认真地理解所要解决问题的具体场景。要理解当前场景的输入是什么、输出是什么,为什么会是这样的结构,只有弄明白了这些,才会对算法有更深入的理解,也才能更好地使用所学习的算法,做到举一反三。因为算法本身是一种数据处理逻辑,所以只要具有相同处理逻辑的问题都可以用同样的算法,比如最大熵模型发挥了巨大的作用是人们找到了其适用的场景,而不是对模型进行各种变形以让其去适合具体的应用。
本书在写作的过程中参考了很多国内外学者的论文和著作。如果没有他们的出色工作,没有他们极为宝贵的研究成果,本书是写不出来的。在本书出版之际,谨向他们表示衷心的感谢。
在本书写作过程中,笔者常为自己的学识不足而苦恼、自然语言处理作为一门交叉性边缘性学科,涉及语言学、计算机科学、数学等各个方面的知识,笔者学识浅陋,论述之中倘有不当,恳请读者批评指正。有任何意见和建议请发到392071814@qq.com,不胜感激。
最后,谨向帮助、支持和鼓励我完成本书的我的家人、同事、领导、朋友以及出版社的领导、编辑致以深深的敬意和真挚的感谢!
作者
2017年9月于杭州

目录

第1篇语义模型详解
第1章关键词抽取模型 3
1.1 TF-IDF算法实现关键词抽取 4
1.2 TextRank算法实现关键词抽取 11
1.3 基于语义的统计语言模型实现关键词抽取 16
第2章短语抽取模型 22
2.1 基于互信息和左右信息熵实现短语抽取 23
2.2 TextRank算法实现短语抽取 28
2.3 LDA算法实现短语抽取 31
第3章自动摘要抽取模型 38
3.1 决策树算法实现自动摘要 39
3.2 基于逻辑回归算法实现自动摘要 44
3.3 贝叶斯算法实现自动摘要 50
第4章深度学习——计算任意词距离模型 55
4.1 FP-Growth算法实现词距离计算 56
4.2 N-Gram算法实现词距离计算 61
4.3 BP算法实现词距离计算 65
第5章拼音汉字混合识别模型 70
5.1 贝叶斯模型实现拼音汉字混合识别 71
5.2 HMM模型实现拼音汉字混合识别 75
5.3 RNN神经网络模型实现拼音汉字混合识别 80
第6章文本自动生成模型 87
6.1 基于关键词的文本自动生成模型 88
6.2 RNN模型实现文本自动生成 93
第2篇自然语言处理系统基础算法
第7章Dijkstra算法 101
7.1 算法应用原理介绍 102
7.2 算法数学原理介绍 102
7.3 算法源码说明 106
7.4 算法应用扩展 107
第8章AC-DoubleArrayTrie算法 108
8.1 算法应用原理介绍 109
8.2 算法数学原理介绍 111
8.3 算法应用扩展 116
第9章最大熵算法 117
9.1 算法应用原理介绍 118
9.2 算法数学原理介绍 119
9.3 算法源码说明 124
9.4 算法应用扩展 125
第10章CRF算法 126
10.1 算法应用原理介绍 127
10.2 算法数学原理介绍 130
10.3 算法源码说明 135
10.4 算法应用扩展 136
第11章马尔可夫逻辑网算法 137
11.1 算法应用原理介绍 138
11.2 算法数学原理介绍 142
11.3 算法源码说明 144
11.4 算法应用扩展 145
第12章DIPRE算法 147
12.1 算法应用原理介绍 148
12.2 算法数学原理介绍 151
12.3 算法源码说明 152
12.4 算法应用扩展 153
第13章LSTM算法 155
13.1 算法应用原理介绍 156
13.2 算法数学原理介绍 158
13.3 算法源码说明 163
13.4 算法应用扩展 165
第14章TransE算法 166
14.1 算法应用原理介绍 167
14.2 算法数学原理介绍 170
14.3 算法源码说明 172
14.4 算法应用扩展 174
第3篇系统案例实战
第15章搭建舆情分析与挖掘的系统 177
15.1 系统功能设计简述 178
15.2 系统模块实现详解 181
15.3 系统实现源码说明 186

读者评论

  • 请提供源码!

    tony66281发表于 2018/5/23 18:51:58
  • 代码在哪下载

    xiaoyu2018发表于 2018/5/16 17:21:52
  • 谁有这本书的python版或者说代码的python版呢?求分享。QQ号946020537,QQ邮箱946020537@qq.com

    946020537发表于 2018/4/11 15:24:19
  • 请提供源码!!!!

    liangss发表于 2018/3/16 18:48:53
  • 真是一本垃级书,概念不成体系,代码不加行号,让读者自己定位,笔误很多,明显的东拼西凑

    dfsj66011发表于 2018/3/6 22:10:30

相关博文

  • 基于语义的统计语言模型实现关键词抽取

    基于语义的统计语言模型实现关键词抽取

    管理员账号 2017-11-30

    小编说:关键词提取能让我们快速地了解一篇文章。在信息爆炸的时代,能够有效提取文本的关键词,对于快速、及时、高效地获取信息是非常有帮助的。本文介绍一种能够体现文本语义关系的关键词提取算法。本文选自《自然语言处理技术入门与实战》一书。 ...

    管理员账号 2017-11-30
    558 0 0 0
  • 专访丨一学就会的自然语言处理系统书

    专访丨一学就会的自然语言处理系统书

    管理员账号 2017-12-26

    《自然语言处理技术入门与实战》 手把手教你搭建自然语言处理系统! 实用技术要点,完整解决方案 兰红云 编著 2017年11月出版 一本一学就会的自然语言处理系统书 避免繁琐和突兀的数学证明 没有复杂公式,也...

    管理员账号 2017-12-26
    210 0 0 0