猜你喜欢
聊天机器人:入门、进阶与实战

聊天机器人:入门、进阶与实战

书籍作者:刘宇 ISBN:9787111637660
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:5035
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

这是一部能指导初学者轻松进入聊天机器人领域并快速实现进阶的实战型著作。

4位作者都是资深的NLP技术专家,在聊天机器人领域有丰富的工程实践经验,曾在唯品会等公司有大规模的成功实践。这本书原理、技术、实战3个层面讲解了聊天机器人的数学与统计原理、NLP模型和技术、算法与实现、工程架构,以及案例实践。

全书共13章,可分为三大部分。

第一部分(第1章) 基础篇

简单介绍了数学和统计的基本理论,如概率统计和应用数学等。

第二部分(第2~9章) 技术篇

着重讲解了NLP的模型和技术,它们是构成对话系统的基础,一些模型可以用在自然语言理解模块(NLU)和自然语言生成模块(NLG),同时帮助读者整理对话系统的工程架构知识。

第三部分(第10~12章) 实例篇

通过对三个典型的对话系统案例的讲解,让读者完整了解架构、设计和实现对话系统的流程和方法。


作者简介

★刘宇

数据科学技术总监 ,毕业于清华大学,现就职于猎聘网。

在NLP算法领域有7年以上的开发经验,目前的研究重点是深度学习在NLP方面的实际应用,热衷于钻研NLP算法技术在对话系统、搜索系统等实际场景下的应用。对机器学习、大数据应用与开发、深度学习等也颇有研究。精通Java、C++、Python等主流编程语言,熟悉软件架构和开发原则。


★崔燕红

资深人工智能技术专家,毕业于开普敦大学,博士,现任北京泰迪熊科技公司首席数据算法科学家。

曾在唯品会NLP部门担任主任研究员。精通Java 语言,有6年Java 相关开发经验,熟悉Python语言,在时间序列分析、全局优化算法、机器学习、NLP、深度学习领域卓有建树。

★郭师光

资深大数据和人工智能技术专家,毕业于俄克拉荷马大学,博士。

曾在斯伦贝谢公司从事研发工作,研究领域涉及数据建模、油气藏的智能模式识别等。后在唯品会研究院担任资深研发,研究项目主要包括深度学习算法、搜索意图识别等。现于北京信息科技大学任职,主要研究方向包括大数据、智能对话系统、图像识别以及深度学习模型的商业化应用。累计发表SCI检索论文和国际会议论文十余篇。

★党习歌

NLP算法工程师,毕业于北京邮电大学,计算机专业硕士。

现就职于唯品会智能应用部。精通Java,在NLP算法领域有3年以上开发经验。目前主要研究NLP在对话系统、搜索等场景的应用,对机器学习、NLP算法、数学模型等颇有研究。

编辑推荐
适读人群 :1.自然语言处理入门者和爱好者2.初中级自然语言处理工程师3.AI技术入门者和爱好者4.开设相关课程的大专院校的师生

(1)4位作者都是人工智能和NLP领域的资深专家和从业者,实战经验丰富,在唯品会等公司有大型聊天机器人项目的成功经验。

(2)Opus Research首席分析师/创始人Dan Miller与前Oracle自然语言技术总监Jan van Sas联袂推荐。

(3)从数学原理、NLP技术、算法与实现、工程架构、实践案例5个维度详细讲解聊天机器人原理、技术与实战。






前言

为什么要写这本书

2015年我跳出一家传统的软件公司,重新做回文本挖掘的相关工作。那个时候心中的执念是想把自己读硕士时的研究方向继续下去。跳出人生的舒适区,发现周围的技术真的是日新月异,从而感叹自己的落伍和脱节。于是开始从最简单的分词做起,职业生涯起起伏伏,在那段岁月中依然保持着心中的执念和对求知的渴望。有幸的是,在这个过程中结识了一些业内的好友,在他们的不断指引下,感觉每天都小有进步。在学习的过程中,我正好也赶上了自然语言处理技术的浪潮,在AI技术深入人心的阶段入行实是我人生的一大幸事!


