Record

区块链记录你的初心
营销地产创业创新求职面试Word技巧金融职场工作区块链Excel教程财经PPT教程产品运营
“午休被辞退”:海尔无人工厂的机器人,不需要午休

“午休被辞退”:海尔无人工厂的机器人,不需要午休

机器人

9月6日,一段视频被顶上微博热搜。海尔集团4名员工饭后午睡,被巡查人员拍照后,要求在1周内离职。视频显示,这4人在8月27日午餐后,没有按时返回工作岗位,而是在一楼的咖啡厅睡觉。按照公司规定,应该予以开除。视频中,采访了一些海尔的员工,他们表示:公司只给了30分钟的午饭时间,没时间午休。还会有巡查人员检查,发现有午休的人,就要马上辞退。这段视频引发网友大量转发与讨论。大众的矛头纷纷指向海尔。海尔的公关部,反应很迅速。9月6日下午,就进行了回复:这四名员工并非在休息时间午睡,而是工作时间在公共接待场所睡觉,所以被解除劳动合同。并且,公司规定11:30~13:00期间,员工可自主安排就餐时间,从董事长到员工,一视同仁。据报道,海尔在规章制度中确实有这方面的规定。入职时,员工都已了解。这样一来,开除并不违法。当然,我们仍然能从道义角度去谴责海尔。很多网友也确实是这么做的。可是,大家需要想明白一件事:一家商业机构的首要目标是什么?当然是追求利益最大化了。所谓的社会责任感,不过是来自外部压力,以及自我美化的需要罢了。由此,你应该能想明白,以这样的方式开除4个人,对于海尔是一件很划算的事。既能起到杀鸡儆猴的威慑作用,还能节省不少银子。HR 们都知道,辞退一名员工,要付出多大成本。倘若这些员工再有律师支点招,那简直太要命了。但是以严重违规处理,则清爽很多,能即刻让对方净身出户。这对陷入人员过剩的海尔来讲,无异于一剂良药。是的,对于海尔和张瑞敏来讲,如何把人变少点,一直是个挥之不去的难题。2人太多,对很多传统企业都是一种无法言说的痛良叔刚刚做咨询时,给一家大型企业总经理做访谈。他们是传统行业,每年营收过百亿,绝对的行业翘楚。谈起业绩时,那总经理神采飞扬,滔滔不绝。当我问到,他公司一共有多少人时,他马上沉寂了下来,过了很长一段时间才说:人有点多。我问他,到底有多少人呢?缓缓的,他一脸痛苦地说到:12万......那个表情,我至今记得。如果你没做过经营,可能很难理解。带兵打仗,队伍是多多益善。假如你是个将军,会很自豪地说,我的大部队有12万人!可你要是个管理者,可能不会为这个数字自豪,反而会
机器人的未来发展:从工业自动化到知识自动化

机器人的未来发展:从工业自动化到知识自动化

机器人

