机器学习笔记 - 深度学习、对话机器人、微软机器人框架
一、对话机器人概述
1、相关技术路线
(1)基于模板的对话机器人
基于模板的对话机器人是通过人工设定对话场景,并对每个应用场景编写一些有针对性的对话模板。基于模板的优点是准确度高,缺点是需要大量的人工工作,而且可扩展性差,随着产品的复杂度越来越高,可能带来的后续工作也会越来越多。
(2)基于检索技术的对话机器人
将对话语料数据处理好,然后存储,并建立索引(例如,倒排索引),将用户问句当作查询语句,在对话库中进行检索,直到找最合适的应答内容为止。
(3)基于深度学习的对话机器人
基于深度学习的聊天机器人是本章后续实例中所采用的方法,大多都是基于RNN模型Seq2Seq(Encoder Decoder)在深度学习模型下进行开发与拓展。使用深度学习技术来开发聊天机器人相对简单并且扩展性较强。
基于深度学习的对话机器人中除了基本的对话功能之外,还可以通过其他技术扩展其会“听”、会“说”等高级的功能。
二、深度学习对话机器人原理
大多数基于深度学习的对话机器人都采用Seq2Seq或其扩展的框架。
Encoder-Decoder框架可以看作是一种文本处理领域的研究模式,应用场景很广,不仅可以用在对话机器人领域,还可以应用在机器翻译等各种场合。下图是文本处理领域里常用的Encoder-Decoder框架的一种表示示例。
![](/assets/blank.gif)
其中左侧的方块是Encoder Cell,右侧的方块是Decoder Cell,可以用LSTM或GRU来实现。Encoder Cell的最后一个时刻的状态的输出语义向量为c,它将作为Decoder Cell的初始状态。然后在Decoder Cell中,每个时刻的输出都将会作为下一个时刻的输入。以此类推,直到Decoder Cell遇到句子结束符号<END>结束为止。
Seq2Seq框架的输入和输出分别为问句和回答,如下图所示。适合处理由一个句子生成另外一个句子的通用处理框架。
![](/assets/blank.gif)
三、构建对话机器人
1、Microsoft Bot Framework
Microsoft Bot Framework 提供了构建和连接智能机器人所需的东西,无论用户在哪里交谈,从文本/短信到 Skype、Slack、Office 365 邮件和其他流行服务,都可以自然交互。
机器人是用户与服务或应用程序交互的重要方式,与网站或移动体验一样重要。 编写机器人的开发人员都面临着同样的问题:机器人需要基本的 I/O; 他们必须具备语言和对话技巧; 他们必须连接到用户
Bot Framework 为开发人员提供了轻松解决这些问题的工具以及更多功能,例如自动翻译到 30 多种语言、用户和对话状态管理、调试工具、可嵌入的网络聊天控件以及用户发现、尝试和添加的方式 机器人到他们喜欢的对话体验。
Bot Framework 有许多组件,包括 Bot Connector、Bot Builder SDK 和 Bot Directory。
2、构建对话机器人
下面的网址试图重现A Neural Conversational Model(又名 Google 聊天机器人)的结果。它使用 RNN(seq2seq 模型)进行句子预测。它是使用 python 和 TensorFlow 完成的。
GitHub - Conchylicultor/DeepQA: My tensorflow implementation of "A neural conversational model", a Deep learning based chatbothttps://github.com/Conchylicultor/DeepQA
按其说明进行环境设置、训练、运行web界面如下。
将输入序列大幅减少到 5 个单词,输出减少到 3 个(加上 go 和 eos 标记),并使用一个小的嵌入大小(大约 25),只需 1 或 2 小时的训练就可以获得一些结果,但是模型不会特别健谈。
如果遇到punkt下载不下来,可以手动下载,然后解压放到下面文件夹内
C:\Users\xxxxxx\AppData\Roaming\nltk_data\tokenizers
punkt.zip下载地址
nltk_data/packages/tokenizers at gh-pages · nltk/nltk_data · GitHubhttps://github.com/nltk/nltk_data/tree/gh-pages/packages/tokenizers
相关参考网址
GitHub - microsoft/botframework-sdk: Bot Framework provides the most comprehensive experience for building conversation applications.https://github.com/microsoft/botframework-sdk
Microsoft Bot Framework - microsoftbotframeworkhttps://microsoftbotframework.readthedocs.io/en/latest/
机器学习笔记 - 深度学习、对话机器人、微软机器人框架相关推荐
- 机器学习笔记——深度学习入门篇
前向传播与反向传播 转载于:https://www.cnblogs.com/hdu-cpd/p/5988606.html
- Intel提供的面向机器学习和深度学习的优化工具和框架
英特尔数学核心函数库 https://software.intel.com/zh-cn/intel-mkl 英特尔面向深度神经网络的数学核心函数库 https://github.com/01org/m ...
- 人工智能-概述:数据分析---->人工智能【机器学习----->深度学习】
一.人工智能-简介 人工智能在现实生活中的应用 人工智能发展必备三要素 人工智能和机器学习.深度学习三者之间的关系 BI(数据分析.数据挖掘): Excel: 超级Excel(SPSS.SAS): M ...
- Github开源!适合初学者的机器学习和深度学习的资料合集
最近逛 GitHub,发现了一个非常不错的 AI 资料,兼顾理论和实战,非常不错! 首先放上该资源的 GitHub 地址: https://github.com/ben1234560/AiLearni ...
- Python大数据综合应用 :零基础入门机器学习、深度学习算法原理与案例
机器学习.深度学习算法原理与案例实现暨Python大数据综合应用高级研修班 一.课程简介 课程强调动手操作:内容以代码落地为主,以理论讲解为根,以公式推导为辅.共4天8节,讲解机器学习和深度学习的模型 ...
- 深度学习之智能问答机器人实战
深度学习之智能问答机器人实战 class1 对话类型 基于知识库问答 录入问题和答案 设计标准问题的相似问题 使用搜索和排序,根据相似度返回结果 基于规则脚本 以一定的语法定义规则 常用正则表达式等约 ...
- 手机上的机器学习资源!Github标星过万的吴恩达机器学习、深度学习课程笔记,《统计学习方法》代码实现!...
吴恩达机器学习.深度学习,李航老师<统计学习方法>.CS229数学基础等,可以说是机器学习入门的宝典.本文推荐一个网站"机器学习初学者",把以上资源的笔记.代码实现做成 ...
- 下载量过百万的吴恩达机器学习和深度学习笔记更新了!(附PDF下载)
今天,我把吴恩达机器学习和深度学习课程笔记都更新了,并提供下载,这两本笔记非常适合机器学习和深度学习入门.(作者:黄海广) 0.导语 我和同学将吴恩达老师机器学习和深度学习课程笔记做成了打印版,放在g ...
- 吴恩达老师的机器学习和深度学习课程笔记打印版
注意:下载笔记.视频.代码:请点击"阅读原文" 我和同学将吴恩达老师机器学习和深度学习课程笔记做成了打印版,放在github上,下载后可以打印. 公布了深度学习笔记的word和ma ...
最新文章
- JS~字符串长度判断,超出进行自动截取(支持中文)
- SAP Commerce Cloud(原Hybris)和SAP Cloud for Customer(C4C)的SQL trace工具
- C语言 文件读写 fputs 函数 - C语言零基础入门教程
- php判断值是否为空然后定义,判断php变量是不是定义,是否为空
- jQuery 和 YUI (Yahoo User Interface) 各自的优缺点有哪些?具体的使用场景是怎样的?...
- base64转file图片上传
- 【Flink】数据传输 挖个坑 把自己埋了 ClassCastException String cannot be cast to [LJava.lang.String
- linux静态和动态路由英文,静态路由和动态路由的特点
- 怎样把Linux的私钥文件id_rsa转换成putty的ppk格式
- TortoiseSVN文件夹操作
- 假疫苗事件,错在企业,责任在管理部门
- Spring Cloud Stream 简单使用
- php留言系统源码,XYCMS php留言板 v8.0
- 小哥哥教你100%安装Win10专业版永久激活版(全网独一无二)
- Microsoft软件保护平台服务一直占用大量CPU资源
- 个性测试:跟乐嘉学性格色彩(图)
- 快速处理-小程序/uniapp,showToast没有效果
- 中国移动大数据推进“精准扶贫”
- linux之mmc子系统
- 预警神器来了,天翼大喇叭发出河道防汛强音
热门文章
- [NPUCTF2020]共 模 攻 击
- FreeMarker入门 生成xml模板
- 桌面壁纸被计算机管理员禁用,win7/win8/8.1系统更换桌面背景壁纸时出现“此功能已被禁用”的解决办法-系统操作与应用
-亦是美网络...
- jenkins启动报错 Job for jenkins.service failed because the control process exited with error code.
- 无字天书之Python第十三页(生成器基础)
- css margin属性 auto,css中margin:auto属性的使用方法
- 转:媒体评出美国薪酬最高25家科技公司:思科居首
- img格式图片怎么转JPG?图片格式转换方法分享
- 阿里程序员:加班晚归被女友锁在门外,网友:程序员要什么女朋友
- SetCapture ReleaseCapture