浅谈智能硬件服务机器人的产品实现过程和应用

作者:赛泽

2016年,我开始接触服务机器人,2年多的时间,让我逐步了解人工智能和智能硬件服务机器人。现写下当时完成智能硬件服务机器人解决方案过程中的实战经验和教训、收获和感想,既是对自己的沉淀,也是希望能够帮助想要了解智能服务机器人的朋友。
一、整体方案思路
我接触的智能服务机器人针对的市场是to B市场,客户主要是政府和银行等大型企业。公司是专门做语音语义服务平台,所以我们做服务机器人的初衷是希望把AI的技术和单纯的硬件机器人结合,形成AI+硬件机器人的一套完整方案。我们的智能服务机器人的整体方案基本的思路是:基础产品实现→项目定制上线→售后运营和维护→产品更新迭代。
1、基础产品的实现
要实现智能服务机器人产品,主要涉及这几个方面:产品应用场景→产品功能/技能(主要AI技术/引擎和基础技术)→硬件机器人的整体设计(对应的硬件支持)及软件系统选择。具体如下图:
  1. 应用场景:
服务机器人分为几种,有的是重点做智能问答咨询和简单业务办理,有的是做货物递送、巡航等,有的是单纯做业务的整合,还有的仅仅是娱乐互动等。我们的服务机器人更偏向于第一种,因为公司本身有AI语音语义的优势(多领域对话积累和NLP(Natural Language Processing自然语言处理)平台等),所以更偏向于做大厅的咨询员、大堂经理等这样的角色,目的主要是为了给客户减少人工成本、分流人工服务压力。后来,在真实环境中,由于很多人对智能交互的陌生、环境噪音及口音等不相同等多种因素,虽有引导话术,但想要咨询流畅有时候还是需要工作人员在旁协助。
除了大厅担任服务人员这样的角色外,我们也利用室内导航技术,使机器人可以担任展厅和大厅的引导员,与工作人员相互配合,给用户指引路线,比如带领用户到某个办事窗口。不过在实际应用过程中效果并不是很突出,一是实际场景用的少,二是受制于当时技术限制,后来跟第三方合作有做改进。
服务机器人还可以参加各种舞台表演,能够聚集人气,给人新鲜感。我们的机器人参加了很多的展示、表演,甚至上过大型舞台。舞台表演虽然不能完全展示机器人的能力,也不能帮助客户解决实际问题,但是很大程度上吸引了人流、聚集了人气,既能宣传我们公司,又可以宣传客户公司,这也说明,有的公司使用机器人更多的目的是“炫”和宣传营销。
  1. 产品功能:
基于业务场景,我们的功能主要以语音业务咨询办理为主,其他功能为辅。整体语音功能主要包括:
  • 语音唤醒,唤醒词,免唤醒词
  • 语音识别
  • 欢迎词,引导词,属性知识等
  • 闲聊问答对话和NLP知识库
  • 业务知识对话和业务知识库
  • 指令动作表情反馈对话
  • 语音播报音色选择