【摘要】重点围绕软件机器人、知识机器人、平行机器人和相关的机器人学,对机器人发展的历史与趋势进行了简要的探讨。主要观点如下:1)在加强和提高现有工业机器人,特别是以物理形态为主的机器人技术与应用的基础上,必须重视以软件形态为主的机器人,特别是知识机器人和虚实互动的平行机器人技术的发展;2)工业机器人曾在工业自动化过程中发挥过重要作用,知识机器人的未来是知识自动化,必将在智能产业中起关键和核心作用,连通物理、社会和信息空间,使工业制造系统从过去的牛顿式机械系统成为默顿式智能系统,这就是未来机器人发展的主要特征。【关键词】机器人;机器人学;软件机器人;知识机器人;云机器人;平行机器人;知识自动化;智能产业近年来,机器人技术的研究与应用在全球范围内得到了各发达国家的空前重视,从美国的国家机器人计划、欧盟的SPARC机器人研发计划,到日本的机器人新战略等,充分表明机器人技术对发展国家实力和保障国家安全的重要性。长期以来,中国相关部门对机器人技术的研发也给予了很大的支持,尤其是自2014年起,在各级政府的推动下,我国机器人产业的发展呈爆发式增长,一场中国式的机器人大跃进势不可挡。据报道,2014年中国工业机器人市场销量达5.7万台,与2013年的3.6万台同比增长55%,约占全球市场总销量的1/4。中国已经连续两年成为全球第一大工业机器人市场,但其中2013年国内企业仅占中国市场销量的15%左右。另据国际机器人联合会(IFR)统计,20052014年间,中国工业机器人市场销售量的年均复合增长率为32.9%,而20042013年间为29.8%。预计到2017年,工业、服务和特种机器人的全球市场规模将达到750亿美元,并带动相关产业上千亿美元的增长。该统计同时还指出,2013年,中国每万名制造业从业人员机器人保有量仅为25台,而世界平均水平为58台,其中韩国396台、日本332台、德国273台。对于机器人应用最多的汽车行业,先进汽车生产国的工业机器人使用密度均己达到1000台/万人,而中国仅为213台/万人。因此,在目前的形势下,如何进一步健康有效地发展机器人技术,是一个必须关注的重要问题。人才培养、深入应用、让机器人在产品产业的转型升级中切实发挥作用,是大家公认的正确途径。同时,本文认为,除物理形态的机器人之外,应更加注重软件形态的机器人技术的发展与应用,吸取计算机技术发展过程中重硬件、轻软件所造成的信息技术与产业长期整体落后的惨痛教训,避免重蹈覆辙。工业时代的核心技术是工业自动化,物理机器人正起着越来越重要的作用;但智能时代的核心技术将是知识自动化,因此必须从一开始就加快、加强以软件形态为主的知识机器人的研发与应用,以软件机器人的发展促进物理机器人的升级,尽快形成软件和物理形态平行互动的新型机器人系统,并以此为突破口,引发下一代智能机器人的迅速发展。1 物理机器人:功能智能化与深度化第一台可编程工业机器人Unimate源自George Devol 1954年的专利Unimation,即通用自动化(universal automation)之意,由Joseph Engelberger主持试制生产,1961年完成并用于通用汽车公司(General Motors, GM)的压铸生产线。1978年,他们又推出用于组装生产的PUMA(Programmable Universal Machine for Assembly)机器人,这才真正启动了工业机器人的时代。随即,以George N. Saridis为首的自动化与智能控制学者进入机器人领域,于1984年创立IEEE机器人与自动化委员会,3年后转为IEEE机器人与自动化学会(RAS),今天已成为全世界机器人领域最大最具权威的学术研发与应用专业人士的组织。从发展历程来看,机器人技术的研发与应用在20世纪80年代后期至90年代中期达到了一个历史性的高潮(图1为本文作者当时在美国亚历桑那大学机器人与自动化实验室进行实验,领导团队于1992实现了通过互联网从法国和日本远程控制实验室的工业机器人),逐渐从工业制造向国防、救援、医健、娱乐、家庭、教育、生物等方向扩展,形成了工业机器人、服务机器人和军事特种机器人等分支。但核心技术基本相同,而且都是以机电一体化的物理形态机器人为主,机器人软件开发、机机通讯、人机交互等重要但非主流方向[7]为辅。20世纪90年代后期,由于科技发展的热点转向网络技术的研发与应用,机器人相关工作受到一定冲击,一度进展缓慢,人才流失严重。进入21世纪后,随着机器人和无人机在美军反恐战争中的有效部署、特种手术机器人的成功应用、无人车的重大突破,特别是智能技术的迅猛兴起与融合贯通,物理机器人的研发与应用也进入了一个新的历史阶段和高潮。除传统的机电传感、规划控制、协调执行等研发方向之外,物理形态机器人的最近工作呈现许多新的趋势,例如:1)人机交互、人机共同操作(Co-manipulation)、人机安全等;2)软体机械人,从柔性机械臂向软性材料构建的机器人发展,对各种性能的人工假肢、人工关节和驱动型人工肌肉的开发;3)小至体内检测、释药、手术的体内医用机器人,大至管道检测维护和岸边或离岸的巨型机器人等多种多样的特种机器人系统,还有更多种类的先进机器人武器等;4)以无人车或智能车为代表的移动机器人更为引人注目,各大汽车制造厂家纷纷介入,推出自己的相应产品或演示系统,机器人汽车或许不久将成为现实;5)机器学习、SLAM、概率图方法、多源数
雅客智慧:开创口腔种植机器人智能时代