对话系统是自然语言处理(NLP)领域的一颗璀璨明珠,它源于专家库系统。从技术的角度讲,它集结了自然语言理解(NLU)技术和自然语言生成(NLG)技术,而自然语言处理又恰恰是人工智能(AI)最难破解的领域。就是在那段时间里,我萌发了要做对话系统的想法。万事开头难,在这个过程中翻阅了不少参考资料,但是发现一个问题,市场上专门写对话系统的书寥寥无几,介绍自然语言处理的专业书籍也特别少。所以只能翻看一些论文,但论文的理论性很强,实操性又太差,对初学者和基础薄弱者来讲很不友好。当时市场上流行的自然语言处理的书籍可以分以下几种类型:第一,经典的教材,如宗成庆老师的《统计自然语言处理》;第二,经典实操教材,如《Python自然语言处理》;第三,经典的翻译教材,如《统计自然语言处理基础》。而讲解中文自然语言处理的实操性的书籍着实太少了。


2018年冬天的一个午后,我和郭师光几个人一起吃饭,茶余饭后聊起聊天机器人,大家有很多共同的想法。在自然语言处理、深度学习以及人工智能领域,大家都积累了一些经验,所以我就提议:大家能不能围绕自然语言处理和对话系统写一本书,写写大家对自然语言处理技术以及对话系统的认识,帮初学者归纳总结一些在中文文本挖掘方面的知识点和成功经验。我的提议很快得到了崔燕红博士的响应和支持,就这样,本书的创作团队正式成立。不过,在创作过程中也遇到了很多问题。对话系统本身要求技术人员对算法和工程都要有一个清晰和完整的认识,而且需要有很强的工程实践能力。我在书中这部分的讲解过程中提到,在不同公司的应用场景和数据集上做优化就会诞生不同的对话系统。但是,对话系统也有一些共同的部分,比如通用的自然语言处理方法、通用的架构,以及针对不同业务场景所采用的相同的解决方法。所以本书旨在帮助读者梳理相关知识点和思考问题的方式。许多个不眠之夜的奋笔疾书,许多个节假日的思考和资料的查阅,将我们的分享像涓涓细流,浇灌在每一个读者心间,我想我们的这些努力就是最大的价值。




目录

推荐序一

推荐序二

前言

第1章概率统计与应用数学的基础知识

1.1概率的定义

1.2条件概率与贝叶斯公式

1.3随机变量与分布函数

1.4概率分布与参数估计

1.5随机过程与马尔可夫模型

1.6信息熵

1.7本章小结

第2章语言模型与多元文法

2.1词袋模型

2.2N-Gram模型

2.2.1N-Gram简介

2.2.2N-Gram算法

2.2.3N-Gram用途

2.3数据平滑

2.3.1加法平滑方法

2.3.2Good-Turing估计法

2.3.3组合平滑方法

第3章序列标注模型

3.1中文分词

3.1.1条件随机场

3.1.2条件随机场进行中文分词

3.2词性标注

3.2.1词性标注的标准

3.2.2利用隐马尔可夫进行词性标注

3.3命名实体识别

3.3.1利用条件随机场模型进行命名实体识别

3.3.2命名实体识别在对话系统中的作用

3.4序列标注模型

3.5本章小结

第4章文本分析

4.1关键词抽取

4.1.1词频-逆文档频次算法

4.1.2Text Rank

4.2文本分类

4.2.1贝叶斯文本分类模型

4.2.2决策树文本分类模型

4.2.3SVM文本分类模型

4.3主题模型

4.3.1基础知识回顾

4.3.2吉布斯采样

4.3.3隐狄利克雷分配模型

4.4本章小结

第5章深度学习模型

5.1基于深度学习的自然语言模型

5.1.1神经网络自然语言模型与词向量

5.1.2A Neural Probabilistic Language Model

5.1.3CBOW和Skip-Gram

5.1.4Huffman编码与Huffman tree

5.1.5CBOW-Hierarchical Softmax

5.1.6Skip-Gram-Hierarchical Softmax

5.1.7FastText

5.1.8词的全局向量表示

5.2卷积网络CNN

5.2.1卷积网络CNN理论

5.2.2利用CNN进行文本分类

5.3循环网络RNN

5.3.1循环网络RNN(LSTM,GRU)理论

5.3.2利用RNN 进行情感分析

5.3.3Sequence-to-Sequence with Attention Model

5.4Transformer

5.4.1ResNet(Residual Network)残差网络模型

5.4.2Attention is all you need(Transformer)