这些语音功能和配合程度都需要产品定义和选择。其中,闲聊问答和NLP知识库根据公司情况选择,如果本身公司就有NLP基础知识库(比如闲聊、天气、百科等),那根据需求对接即可,如果本身公司这方面薄弱,那就要使用第三方的知识库或者自己建设。
业务知识对话一种是通过语料收集-模型训练测试到对话实现,一种是快速通过已有的强大对话管理平台实现,我们更偏向于后者。我们的语音交互大部分都是在云端完成的,但是机器人也存在无法连接网络的时候,所以有部分的对话,也会放在本地。
基于语音交互,我们还利用新的技术做了声源定位转向和语音打断功能。前者可以使机器人能够判断对话人的方向并且面向对话人,后者可以不用唤醒持续对话,提升对话的流畅度。
(注:基于硬件的语音交互一般是:唤醒(免唤醒)-[可加声纹识别/人脸识别]-语音识别-语义理解-对话处理(本地或云端)-硬件执行操作,同时语音播报;若支持EC(Echo canceller,回声消除)的话,可支持打断;不同场景可能有所不同)
语音功能除了VUI语音对话,也要有GUI界面相互配合,能让用户更容易明白回答的内容和流程。
基于语音的能力,我们还使机器人具备了人脸迎宾、行走避障,室内导航、唱歌舞蹈等这些功能(含GUI)。为了丰富功能,可以接入第三方服务,尽可能的让机器人看得到、听得到、答得出、有表情、会唱、能走能停、会跳,能导航,做一个有多种功能的业务咨询机器人。
在我平时测试和演示过程中,机器人在办公室环境还是比较稳定,整体效果还是不错的。
由于硬件做远场语音交互对外界环境要求较高,所以在完成机器人的语音交互的过程中,有几个语音上的难点:
  • 如何更好地在远场情况下屏蔽真实环境的噪音,做到更好的语音识别效果
  • 如何更好地判断此时与机器人说话的是谁
  • 如何提升语音交互的流畅度,不用反复唤醒又能易于使用
我们利用降噪、Beamforming(波束成形)等多种方式解决,有一定效果,但是在人声比较嘈杂的环境中还是很难达到特别好的效果。
在设计行走导航的功能上,避障和路线规划是非常重要的,因为行走对机器人来说是和其他硬件的区别之一。机器人毕竟不是人,很难做到人那样可以在人群中灵活穿梭,如果避障不及时会导致撞到人或物体,如果避障距离过于大,也会导致反复避障,对用户体验不好。路线规划亦是如此。
导航有几种方式,一是在没有传感器和二维码的情况下,只能设定固定路线,这种是一旦受到外部影响就要重新推回到原来的位置,现在已经不用了;二是使用二维码的方式,这种方式需要在天花板上贴上很多二维码,机器人可以在二维码范围内规划路线,但脱离了二维码就无法导航;三是利用激光传感器和深度摄像头,这种方式可以扫描整个室内,形成地图,然后再进行起点和终点的路线规划,会自由很多,但是一旦原来地图里的障碍物发生了变化,那就会影响路线规划。
  1. AI技术/引擎:
在整个智能服务器人开发的过程中,要融入多方面的AI技术和引擎。
在语音交互方面,主要是在唤醒引擎、语音识别引擎及TTS上会使用多方的技术作实验和比较,目的一是希望是在能够在我们的机器人上和我们要求的环境中达到比较好的效果,二是集成多方的能力在做项目上也会更加的灵活。比如唤醒率我们就会特别关注,因为这是和机器人交互的第一步,如果唤醒率达不到要求,就无法有好的用户体验,这样也就没有后续的业务咨询对话了。
语音唤醒优先选择用科大讯飞的技术,本身引擎的效果是可以,如果唤醒词选择合适且阈值调节到合适的数值,唤醒率可以达到95%以上,能达到我们的要求。唤醒引擎的效果和麦克风的选择也有关系,一开始我们使用2麦的麦克风,使用的是软件唤醒,实际表现的唤醒率达不到95%,后来使用6麦的麦克风(使用6麦其中一个原因是为了进行声源定位),使用硬件唤醒,唤醒率明显提高了很多,但是误唤醒率也有一定的增加,这需要根据场景调节阈值。成本是增加的,但是相比效果,我们更要求好的效果,而且服务机器人售价并不低。
语音识别实际效果对比了云知声,声瀚,科大讯飞(普通话,办公室安静环境,人机距离30-40cm),在机器人上的效果差不了太多,长短句识别率都可以(部分专业词汇识别需要优化),但因为考虑到唤醒引擎用的是讯飞的,所以识别引擎也选择的科大讯飞。
基础知识库和业务对话知识库,一种方式是通过使用公司自己的知识库和平台,还有一种是使用外部的开放知识库(比如图灵,讯飞等)和公司对话管理平台能力结合。
除此之外,还用到了人脸识别技术,手势识别技术,声源定位,Beamforming和EC,室内路线规划导航技术等多种AI技术。
使用多种技术引擎对系统和配置都有一定的要求,因为多引擎同时使用时,会占用较大的资源,如果系统和硬件无法支持,会导致多项AI技术无法更好的配合使用(如页面卡顿,交互不流畅等),影响用户体验。
具体系统和配置的选择要看调用引擎的数量和应用环境,比如如果使用widows系统,那么选择酷睿i7处理器,处理速度会更快,但是可能对机器人续航有影响,也会增加成本,这个时候要根据实际情况选择。如果不考虑成本,那么尽可能的使用中高端的硬件配置(硬件如:麦克风、CPU、GPU、内存、传感器等),能让整个产品表现更优。
  1. 硬件选择和构成:
对公司而言,硬件不是主业,核心还是软件和语音语义的能力,因此可以分为两种方式,第一是和其他硬件机器人合作,使用合作方的硬件机器人(国内比如木爷、优必选等,国外引进硬件机器人,如Ina),我们做软件功能的二次开发;第二是自己研发符合我们自己设想的机器人并和我们的软件能力结合。我主要负责的是第二种。
智能服务机器人的硬件外形多以仿人形、拟人化为主,因此设计也会相对耗时。每一个硬件机器人的硬件选择都会要和它的功能有紧密联系。服务机器人硬件除了CPU、电池、散热器、外壳和底座等基础硬件之外,还包括:
  • 高清摄像:做人脸识别
  • Kinect传感器:做手势识别(当时技术不成熟,功能不实用)、人脸识别都行(类似的传感器在国内也有人做)
  • 屏幕:主要的操作界面和视觉界面
  • 麦克风(2麦、4麦、6麦…):可做唤醒、声源定位、beamforming、语音识别等(一般唤醒距离长于识别距离)
  • 喇叭:发声,如果有音乐功能的话,对喇叭的要求会更高
  • 声波传感器/激光传感器:主要做避障,导航等
机器人产品主要是的操作来自于上层软件应用和底层驱动的配合,驱动应硬件完成相应的功能。机器人上层应用可以是客户端也可以是网页,也可以是安卓系统下的一个APP等,具体试系统而定。
服务机器人的整体硬件需要多种部分组成,尤其是外壳、底座等,需要定制,但是量又少,所以机器人成本也比较高,动辄几万、十几万。再加上其他的售后服务等,导致服务机器人的售价可以是十几万到上百万不等。一般的小企业不会购买,而更愿意购买价格低的终端机。
2、项目定制上线
智能服务机器人对应的场景和行业都不固定,只要有类似需求的行业都可以成为我们的客户。比如除了政府和银行,还有旅游、教育、医疗等行业。
项目定制一般分为知识定制、功能定制及硬件定制。一般定制最多的还是知识对话的定制,因为针对不同的企业,业务是必然有不同的。
3、售后运维
To B智能硬件一般的售后运维分为三个部分:语音交互的运维;应用软件系统的运维;硬件的运维
  • 语音交互:语料知识的更新;技能的更新(一般直接在云端进行维护)
  • 应用软件系统:界面的更新;功能的维护(一般是远程或云端更新维护)
  • 硬件的运维:电话或者现场支持(根据机器人的量,量小的话,3-5人的团队即可,量大的话会更多;或者是硬件供应商负责)
二、失败的教训
  1. 成功项目实际场景观察