雅客智慧:开创口腔种植机器人智能时代

机器人

随着美国的“再工业化”,德国的“工业4.0”,日本的“新机器人战略”,以及我国“智能制造2025”战略的提出,被誉为“皇冠上的明珠”的机器人,也逐渐成了众人关注的焦点。 其中,医疗机器人更是成为全世界争夺的战略技术制高点。以手术机器人来看,欧美手术机器人企业早已瞄准了中国的巨大市场。目前,行业几乎被美国直觉外科的达芬奇机器人垄断,国内的市场也几乎完全被达芬奇占领。 医疗事业关乎国计民生,拥有自主产权的医疗机器人迫在眉睫。国产企业也不甘落后,在政策和资本的支持下奋起直追,争取弯道超车。 在时代的大潮推动之下,王利峰不知不觉中发现,自己已经成为了医疗机器人国产化的先锋。 全球首台! 自主式种植牙手术机器人问世 2013年,重返北航机器人研究所攻读博士学位的王利峰接手了(作为主要研发者开始进行)一项与空军军医大学口腔医院合作研发种牙机器人的课题。 此前,王利峰已经深度参与过多个医疗机器人的项目。他在北航机器人研究所攻读硕士期间,就参与完成了第五代脑外科机器人研发与临床应用研究以及国内第一台骨科机器人的部分核心研发工作,这两个项目是为数不多已经通过国家药品监督管理局批准的手术机器人。 在王利峰和团队成员四年多的不懈努力后,我国自主研发的种植牙手术机器人终于在2017年成功问世。 有了这台机器人,医护人员只需要在手术前为患者带上 3D 打印的定位标识,分别在口腔内和口腔外规划好运动路径,机器人可以自动采集并收集这些记录数据,同时还会进行模拟和数据矫正;为患者消毒铺巾,实施局部麻醉之后开始手术,种牙机器人的机械“手臂”会按照规划的路径自主运动到预定的位置,并根据医生设计的种植体位置、角度和深度进行精确的窝洞预备,最后将种植体拧入窝洞中。而且在手术中,机器人会识别患者头部的移动而迅速做出调整保证手术的精准。 在传统的种牙手术中,由于口腔内部空间狭小,医生在进行种牙手术的时候视野和操作都会受到限制,即便是经验再丰富的医生也难免出现误差。而医生借助自主式种牙机器人进行手术,可以大大提高种牙手术的精确度。 不仅如此,医生借助种牙机器人,还能缩短手术的时间和创面恢复时间。“过去种植牙时,医生需要切开患者的牙龈粘膜层,放入种植体后再缝合。但通过机器人操作后,可以直接在牙龈粘膜层上打洞至牙床内部,植入种植体。 有了种牙机器人的助力,不但减轻了病患的痛苦,而且可以极大地减少医生重复性的体力工作,更大限度地发挥医生本身的主观能动性。据了解,这款种牙机器人是全球首台自主式种植牙机器人,这一消息在央视及多家海外媒体报道后,在全世界引发了轰动。 毅然创业, 用技术解决医患痛点 博士毕业后的王利峰,再一次站在了人生的十字路口。 这一次,他选择了创业。 其实,除了种牙机器人外,王利峰在读博士期间,还与国内许多知名三甲医院深度合作,进行了其它多个领域手术机器人的研发工作。 但最终,王利峰还是选择种牙机器人作为了创业的方向,在2018年成立了雅客智慧。选择种牙这个方向的原因,是王利峰认为这个行业更需要他。 “种一口牙等于一辆宝马”在近期成为了人们热议的话题。 这一方面反映了种牙的价格昂贵,而种牙的昂贵不仅只是因为种牙的材料
聊天机器人落地及进阶实战 | 公开课速记