5.5预训练模型

5.5.1Embeddings from Language Models(ELMo)

5.5.2BERT

第6章对话机器人的发展综述

6.1对话机器人发展史

6.1.1对话机器人的近况

6.1.2开放域

6.1.3垂直领域

6.1.4对话机器人的未来发展趋势

6.2人工智能在对话机器人中的应用

6.2.1深度学习在机器人方面的应用

6.2.2强化学习在机器人方面的应用

6.2.3知识图谱在机器人方面的应用

第7章自然语言理解与知识图谱

7.1知识图谱的表示:三元组模型

7.2知识抽取

7.2.1知识抽取-命名实体识别

7.2.2利用CRF模型识别 NER

7.2.3利用BiLSTM+CRF模型进行命名实体识别

7.3知识抽取-实体关系抽取:Relation Extraction

7.4知识图谱的构建

第8章答案生成与多轮对话

8.1预测会话与答案生成

8.1.1信息检索:利用搜索来预测答案

8.1.2句型模板匹配标准问题生成答案

8.1.3根据知识图谱推理得到答案

8.2多轮对话

8.2.1多轮对话概述

8.2.2任务型多轮对话的控制和生成

8.2.3多主题多轮对话

第9章对话系统的工程架构

9.1对话系统的工程技术

9.1.1常用技术

9.1.2对话系统的分类

9.1.3主要系统软件介绍

9.1.4系统运维相关

9.2对话系统的架构实现

9.2.1阿里小蜜

9.2.2百度对话系统

9.2.3垂直领域对话系统的架构

9.2.4开放领域对话系统的架构

9.3本章小结

第10章实战场景之一——客服机器人

10.1客服机器人架构

10.1.1功能需求

10.1.2系统逻辑架构图

10.2客服机器人设计

10.2.1FAQ的设计

10.2.2导购机器人的设计

10.2.3实例分析

10.3本章小结

第11章实战场景之二——开放域的QA问答

11.1开放领域问答机器人的架构

11.2开放领域问答机器人的开发流程和方案

11.3开放领域问答机器人的开发案例

第12章实战场景之三——聊天机器人

12.1Seq2Seq以及Attention机制

12.2Beam Search

12.3基于Seq2Seq的聊天机器人开发流程

12.3.1语料准备

12.3.2定义Encoder和Decoder

12.3.3模型训练和评估模块

12.3.4模型预测和Beam Search模块

12.4本章小结

短评

这本书更像是一本“保姆书”,就是作者生怕读者这里不懂那里不明白,所以在各种可能会出问题的地方进行了排雷和解惑,并把可能会出现的问题也进行了预防,真的是用心良苦,读起来都能感觉作者们的努力,感谢作者在聊天机器人领域付出的汗水。

2019-11-07

几乎没有花架子的技术书越来越少了,直接把核心的自然语言理解等内容呈现出来,知识获取的友好程度非常高,作为一本入门书最少可以打85分,非常实用。

2019-11-07

讲自然语言的书很容易变得枯燥,毕竟都是一些抽象问题,稍不注意就变成了摆例子铺代码的课堂讲义了。不过这本书还好,图文并茂,结合得恰到好处,不会让人读了半天云里雾里的感觉,足以证明作者技术积累的功力之深。

2019-11-05

终于找到了这种专精一个领域的书了,太不容易了!想学习对话机器人,其中涉及的深度学习啊,文本分析啊,对话系统架构啊总是被分散到各种书里,而且都是泛泛地提到,浮皮潦草地看着很不爽,这书算是集大成之作了,把分散在各种环境的对话机器人知识整合到一起,而且从最简单的入门开始,一直到最后的实用案例分析,好用也好看,支持,买一本自己看,买两本送人,嘿嘿。

2019-11-05

平时总跟微软小冰对话,渐渐地萌生了对这种聊天机器人的兴趣,想系统了解一下其背后的机理。网上挺多讲这种自然语言处理的书,但是很多看起来都比较难,对我这种入门者不太友好,这本书在看了简介后就觉得很适合我的需求,果断下单,看了看真的是用较为简单的表述方式讲明白了相关的问题,好书。

2019-11-06

标签
好书,值得一读,NLP,计算机,从基础讲解;实用性强,内容非常实在~,人工智能
产品特色