• Rasa实战:构建开源对话机器人
  • Rasa实战:构建开源对话机器人
21年品牌 40万+商家 超1.5亿件商品

Rasa实战:构建开源对话机器人

新华书店全新正版书籍图书 保证_可开发票_极速发货支持7天无理由

48.1 5.4折 89 全新

库存2件

浙江嘉兴
认证卖家担保交易快速发货售后保障

作者孔晓泉,王冠

出版社电子工业出版社

ISBN9787121429385

出版时间2022-03

装帧平装

开本16开

定价89元

货号31379058

上书时间2024-10-15

學源图书专营店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
前言

自然语言处理(Natural Language Processing,NLP)是人工智能领域的一个重要部分。当人工智能已经在数据建模预测和图像分类识别等场景大放异彩的时候,随着深度学习算法和计算机硬件的不断发展,拥有悠久历史的NLP渐渐展现出新的发展动力和应用落地潜力,而对话机器人是NLP集大成的应用。

 

对话机器人已经在互联网和传统行业中有了广泛的应用,应用范围包括自动化提升工作效率、增加客户服务智能水平和降低人工运营成本等方面。本书以中文应用为核心,向读者系统地介绍对话机器人的落地构建。

 

为什么写这本书

 

在深度学习的发展浪潮中,NLP虽然有了很多重要的进步,但是相比图像视觉识别等领域,NLP有着特殊的一面。因为图像中的猫都是一样的,中国的猫在美国也是猫,不受地区、语言、文化背景等限制,所以图像数据是通用的,算法也一致。文字则不同:全球各地的书写语言各不相同,相同书写语言国家中不同地区的口语方言也各有千秋,用英语语料训练出的NLP模型并不适用于中文,因此NLP语料不具备通用性。

 

加上人类的语言本身具有歧义性、隐蔽性和常识性,如指代不明、讽刺、缩略等,NLP在技术实现上相当困难,在中文方面尤其如此——一方面,中文NLP缺乏学术界质量良好的大规模中文语料库;另一方面,主流开源框架对中文NLP的支持并不友好。

 

据笔者所知,当前的NLP参考数据,或者完全基于传统NLP的技术架构,与当前新的技术有所脱节,或者太过理论而缺乏实践,尤其是对中文NLP任务实践的深层次积累。

 

因此,我们在本书借助Rasa介绍构建对话机器人这一NLP集大成的任务,从而展现中文 NLP 的核心技术的实践和应用。

 

关于本书作者

 

孔晓泉 谷歌开发者机器学习技术专家(Google Developer Expert in Machine Learning),TensorFlow Addons Codeowner,Rasa SuperHero。多年来一直在世界 500 强公司带领团队构建机器学习应用和平台。在NLP和对话机器人领域拥有丰富的理论和实践经验。

 

王冠 北京大学学士,香港科技大学硕士,先后于香港应用科技研究院、联想机器智能实验室及瑞士再保险数据科学团队从事数据建模、计算机图像与NLP的研发工作,发表过数篇相关国际期刊论文和专利。当前研究方向为人工智能在金融领域的应用。

 

本书主要内容

 

本书将详细地介绍Rasa的生态体系,按照从入门到内部原理,再到实战的学习路线,让次接触机器学习和自然语言理解的用户能够迅速了解、掌握并实际运用中文NLP的核心技术。本书由初级、中级和高级3个级别的Rasa知识组成。本书内容与开发人员水平等级对应表如下所示。

 

本书内容与开发人员水平等级对应表

 

开发人员水平等级 等级能力要求 对应本书内容

 

初级 熟悉Rasa各个组件的概念,熟练利用现有的常用组件构建一个单机Rasa Bot 第1章、第2章、第3章 

 

中级 熟练利用所有内建组件构建一个满足工业标准的分布式Rasa Bot 第4章、第5章、第6章、第7章

 

高级 熟悉Rasa各个系统的工作原理,按照需要新增、改造或创建新的子系统和组件 第8章、第9章、第10章

 

如何阅读本书

 

建议Rasa初学者,从头开始逐步深入,并按照书中的项目逐一实践,在确认已经掌握基础概念后再继续学习。同时建议,初学者不需要等到完全读完整本书再去上手做实际的对话机器人,只要学会自己期望的学习内容就可以开始进行实战,在实战中遇到不懂的问题时,再来回顾本书或把本书当作参考手册反复查阅。

 

对于已经有一定经验的Rasa开发者,可以按照需求有选择地精读某些章节。有经验的Rasa开发者快速通读全书也有好处,一来可以了解的Rasa提供了哪些读者尚不知道的高级技术(Rasa的技术体系进化得相当快),二来可以建立完善的Rasa知识体系,以后在实战中遇到问题时,可以想起来书中提到的某个技术或方案或许可以解决这一问题。

 