聊天机器人落地及进阶实战 | 公开课速记

机器人工程聊天落地意图NLU

近年来,聊天机器人技术及产品得到了快速的发展。聊天机器人作为人工智能技术的杀手级应用,发展得如火如荼,各种智能硬件层出不穷。本次公开课中,AI科技大本营联合电子工业出版社博文视点邀请到上海瓦歌智能科技有限公司总经理,狗尾草科技人工智能研究院院长邵浩老师,他将在3月21日的公开课中为大家讲解聊天机器人落地及进阶实战。本课程将全面阐述聊天机器人的技术框架及工程实现细节,并对于聊天机器人的下一代范式:虚拟生命,进行了详细的剖析,同时,聚焦知识图谱在实现认知智能过程中的重要作用,给出了知识图谱的落地实践。本课程适合工程一线的研发人员,可以通过本课程了解聊天机器人的实现细节。适合高校学生,可以通过本课程学习聊天机器人的技术框架及典型算法。以下为公开课速记整理邵浩:今天跟大家聊一聊聊天机器人的落地及进阶实战。我是来自深圳狗尾草智能科技有限公司的邵浩,现在负责公司人工智能研究院的工作,主要是做聊天机器人相关产品。 今天想跟大家聊的内容包括这几个方面,包括以下几个部分: 第一部分,跟大家讲一讲聊天机器人总体产生的背景和技术架构; 第二部分,会跟大家聊一聊聊天机器人在工程实现的方方面面,这里我会配合一些代码,跟大家解释一下它每个模块、每个功能是怎么实现的,希望大家听完这部分之后,可以自己动手去搭一个聊天机器人; 第三部分,想跟大家聊一聊知识图谱在虚拟生命中的应用及技术路径,并会简单介绍虚拟生命,也就是我们发现聊天机器人的种种问题之后,想着是不是有更好的办法去解决聊天机器人所面临的很多问题; 最后一部分,花5-10分钟时间跟大家聊聊工程落地的其他问题。 简单介绍就到这里,我们言归正传。聊天机器人概述首先介绍一下背景。大家现在对人工智能的感觉是什么样子?无论是AlphaGo,还是AlphaGo Zero,战胜人类最顶尖的围棋选手;还是Project Debater,一个参加人类辩论赛的机器人,在今年1月份创造了不俗的成绩;还是波士顿动力这种行云流水般的机器人和机器狗,它也是人工智能非常好的一个应用,而且像OpenAI曾经在去年DOTA2比赛中也很厉害。DeepMind最近在搞《星际争霸2》的比赛,人工智能正在突破一项又一项人类的想象空间,所以我们对人工智能现在有一个非常直观的印象是什么?人工智能是上天入地无所不能的,所以我们会觉得,无论是媒体中现在所说到的机器人觉醒,还是人类毁灭,就变成了非常自然的一个事情。我们如果带着这样的感觉去看聊天机器人的话是什么样的呢?我们有什么样的使用感受?各位同学可能跟我一样,凡是有这个聊天机器人产品,我们大概用了1、2天,在新鲜感过去之后,就发现这个东西再也不会开了,或者再也不会跟它聊天了,到底什么原因造成这种现象?除了误识音、准确率不高之外,我们对这些问题还是很宽容的。但是我们上次在媒体上看到一篇报道外国用户使用亚马逊的Echo音箱的时候发生了什么事?他晚上正在睡觉,突然这个灯亮起来了,然后冷笑了两声!这个太恐怖、太吓人了、太毛骨悚然了!如果是我碰到这种情况,在大半夜时这个音箱突然自己笑了,除了拔掉它的插头,把它从楼上面扔下去摔得粉碎之外,也没有什么好的办法解我的心头之恨,所以我们可以看到这个聊天机器人产品实在表现不佳。说到聊天机器人产品为什么做得这么差?我作为一个从业者还是很宽容的,因为我知道聊天机器人的边界在什么地方,所以我在问聊天机器人产品的时候就在想:这个聊天机器人产品可能这个地方技术有问题,所以我不去问或者尽量避免去问它。但是普通的用户对聊天机器人产品是没有那么宽容的,我花了那么多钱买这个聊天机器人音箱,我希望的是可以跟我自然对话的机器人,但是这个达不到之后,他就会埋怨开发者。用户一般对我们这个产品的宽容度真的是很低的,他们觉得你们技术做得真的很差,其实我们行业从业者们觉得很委屈的,这个事情不能怪我们,是根据技术现在发展的程度所决定的。像微软亚洲研究院副院长周明老师曾经说过,语言智能是人工智能皇冠上的明珠,如果我们把这个美女当作我们所有的技术的话,人工智能就是她头上的这顶皇冠,而语言智能就是皇冠上的这颗明珠。什么意思?自然语言处理本身就是非常难的事!我举个简单的例子,大家就明白了,比如我说一句话叫明明明明明白白白喜欢他,但是他就是不说。我问同学们,是谁喜欢谁?是谁又不说?这句话很难。我再说一句话,比如我没有看见他拿了你的钱包,如果我们在不同的语气、不同音调和重音的情况下,这句话的含义是完全不一样的。比如说我没有看见他拿了你的钱包(重音在看见上),这个意思就是我没有看见他拿了你的钱包,我可能听别人说他拿了你的钱包,但是我没有亲眼见到,或者我没有看见他拿了你的钱包(重音在钱包上),就是说他拿了你的别的什么东西,但是他没有拿了你的钱包。所以我们在理解一句话时,它其实是跟上下文,跟说话者的世界观、说话者的情绪、所在的环境、听者的世界观都是非常相关的,一句你好吗?或者一句吃了吗?在不同人物中的对话的含义是完全不一样的,所以NLP技术本身就是非常难的事,当然,还是要做,为什么要做呢?我曾经在其他的报告也说过,微软在2016年就提出这样一个口号,叫对话即平台,它认为语言是人类交互最自然的方式,从远古时代开始,人类就用语言进行狩猎时的互相协作、互相呼应,在自己丰收时,在村子里跟大家八卦八卦,促进大家的友谊,所以语言是人类最自然的一种交互方式。但是受限于硬件和软件,我们之前跟电脑基本上是用键盘和鼠标进行交互的,所以我们现在深度学习、大数据、GPU的硬件提升之后,可以直接使用语言跟机器进行交互了,这也是为什么2016年微软提出对话即平台的这个概念。 聊天机器人生态技术体系我们看一下聊天机器人怎样分类的,它可以分为三个大的生态体系:一是框架,二是产品,三是平台。怎么理解?Echo是一种产品,Apple的Siri是一种产品,公子小白是一种产品,IBM Watson是一种产品,小冰也是一种聊天机器人产品。这些产品有不同的展现形式,比如Siri的载体是手机、微信或者微博;我们有一款音箱,它的载体是它的硬件,这些产品一定要有一个载体去进行承载,这个载体就叫做聊天机器人的平台,这个平台可能包括像微信、LINE、MSN等等这样一些平台。我们可以理解为是利用这个框架来造这个产品的一个平台,国外的有Alexa、LUIS、Wit,国内有一些比如像ruyi、UNIT都属于聊天机器人的框架。我们再往产品这个方向看,产品主要分为两大类方向,第一大类叫被动交互,第二大类叫主动交互。所谓被动交互就是我问它答,我跟它说一句,它跟我说一句,这叫被动交互。我们刚才讲到了被动交互,被动交互其实分为好几种。 聊天机器人的工程实践(代码解释)接下来的代码实战环节,会跟大家从闲聊、到任务对话、到问答,跟大家完全梳理一下聊天机器人的所有分类。很多聊天机器人都做不到主动交互,因为它需要很强的知识图谱知识和场景设计,比如在你心情不好时给你推荐一个什么音乐,这是主动交互方面,现在做得不是特别好。安利一下,我们出了一本书,叫《聊天机器人技术原理与应用》,感兴趣的同学们可以看一下。现在开始进入实战环节,我从最简单的开始,不需要有任何知识储备,就可以去做一个聊天机器人,一直到我们自己去搭一个聊天机器人的框架,并且利用Python去实现这个聊天机器人。快速上手第一步带大家看一下这个快速上手。我给大家准备的是这个例子,大家可以看一下我的网页,我给大家准备的例子是一个叫ruyi的平台,它的网址是ruyi.ai,打开这个网页以后有一个叫魔戒的技能插件工具,这个时候它上面有一句话叫我要产机器人,登陆一下,我们就可以利用它的平台去造一个机器人了。这里可以看到我现在建了很多聊天机器人,我可以新建一个,为了节省时间,我直接管理我现有的聊天机器人。可以让机器人具有不能的技能,在技能商店里可以让机器人拥有中译英的技能、影视点播技能、挑战单词技能、儿童闲聊的技能,点击获取技能,它就可以直接部署,部署之后我就可以直接跟它聊天了,这个功能已经嵌入进去了。还有一种,是我们可以在对话场景里去建立一些新的意图,这个意图相当于你配了一些语料,然后它回答一些特定的语料,比如我这里建立了一个新意图叫寒暄,这个意思就是当用户说Hi或者Hello或者你好的时候,机器人回答是Hi/Hello/你好,好久不见。这个ruyi机器人如果我们按照这个技能去设置一下,我们可以试一下,比如我说Hello,它就会说你好,好久不见,我再说一句Hello,它会随机在这两个回复里选择一个进行回复。其实大家不需要任何基础知识,就可以去造一个自己的聊天机器人,我们是利用ruyi.ai的平台去做这个事情,这是最简单的操作方法。接下来,我们再讲稍微难一点的一个平台。这个平台叫做百度的UNIT,百度的UNIT现在做得很好,我们去看一下这个百度UNIT怎么用的,网址是unit.baidu.com,这个很漂亮,鼠标移动过去有一些很炫的效果。进入UNIT之后,还是为了节省时间,我不直接去新建一个机器人了,我直接在我今天下午建好的机器人上进行一个测试,我建了一个叫测试的机器人,它同样跟ruyi一样可以添加一些技能,比如我可以添加打电话、电影、天气、机票、闲聊等等这样一些技能,而且它还有一个比较好的功能是什么?我可以自定义去配一些技能,比如在我的技能里可以配一个叫test的功能,我在这个test里设置了一个天气,就是问天气的意图、对话。怎么去做这个事呢?讲这个平台时,我为什么说它比刚才的那个ruyi稍微难了一点?它这里面需要牵扯到我们对槽位的理解。我们先不解释什么叫槽位,我们先看一下我设定这个意图是怎么设定的。我设定这个意图叫weather,它的别名是天气。它怎么做呢?我设计一个词槽叫city(城市),也就是说当我在问机器人一个问题时,我必须把城市这个词槽的信息告诉机器人,如果我没有告诉机器人的话,它就会自动的反问说你在哪个城市?这个时候我们如果去这样设置的话,在我说到比如今天上海天气如何时,它就可以说现在播报上海的天气情况,它会在会话过程中检查我是不是已经有了ctiy这样一个槽位。这就是我们讲了非常简单的两个平台。 刚才我提到为了用UNIT需要去了解这个槽位是什么意思。槽位是什么意思?我再跟大家详细解释一下。我们看一下这样一个对话,比如说我现在在办公室,跟大家讲这个话题,我很困,我跟这个聊天机器人说能不能帮我订一杯星巴克的咖啡送到办公室,聊天机器人可能回复说好的,点你最爱喝的大杯美式可以吗?它其实就是个任务型对话,任务型对话就是为了满足特定的任务指标,比如订票、订咖啡、订餐。在任务型对话里,一般会牵扯槽位提取和填充,槽位就是在这个任务里所需要的这些关键信息。我们看一下它的处理流程,当这句话进来之后我们首先会在NLU自然语言理解部分做个意图识别,可以用规则的方法去做,可以用分类器的方法去做,也可以用现有的深度学习方法去做,这都没有问题的。如果我们判断这句话的意图是订咖啡,接下来要做的什么事情?接下来要做的就是把咖啡需要的这些槽位,如地点、店名、口味、类型填进去,这个方法里面又牵扯到很多自然语言处理的技术,这里就不是我们这次课的重点关注内容,我们只关注我可以在这个句子里去抽取到这些信息。比如说地点,它是东方科技大厦,是根据我GPS定位,定位到我是东方科技大厦,店名是星巴克,类型是外卖。因为我说的是帮我订一杯送到办公室,并没有说口味,机器人在这一步时并不知道我想要什么口味的咖啡,这时就有问题了,不知道什么口味怎么帮你点呢?这个对话现在进入到我们所说的对话管理模块,对话管理分为两部分,第一部分叫DST,第二部分叫DPO(以前我们叫DPL)。DST的意思就是对话状态跟踪,DPO的意思是对话策略优化。DST所做的事情就是跟踪它的状态,并且看一下有没有上下文,可能他在上文里直接说我想喝美式,这就不需要再去猜测用户口味了,如果我们发现这个上下文是没有的话,我就需要去猜测他的口味到底是什么,这里我直接写了,它可能根据用户之前点的咖啡的偏好,我直接排了个序,美式第一,拿铁第二,摩卡第三。这时它就需要做一个决策了,这时是要反问用户喝什么口味呢?还是直接给用户回复一句话,帮他点一个默认的咖啡呢?这里就需要跟产品的设定来进行回复。我们不希望聊天机器人在功能型对话中有太多的多轮交互,我们希望一句话就能够理会我什么意思。就跟皇帝和太监一样,皇帝一个眼神,这个太监就知道马上要做什么事情,这个是最棒的。但是聊天机器人没有那么聪明,我们尽可能的让产品设计得比较聪明。那怎么设计?比如这句话就是设计场景,我们知道用户最喜欢喝美式,这句话可能就说那我点你最爱喝的大杯美式可以吗?这一方面询问了用户的口味,另一方面又节省了对话轮数,这是任务型对话的处理流程。当然,最后自然语言生成时也需要用槽位把这句话生成出来,这是我们所说的任务型对话的基本概念。理解这个东西,就理解了我们在UNIT进行天气槽位的填充。聊天机器人三种不同形态的实现接下来我们开始介绍聊天机器人三种不同的形态是怎么去实现的。检索式机器人最简单的做法是什么?比如用户对这个产品说你穿的衣服好漂亮。机器人会回复谢谢你的赞美,它一般是怎么做的?当你说你穿的衣服好漂亮的时候,它会在一个很大的语料库里去搜索,搜索这里面哪一句话跟我现在问的问句是最接近的,然后把最近这句话的回复直接回复给用户,这个看起来是不是很简单?所以其实如果你掌握了检索式方法的话,就完全可以做一个非常棒的机器人。只要你写足够多的语料,用更好的相似度算法,这个聊天机器人就会表现得非常好。但这个情况只出现在单轮的过程中,如果在多轮的情况下,检索式的方法肯定就挂掉了。这里最关键的是什么东西?最关键的是匹配。 我们再看一下它基本的技术流程是怎么走的,比如我说刚才那句话你穿得衣服好漂亮。它是作为一个问句,我们就需要做一个retrieval,这个retrieval是搜索,我们从大量文件语料对里去搜索跟我这句话最接近的一些句子,并且把这个候选集给筛选出来,有了候选集之后,我们就会做一个排序,这两句话到底哪句话跟我这句话的相似度最高,然后我再把它这句话的回复来回复给用户,这是它基本的检索式的流程,这用2014年一篇论文中提到的经典模型,我就直接拿来用了。(1) 基于文本相似度接下来开始介绍基于文本相似度、基于语义相似度以及基于深度学习的检索式方法,也就是说对于检索式方法,我们现在这里说3种比较基本的技术。 第一种,基于文本相似度的方法。什么叫文本相似度?举个例子你穿的衣服好漂亮哦,你的衣服真漂亮这两句话,大家直面上感觉非常相似,它怎么相似?因为它的字、它的词有很多重合,这就是文本相似度的直观感受。我们知道文本相似度算法有很经典的比如边际距离、TF-IDF、BM25,这种都是非常经典的算法,我这里对算法部分就不做更多深入的描述了,大家如果感兴趣的话,推荐大家去听一个课程CS 224N,这个课程是斯坦佛大学Christopher Manning教授零几年上的一门课,应该就是叫NLP(自然语言处理)这门课,它对经典的自然语言处理算法都做了非常好的解释。那么我们一般的做法是,这种相似度算法一般是用到字符串匹配,我们知道字符串匹配的速度一般非常慢,但是我们可以借助相似度的检索引擎提升它的搜索效率。这里有两个,一个叫ElasticSearch(ES),另一个叫HNSW,如果感兴趣的话,大家可以在后面课程的PDF、PPT里去看一下这两个项目。 接下来实战里是用这个基于ES相似度检索引擎,给大家实现一个检索式的聊天机器人,我这里列的基本是核心的代码,就不在这里给大家演示了,PPT可能看得更清楚一点。ES怎么去用?这个很简单,我们直接去Import这个ElasticSearch,首先要配置一下ES的信息,信息包括什么?它的主机IP,比如说我这里是172.27.1.203,端口号是9201,然后数据库名称是什么?我们把它起了一个叫similarity_chat,它的表名称叫什么?比如我们起个名字叫qa_corpus。 接下来就是正常的流程了,比如我们首先要初始化一个对象,小写的es这个对象,这个对象里所有信息是来源于我们刚才配置的es信息,这里面是端口号和IP。接下来我们想往这个es里去添数据,因为我们想把这样一批数据添加到es里去,13页里这些数据,怎么去添呢?这里我们define一个方法,这个方法叫insert_one_data,就是我们插入一条问答语料,怎么去插入?一个问答语料包括两部分,一个叫Query,一个叫Answer,就是一个Q,一个A,然后我们会调用一个es的index方法,这个index方法其实是直接封装好的插入语料的方法。它是怎么去做?如果这个数据库不存在的话,它会直接生成一个新的叫这个名称的数据库,并且建立一个表叫qa_corpus。然后对于每一条数据,除了Query和Answer,这是两列数据,一个Query,一个Answer,还自动生成一个id,相当于我们最后生成的数据是三列数据,第一列是Query,第二列是Answer,第三列是id,这是我们预先存了这样一些句子。 接下来要做什么事?接下来要做检索,我们来了一个问句之后,定义了一个方法叫similarity_chat,我们对这个问句进行检索,跟我刚才数据库里哪一句话最接近,然后我们人为设置了一个90%的阈值。相似度为90%以上的答案返回作为最好的候选答案。Body的格式就是query还有这个minimum_should_match,就是它90%的值。然后我们用es这个search的方法去找到它的候选集,找到候选集之后去比较这个阈值,如果所有的阈值都低于我们设计的90%的话,它就直接返回一个兜底回复,比如else,answer这是一条兜底回复,然后return answer,这是我们的整个实现方法。具体流程在上面看一下,首先,左边这个图是我们插入的三条语料,插入三条语料的Query和Answer分别是你的衣服真漂亮、谢谢你的赞美,然后还有这两句。我们现在有一个query_sent是你的衣服很漂亮,我们调用刚才我们已经设定好的similarity_chat