对已经上线的项目,在允许的情况下可以到实际场景下观察用户的使用情况,用户类型、对用户的使用难度、什么问题问的最多、什么功能使用最多、真正帮助用户解决的问题、是否需要工作人员协助(有的后台可查看)。
实际场景中,发现一些问题 :
  •  有的用户可以简单的问机器人几个问题,能得到回答,但是不多,且能够连续上下文交流的对话少
  • 业务话术过于标准,用户问的问题非常口语化,会导致一些问题无法理解
  • 虽然有使用引导,但是接触机器人的用户少,有的人试了几下不会用就不用了,偶尔现场工作人员也会在旁协助
  • 现在网上办理业务很方便,去服务大厅的人不多,中年老年居多,有的本地口音会比较重,就很难得到正确的回答
  • 如果大厅很嘈杂的时候,机器人的识别会变差一点,有时会导致无法正确回答
  • 导航功能在大厅应用的少,因为大厅本身就不大,用武之地比较少,而且机器人行走较慢,跟不上人的步伐,很难能像人一样自由穿梭在人群中。
  • 正在业务大厅的时候,机器人的娱乐功能基本上没有人用,只有在做演示的时候,这样的功能才能吸引大众
到后来,真正在业务大厅的服务机器人,用的人会越来越少,大部分时候是现场工作人员只要给机器人开机后就放在那里。
所以,实际上,虽然可以帮助用户回答业务问题,但真正使用的用户不是很多,使用的用户由于对智能交互不熟悉、口音、噪音等问题也不能很快得到答案,几轮机器人回答不知道,就会导致用户蒙圈。还有的客户会说当用户使用的时候他们工作人员就会在旁协助。
虽然完成产品和上线项目,会有成就感,但实际看到的却会有种挫败感。除了环境、用户陌生等外在因素,其实,这和目前本身机器人的技术能力也有很大关系,目前的人工智能技术大都还不成熟,技术能还不能使机器人达到每次都能准确理解用户的每句话,不能达到和人完全自由流畅的交流。
这个问题不只是我们的产品如此,其实整个市场的现状就是这样,很多做机器人的公司突然涌出来,基础参差不齐,我们还是其中做得不错的。很多公司宣传的很智能,但是实际并非如此。
2、失败项目案例教训
曾经有过失败的项目,当时机器人在客户现场,但是客户总负责人却认为机器人和他想象的不符,认为机器人不像他想象的那般智能,通过了解知道他所想象的是当时技术很难实现的机器人的能力,至少是需要耗费大量精力去慢慢训练的,比如希望机器人能够用自己的语音唱歌。最终这个项目已失败告终,其中一个原因是给客户期望值太高,现实与想象差距较远。不置可否,也许智能服务机器人的发展可能才刚刚开始。
3、对未来发展的看法
智能服务机器人未来的发展必然还有很多山路要走,也依赖人工智能技术的发展。就目前而言,我认为服务机器人更上一层楼很难,需要更务实一些,产品要稳定,要尽可能降低成本,最好能找到用户能够经常使用到的业务结合点,突出一两个优点,能真正帮助用户或者客户解决某个问题。外形不一定要像人,但是要让它和人的交互更舒服更流畅。
三、总结
  1. 目前语音交互技术可以实现问答对话,但还达不到能和人自如交流的问题,尤其在远场语音交互环境,还存在一些困难。
  1. 在有用户界面的情况下,GUI界面应和VUI界面相互配合,帮助用户快速完成操作。
  1. AI技术里包含很多,但现在大部分的AI技术发展基本是各发展各的,没有相互融合。
  1. 智能服务机器人场景杂、行业多、再加上业务的差异,难在多个行业深入下去。
  1. 想真正在这些场景做好机器人的服务并非易事,还需不断的摸索,现阶段更重要的是保证产品稳定,易用(VUI和GUI相互配合)。
  1. 目前还在人工智能初期,应该是所谓的弱人工智能,技术还不成熟,机器人虽能够解决一些简单的业务问答、识人和路线导航等,但还存在许多不足。
  1. 从2016到2018年,有些机器人公司倒在市场的血泊,或不在出现、或改头换面重来,有些机器人公司抓住大树,得以喘息、继续前行。只要人工智能的发展越来越好,我相信,智能服务机器人的未来也会越来越好,这只是刚刚开始。

发表评论