对于非Rasa系统的对话系统开发者而言,阅读本书可以学习Rasa系统是如何设计架构,以保证系统的可扩展性的。同时Rasa对话管理系统的设计是非常值得其他对话系统设计师参考学习的,我们建议重点阅读第9章“Rasa的工作原理与扩展性”。

 

致谢

 

感谢谷歌通过提供谷歌云信用额度(GCP credit)的方式来支持我们的工作。



 
 
 
 

商品简介

Rasa是一款开源的对话机器人框架,能让开发者使用机器学习技术快速创建工业级的对话机器人。得益于丰富的功能、先进的机器学习能力和可以快速上手的特性,Rasa框架是目前流行的开源对话机器人框架。 本书首先介绍Rasa的两个核心组件——Rasa NLU和Rasa Core的工作流程;然后详细介绍通过使用Rasa生态系统从头开始构建、配置、训练和服务不同类型的对话机器人的整体过程,如任务型、FAQ、知识图谱聊天机器人等,其中包括使用基于表单(form)的对话管理、ResponseSelector来处理闲聊和FAQ,利用知识库来回答动态查询的问题等,以及自定义Rasa框架,使用对话驱动的开发模式和工具来开发对话机器人,探索机器人能做什么,并通过交互式学习来轻松修复它所犯的任何错误;后会介绍将Rasa系统部署到具有高性能和高可扩展性的生产环境中,从而建立一个高效和强大的聊天系统。



作者简介
孔晓泉谷歌开发者机器学习技术专家(GoogleDeveloperExpertinMachineLearning),TensorFlowAddonsCodeowner,RasaSuperHero。多年来一直在世界500强公司带领团队构建机器学习应用和平台。在NLP和对话机器人领域拥有丰富的理论和实践经验。王 冠北京大学学士,香港科技大学硕士,先后于香港应用科技研究院、联想机器智能实验室及瑞士再保险与慕尼黑再保险数据科学团队从事数据建模、计算机图像与NLP的研发工作,发表过数篇相关国际期刊论文,并取得相关专利。当前研究方向为人工智能在金融领域的应用。

目录
第1章  人机对话基础和Rasa简介1
1.1  机器学习基础1
1.2  自然语言处理基础3
1.2.1  现代自然语言处理发展
简史3
1.2.2  自然语言处理的基础
任务7
1.3  人机对话流程7
1.3.1  确定对话机器人的应用
场景7
1.3.2  传统对话机器人架构8
1.3.3  语音识别10
1.3.4  自然语言理解10
1.3.5  对话管理12
1.3.6  自然语言生成13
1.3.7  语音合成14
1.4  Rasa 简介14
1.4.1  系统结构15
1.4.2  如何安装Rasa16
1.4.3  Rasa 项目的基本流程16
1.4.4  Rasa常用命令16
1.4.5  创建示例项目17
1.5  小结17
第2章  Rasa NLU基础18
2.1  功能与结构18
2.2  训练数据19
2.2.1  意图字段21
2.2.2  同义词字段22
2.2.3  查找表字段23
2.2.4  正则表达式字段23
2.2.5  正则表达式和查找表的
使用24
2.3  组件25
2.3.1  语言模型组件26
2.3.2  分词组件26
2.3.3  特征提取组件27
2.3.4  NER组件27
2.3.5  意图分类组件28
2.3.6  实体和意图联合提取
组件28
2.3.7  回复选择器28
2.4  流水线28
2.4.1  什么是流水线28
2.4.2  配置流水线28
2.4.3  推荐的流水线配置30
2.5  输出格式30
2.5.1  意图字段32
2.5.2  实体字段32
2.5.3  其他可能字段33
2.6  如何使用 Rasa NLU34
2.6.1  训练模型34
2.6.2  从命令行测试34
2.6.3  启动服务35
2.7  实战:医疗机器人的NLU
模块36
2.7.1  功能36
2.7.2  实现36
2.7.3  训练模型38
2.7.4  运行服务39
2.8  小结40
第3章  Rasa Core基础41
3.1  功能与结构41
3.2  领域41
3.2.1  意图与实体42
3.2.2  动作42
3.2.3  词槽43
3.2.4  回复43
3.2.5  会话配置45
3.2.6  全局性配置45
3.3  故事45
3.3.1  用户消息46
3.3.2  机器人动作与事件46
3.3.3  辅助符号47
3.4  动作49
3.4.1  回复动作49
3.4.2  表单49
3.4.3  默认动作49
3.4.4  自定义动作50
3.5  词槽50
3.5.1  词槽和对话行为51
3.5.2  词槽的类型51
3.5.3  词槽的映射52
3.5.4  词槽初始化52
3.6  策略53
3.6.1  策略的配置53
3.6.2  内建的策略53
3.6.3  策略的优先级54
3.6.4  数据增强54
3.7  端点54
3.8  Rasa SDK和自定义动作55
3.8.1  安装55
3.8.2  自定义动作55
3.8.3  tracker对象56
3.8.4  事件对象56
3.8.5  运行自定义动作57
3.9  Rasa支持的客户端57
3.10  实战:报时机器人59
3.10.1  功能59
3.10.2  实现60
3.10.3  运行动作服务器66
3.10.4  运行Rasa服务器和
 客户端66
3.11  小结67
第4章  使用ResponseSelector
        实现FAQ和闲聊功能68
4.1  如何定义用户问题68
4.2  如何定义问题的答案69
4.3  如何训练Rasa69
4.4  实战:构建FAQ机器人70
4.4.1  功能70
4.4.2  实现71
4.4.3  训练模型77
4.4.4  运行服务78
4.5  小结78
第5章  基于规则的对话管理79
5.1  fallback79
5.1.1  NLU fallback79
5.1.2  策略fallback80
5.2  意图触发动作80
5.2.1  内建意图触发动作80
5.2.2  自定义意图触发动作81
5.3  表单81
5.3.1  定义表单82
5.3.2  激活表单82
5.3.3  执行表单任务82
5.4  实战:天气预报机器人83
5.4.1  功能83
5.4.2  实现86
5.4.3  客户端/服务器97
5.4.4  运行 Rasa 服务器97
5.4.5  运行动作服务器97
5.4.6  运行网页客户端98
5.4.7  更多可能的功能98
5.5  小结98
第6章  基于知识库的问答99
6.1  使用ActionQueryKnowledgeBase
100
6.1.1  创建知识库100
6.1.2  NLU 数据102
6.1.3  自定义基于知识库的
动作104
6.2  工作原理105
6.2.1  对象查询105
6.2.2  属性查询105
6.2.3  解析指代106
6.3  自定义108
6.3.1  自定义
      ActionQueryKnowledgeBase
108
6.3.2  自定义
       InMemoryKnowledgeBase
108
6.3.3  创建自定义知识库110
6.4  实战:基于知识库的音乐百科
机器人110
6.4.1  功能110
6.4.2  实现111
6.4.3  客户端/服务器122
6.4.4  运行 Rasa 服务器122
6.4.5  运行动作服务器122
6.4.6  运行网页客户端122
6.4.7  使用Neo4j123
6.5  小结134
第7章  实体角色和分组135
7.1  实体角色135
7.2  实体分组136
7.3  组件支持情况136
7.4  实战:订票机器人136
7.4.1  功能136
7.4.2  实现139
7.4.3  客户端/服务器147
7.4.4  运行 Rasa 服务器147
7.4.5  运行动作服务器147
7.4.6  运行网页客户端148
7.5  小结148
第8章  测试和生产环境部署149
8.1  如何测试机器人的表现149
8.1.1  对NLU和故事数据
进行校验149
8.1.2  编写测试用的故事149
8.1.3  评估NLU模型151
8.1.4  评估对话管理模型153
8.2  在生产环境中部署机器人153
8.2.1  部署时间153
8.2.2  选择模型存储方式153
8.2.3  选择tracker store154
8.2.4  选择lock store156
8.2.5  单机高并发设置157
8.3  实战:单机部署高性能Rasa
服务157
8.3.1  架设redis服务器157
8.3.2  使用redis作为
tracker store157
8.3.3  使用redis作为
lock store158
8.3.4  单机高并发设置158
8.3.5  性能测试158
8.4  小结159
第9章  Rasa的工作原理与
        扩展性160
9.1  Rasa的工作原理160
9.1.1  训练阶段161
9.1.2  推理阶段162
9.2  Rasa的扩展性163
9.2.1  如何使用自定义NLU
组件和自定义策略163
9.2.2  如何自定义一个NLU
组件或策略164
9.2.3  自定义词槽类型165
9.2.4  其他功能的扩展性166
9.3  实战:实现自定义分词器166
9.3.1  分词器MicroTokenizer的
简介166
9.3.2  代码详解167
9.3.3  使用自定义分词器176
9.4  小结177
第10章  Rasa技巧与生态178
10.1  如何调试Rasa178
10.1.1  预测结果不正确178
10.1.2  代码出错181
10.2  如何阅读Rasa源代码186
10.2.1  阅读源代码前186
10.2.2  阅读源代码时188
10.2.3  阅读源代码后188
10.3  对话驱动开发和Rasa X189
10.3.1  对话驱动开发189
10.3.2  Rasa X190

10.4  运行交互式学习193
10.4.1  启动交互式学习193
10.4.2  进行交互式学习193
10.4.3  保存交互式学习的
 数据196
10.4.4  对话过程可视化196
10.5  社区生态197
10.5.1  数据生成工具
 Chatito197
10.5.2  数据生成工具
 Chatette198
10.5.3  数据标注工具
 Doccano199
10.5.4  Rasa Chinese软件包200
10.6  小结201
附录A  中英文术语翻译对照表202

内容摘要
Rasa是一款开源的对话机器人框架,能让开发者使用机器学习技术快速创建工业级的对话机器人。得益于丰富的功能、先进的机器学习能力和可以快速上手的特性,Rasa框架是目前流行的开源对话机器人框架。 本书首先介绍Rasa的两个核心组件――RasaNLU和RasaCore的工作流程;然后详细介绍通过使用Rasa生态系统从头开始构建、配置、训练和服务不同类型的对话机器人的整体过程,如任务型、FAQ、知识图谱聊天机器人等,其中包括使用基于表单(form)的对话管理、ResponseSelector来处理闲聊和FAQ,利用知识库来回答动态查询的问题等,以及自定义Rasa框架,使用对话驱动的开发模式和工具来开发对话机器人,探索机器人能做什么,并通过交互式学习来轻松修复它所犯的任何错误;最后会介绍将Rasa系统部署到具有高性能和高可扩展性的生产环境中,从而建立一个高效和强大的聊天系统。

主编推荐
"对话机器人开源框架Rasa首著,国内外大火的框架,Rasa致力于聊天机器人(bot)平台和开源NLU工具在商业领域的应用开发,客户包括瑞银银行、宝马、瑞士保险公司Helvetia,以及女性健康机器人创业公司Tia。国内用Rasa的大厂有中国电信、微软小冰、陆金所,博世汽车、一汽等。还有很多的中小型企业大量使用。
本书能帮你使用机器学习技术快速创建工业级的对话机器人。
全面解析从0开始构建、配置、训练和服务不同类型的对话机器人的整体过程,如任务型、FAQ、知识图谱聊天机器人等。"

媒体评论
"本书涵盖了熟练使用Rasa构建真实应用所需的全部主题。除涵盖自然语言理解和对话管理的基础知识外,该书着重讲了如何在真实场景中构建很好的产品。在第1章中,你会被要求思考这样一个问题:构建一个对话机器人真的是正确的选择吗?通过回答这个问题可以避免杀鸡用牛刀的窘境。本书还介绍了对话驱动开发(Conversation-Driven Development)的基本过程。不使用对话驱动开发可能会出现对话机器人虽然上线却不能很好地满足目标用户需求的问题。此外,本书还向读者传授了一些实用的技能,比如如何调试Rasa代码、如何测试,以及如何将对话机器人部署到生产环境中等等。

这本书对任何想成为Rasa开发者的人来说都是很好有用的,我相信许多现有的Rasa开发者也会从书中发现并学到新的东西。
 Alan Nichol,Rasa联合创始人兼CTO

该书由浅入深地介绍了Rasa框架的系统设计和工作原理,并给出不同类型对话机器人的实现案例,具有很高的参考价值,是很好值得阅读的佳作。
饿了么前工程Vice President  王胤

本书的两位作者,均是GDE(Google Developer Experts,谷歌开发者专家)计划的成员,是使用谷歌机器学习技术的开发者中的杰出代表。
作为NLP领域一本结合理论探索与实践箴言的佳作,本书必将为对话机器人领域的从业者和学习者带来诸多裨益,同时很好高兴看到谷歌云信用额度(Google Cloud Credits)在此书的撰写过程中为作者提供了帮助。希望两位作者不断有更多的佳作面世。
谷歌开发者关系生态中国区负责人  申强

Rasa是业界难得的能提供从语言理解到回答生成整套流程的对话机器人框架。尽管其高度可扩展的组件化特性与易用性已为Rasa赢得靠前声誉并成就了强大的开发者生态,但是在国内详细介绍Rasa的专业书籍仍为稀缺。本书既是一本完整的Rasa实战手册,又是一本介绍人机对话技术各个模块的很好好的教材,相信读者会在实践与理论的辉映中受益匪浅。
满帮集团首席科学家,前阿里本地生活研究院不错总监  李佩

对话机器人将成为未来重要的人机交互窗口,这得益于人工智能的飞速发展与自然语言模型层出不穷的令人惊叹的成果:OpenAI的GPT-3能撰写逻辑清晰的文章;GitHub的Co-pilot能自动续写程序片段;DeepMind的AlphaCode能自动阅读需求并撰写最终代码……如果你想构建基于人工智能的人机交互界面,就要先学会开发一个对话机器人,那么就请从这本书开始。
《Chatbot从0到1》作者,Wechaty作者  李卓桓"

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP