大家未必知道狗尾草这个公司,但是面向情感陪伴的家庭服务机器人公子小白,大家一定听说过。情感陪伴给予了我们幸福感,但是我们希望更进一步,展现更强的生命感,这也是今天的主题:从聊天机器人到虚拟生命:AI技术的新机遇。我会从生命出发,慢慢谈到虚拟生命。
第一,我们先说一下生命,维基百科中对生命的定义可以归纳为,包括生长、繁衍、进化、意识、意志和感觉等,还有两个用其他颜色特别标出来,就是语言和思维,这是区别人和动物的最本质的区别。今天我们的论坛主题是NLP和服务机器人,NLP就是用来解决语言理解和思维表达的利器。从生命到人工生命有两条路径,一个是人造生命,可以用生物技术来实现,也就是说通过基因克隆技术来实现生命体的再造,另一条路径就是通用信息技术来创造数字化的虚拟生命。这里给出了一个二次元圈非常知名的大IP初音未来在开个人演唱会的画面。通过全息投影将初音未来(虚拟生命)投射到舞台中央,随着她的歌唱和舞动,下面的观众(真实的物理人)挥舞着荧光棒一起附和,场面非常壮观。
事实上,在我们的电影大银幕上,如耳熟能详的电影Her,还有如机器人养成影片Chappie,以及前一段时间热播的西部世界中描述的机器人都可以看作是利用IT技术完美实现的虚拟生命。
除了初音未来和大银幕上的例子,虚拟生命也逐步在我们的生活中出现,这里再举两个例子。一个例子是邓丽君,大家都知道邓丽君已经去世很多年了,但是我们通过全息投影和AI技术可以让她再现到我们身边,这一定是这一种很过瘾的体验,一个触不可及的人,突然出现在我们身边,走进寻常百姓家,我们只能感叹技术让我们的生活更丰富多彩。另一个例子是美国《纽约时报》的记者詹姆斯将去世的父亲以人工智能机器人的形式赋予了永生。他录制了父亲在生命最后阶段的话语,并整理出91970 个单词,通过开源的PullString系统,创造了一个具有父亲的性格特质的“虚拟生命”,以父亲独有的口吻,回忆往事,和家人交互。
大家都会问虚拟生命具有什么特点?和刚刚几位老师说的一样,会分为几方面:首先是感知(即看得到、听得见、说得出),其次是认知,需要有理解、记忆、推理联想和表达等,最后是进化,不断学习并逐步产生自我意识。
具体来说,感知能力中看得见对应到计算机视觉(Computer Vision,CV),听得见就是对应语音识别,说得出就是语音合成;到认知能力,就有理解、记忆、学习、表达、规划、推理、联想、情感等;可进化能力,达尔文的《进化论》大家都了解,物种是可变的,生物是可进化的,我们在进化身体的同时,也同时进化我们的思维。
接着,我们再来谈一下虚拟生命的技术和成熟度,从生命到虚拟生命,我们到底需要什么样的技术呢?我们先来看一下Gartner 2017年的技术成熟度曲线,相对成熟的是AR、VR等,对于虚拟现实和增强现实需要有更多高质量的内容,而我们正在经历和突破的包括虚拟助手、物联网、智能机器人,机器学习和深度学习、认知计算,处于将来时的还有脑机接口和量子计算。围绕之前提到的虚拟生命的三大方面,我们来看一下技术的发展。今年8月20日,微软语音和对话研究团队负责人黄学东宣布微软语音识别系统取得重大突破,错误率由之前的5.9%进一步降低到5.1%,可与专业速记员比肩;而Google在2015年提出的深度学习算法,已经在ImageNet2012分类数据集中将错误率降低到4.94%,首次超越了人眼识别的错误率(约5.1%)。DeepMind公司在今年6月发布了最新的WaveNet语音合成系统,也是目前世界上文本到语音环节最好的生成模型。
我们再看一下认知技术到底达到什么水平?由斯坦福大学发起的SQuAD(Stanford Question Answering Dataset)阅读理解比赛,截止8月22日,Salesforce Research暂列第一,F1达到了85.619%;谷歌推出的神经机器翻译将误差率降低55%到80%;2012年谷歌推出了知识图谱,用于语言认知(概念识别、联想归类、归纳、推理),并因此提出新的语义搜索引擎,IBM利用认知计算引擎推出基于个人的全方位医疗体系的沃森医生,还有讯飞牵头各大高校科研机构参与的863高考机器人项目,这些成果和项目正不断突破认知极限,使得我们有更强的语言理解和思考。
在进化方面,AlphaGo在人类棋局监督学习基础上利用深度强化学习通过自我博弈来不断提升棋力,最终战胜了世界冠军李世石。最近另一个值得关注的就是DeepMind和暴雪公司达成合作意向,意图将进化技术应用于著名的即时战略游戏《星际争霸》,企图挑战人类电竞冠军。进化计划不仅包括早期的遗传算法和蚁群算法等仿生类的尝试,也包括近年来非常火爆的迁移学习、强化学习、终生学习和生成对抗网络等新型算法和学习范式。
介绍完感知、认知和进化方面的技术发展之后,我们就要思考感知+认+进化=?利用现有技术,能够实现什么样的产品?我们构建二维坐标轴,横轴是时间,纵轴是技术发展,我们发现我们经历了从过去的专家系统跨越到现在的聊天机器人,并逐步在往技术要求更高的虚拟生命进军。事实上,聊天机器人本身就是感知、认知和进化各种技术的集大成者,而虚拟生命并不是突然蹦出现的新鲜事物,可以理解为聊天机器人的下一代范式。这里举几个大家耳熟能详的例子来介绍一下聊天机器人的演进。2010年SIRI作为虚拟个人助理搭载在新一代iphone4手上发布,将聊天机器人的理念根植于大家心中;2011年IBM的Watson机器人在《危险边缘》智能问答比赛中战胜人类冠军;在2016年微软大会上首次提出对话即平台的概念(Conversation as a service),在今年8月22号微软又发布了第五代小冰,不仅首次在商业产品中使用了生成式模型,还能主动撩用户。
从聊天机器人升华到虚拟生命,技术方面存在不小的挑战。感知方面需要存在感官选择和整合,全双工模式,多人沟通和远场交互等方面不断提升。在认知方面,意图与表达多样化的识别、情感计算、多轮对话及上下文管理,常识推理,个性化和回复一致性等都是亟待解决的难题。在进化技术方面,深度学习利用大数据的红利,对于特定任务可以做到举一万反一,而我们人类是小数据学习的典范,可以做到举一反三,如何让虚拟生命做到基于小数据的泛化学习是一个核心挑战。此外,自我认知管理,即知道我们知道什么东西,不知道什么东西对于虚拟生命处理拒识也有很大的帮助。当然快速性格建模以及快速价值观的形成都是构建虚拟生命进化技术需要关注的。
我们再来说说虚拟生命的实现路径。从数据科学的角度来看,来自卡内基梅隆大学的William W. Cohen教授指出,虽然大部分的自然语言处理问题都可以通过数据和机器学习(尤其是深度学习)来处理,但仍然有很多问题比如说基于逻辑的语义解析不能够很好的解决。自然语言处理的结果通常是以逻辑表示,但这些结果一般而言都是不确定的。因此,可扩展性(Scalability)、表示(Representation)以及机器学习(Machine Learning)作为数据科学的三个层面,融合虽然困难,但一定是趋势所在。更简单来看,融合就是刚刚说到的深度学习+知识图谱,深度学习和知识图谱的定位有什么不同?深度学习是更聪明的AI,更多可以做感知、识别和判断,但是还是需要有更多的学识,所以需要知识图谱帮助做思考、语言和推理,所以两者是互补关系。深度学习的突破,包括极深的深度残差网络助力图像识别的商业化,层次序列到序列的神经机器翻译,以及多模态的看图说话和图片生成文字等。然而深度学习应用在虚拟生命存在诸多局限,例如:如何自动评价对话中生成的回复?端到端对话模型中的知识,基于数据驱动使用Embedding或Tensor来表示是否足够,是否需要嵌入外部知识资源;端到端过程中如何感知外部环境如个性、情感和场景等,怎么打破严重依赖数据质量和数量的限制。
融合的另一个主角知识图谱,它也不是一个新概念,从语义网络、本体论到链接数据再演化到知识图谱。这里列出了开放知识图谱图,每一个节点代表一个数据源,边代表数据源之间的领域或领域实体之间的冗余。知识图谱由于是谷歌在2012年提出的,他被用来提供语义搜索;接着就是辅助问答,因为现在机器人很火、物联网很火,需要给万物都搭载一个背景知识库。在商业智能方面,很重要的就是说从大数据变成可计算大数据,有两个典型应用,一个是Palantir,用于反恐和国家安全,另一个是KENSHO,用于金融智能分析。
KG也可辅助通用人工智能(Artificial General Intelligence,AGI),即在常识推理方面起到作用。过去人们常用图灵测试对机器的智能进行评估,近年来,Winograd Schema Challenge逐渐进入大家的视线。这里举一个指代消解的例子。指代消解是一个经典NLP任务,旨在将代词指向具名实体。例如,The trophy would not fit in the brown suitcase because it was too big(small). What was too big(small)? 当我们描述it是big时,人们很容易理解这时候是在说奖杯(trophy);而当it与small搭配时,我们也很容易识别出在抱怨suitcase太小。这个看似非常容易的问题,却难倒了机器,这是因为人具有非常庞大的世界知识(world knowledge)和常识知识(common-sense knowledge)。当我们仅采用NLP技术来努力理解并给出答案时,正确率仅50%;当结合知识时,正确率提升到了60%,而及格线是90%。因此,我们离真正的通用智能还有很漫长的路要走,需要更多的技术突破和数据积累才能完成这项挑战。
深度学习与知识图谱的技术融合存在很多挑战。人的符号记忆是连续的么?包括Hinton也说,智能精华怎样实现推理;人的符号记忆是结构化的么?大脑分区域管理不同的文字语义,一个区域分管某个语义区域或一组相关的概念。
大脑中知识组织的结构是文本化还是结构化?符号记忆的获取和推理过程又是么?符号计算推理过程是怎样的,就是知识嵌入或者现代知识表示很粗糙,到底是不是一条正确道路,这都值得我们思考。
在这样的实现路径指导下,我们来做虚拟生命的产品初探。狗尾草公司在今年推出了全球首款AI+虚拟偶像琥珀-虚颜,承载她的机器是Holoera(全息纪元),日本在年底将推出Gatebox。这两款虚拟生命的产品,都使用全息投影技术展示虚拟人物,并且能通过语音和图像等进行多模态交互。这里我着重介绍一下Holoera+琥珀虚颜。用AI创造的虚拟生命,它有与众不同的生命形态,相比旁边大家看到的各种各样基于舵机构成的传统机器人,虚拟生命采用3D建模,可通过全息投影来展示,动作更加自然;虚拟生命也有自己的24小时生活,生命感更强;有灵魂、有价值观,有人设和自己的故事。
我们来看一段视频,它有很多情绪表达,有多模态输出,有情感、有语音,这些需要在时间轴上作同步合成。首先,Chatbot需要更加个性化的知识图谱。除了前面提到的实体KG和兴趣KG等开放领域的稀疏大图,我们也需要构建机器人KG和用户KG等个性化稠密小图。机器人或Agent需要图谱来建模和展示它的自我认知能力,而用户图谱则可被看作是更精细化的用户画像的知识表现。例如,机器人如“琥珀.虚颜”,有情感状态,喜好,技能等知识维度。同理,用户则需要表达其职业状态和生活轨迹等信息。需要强调的是,无论是个性化小图还是开放域大图,都不是独立存在的,需要将它们融合在一起,才能发挥更大的价值。机器人喜欢吃的食物则需要和实体KG中的食谱图谱关联,而与用户形成经纪人、好友等社会关系,同时爱好方面则和兴趣图谱又关联在一起,可以实现机器人社交、机器人-用户社交和用户社交网络的统一连接。
其次,我们的世界不仅仅是静态的,而是动态地反映各种事物在时空上的变化。因此,我们不仅仅需要刚刚谈到的静态图谱,而是需要思考如何表示和应用动态图谱。对于一个机器人,它从早到晚会做不同的事情,也就是有自己的生活规则。我们该如何刻画生活轨迹呢?这就需要我们在图谱中体现时态知识。另一个例子,用户行程,即对于用户图谱,需要记住用户各种已经发生、正在星星或即将发生的事件。图谱中的行程不仅仅是一个关系或属性,而是一个由多元(N-ary)组成的事件。我们需要定义多种事件类型,并刻画时间和空间两个维度。
第三,机器人不能只是冷冰冰的回答用户的问题或帮助用户完成特定功能。它需要感知用户的情感并在输出答案回复的同时伴随着相应的情感,这样才更加拟人化。我们发现,之前构建的知识图谱大多是客观的,即描述一些客观的事实。如何在结合个性化图谱时,能包括一些主观知识,进而刻画机器人或用户的情感元素。例如,用户说:“我心情不好”。这属于闲聊中的情感表达范畴。这时需要将用户当前的心情状态更新到用户图谱的对应维度数值中。相应地,机器人也会有自己的心情、体力,甚至和用户之间的好感度关联。当此时,机器人心情不错,同时和用户很亲密时,它就会主动关心用户。这样结合机器人和用户情感因素的动态回复会更加温馨和贴合场景。当在多轮对话时,用户进一步说:“来一首快乐的歌吧”。需要进一步结合音乐知识KG(快乐作为歌曲的曲风或风格标签)和用户KG中的音乐偏好,推荐用户喜好的欢快的歌。
第四,我们发现聊天机器人为了完成很多功能需要对接外部服务或开放API。此时,图谱就需要从传统的关系型知识图谱(刻画二元关系)扩展到支持动态服务的动态图谱(刻画多元关系,事件属于服务图谱的一个特例)。另一方面,如何刻画服务之间的各种关系(如因果、时序依赖等)也是图谱扩展过程中需要考虑的。例如,当完成了订餐,会有很多Follow-up的服务(订花或预约车等)可作为后续服务被消费。建立这些服务之间的关联对于进行精准的多轮对话过程中的场景切换是非常有必要的。
我们接触世界的手段不仅仅是文字,而是结合图像、语音和文字等多模态来了解外部世界的。因此,我们所构建的知识图谱也应该从单纯文本自然扩展到多媒体知识图谱。而ImageNet和Visual Genome正是这方面的努力。但是这里我想强调的是对于用户图谱这样更新频度非常高且很稠密的KG,多媒体知识的引入能帮助机器人从更多的维度来了解用户,并提供诸如Visual QA等潜在的问答服务。例如,小明正在和琥珀进行交互,通过摄像头识别出当前交互的用户是小明根据小明的图像与用户ID的关联,进一步得到其长短时记忆,了解到他在4.20到23号期间会去北京出差,而4月24号要和小兰共进晚餐。此时,通过用户图谱中的社交关系了解到小兰是小明的女友,当我们需要进一步了解小兰长什么样时,或者当小兰出现在琥珀面前时,需要可以认出小兰,这时也需要用到我们提到的多媒体知识图谱。
在实现过程中,首先需要考虑实体识别和链接。实体识别称为Named Entity Recognition,简称为NER。在传统NLP任务中,仅能识别PERSON(人物)、LOCATION(地点)、ORGANIZATION(组织机构)、DATE(时间日期)等有限类别。在实际应用中,NER的主要挑战在于识别大量细粒度实体类型,比如以Schema.org作为实体类别的分类体系,这里有很多标注数据充足的大类,也有很多缺乏标注数据的小类,如何保证在小类上的识别准确率。此外,分类体系是有层次结构的,如何保证底层的细粒度类别上有令人满足的识别率。例句“我想听一首海阔天空”中的“海阔天空”通过NER任务可以识别为是一个音乐作品。仅仅这样是无法执行对话意图“音乐点播”的,我们需要进一步将候选链接到知识图谱中的给定实体,这一过程称为Entity Linking。这里的核心在于歧义消解,一般借助于候选周围的其他实体或用语作为上下位来帮助去歧义。如果如例子所示,仍然无法明确是哪个实体,可通过反问来引导用户来给出更明确的实体指引。在实体链接过程中,我们所面临的挑战在于如何应对新兴实体(Emerging Entity)和实体的新兴说法(各种新说法和别名)。
聊天机器人依赖于NLP,而大量NLP任务可转换为有监督的分类或序列标注问题。我们往往会为特定任务下标注数据的缺乏或不充足而发愁,这一点在利用深度学习时尤为严重。这时,也将推出知识图谱的第二个典型应用,叫做数据增强,也就是说 Data Augmentation。具体来说,通过将知识图谱与文本语料库关联,形成大量弱标注数据。这在关系抽取或事件抽取等任务上应用广泛。例如,对于三元组<琥珀,喜欢吃,葡萄>,通过一定的泛化,我们将琥珀转换为PERSON,即在Web上收集PERSON和葡萄共现的描述片段,这些描述片段可能代表人物喜欢吃葡萄的特定模式(蓝色例句),也可能代表噪声(红色)。如何通过聚类分析中的异常点检测或噪声建模等方式将弱标注语料中的噪声识别并剔除。当然,包含一定比例的随机噪声,对于模型训练是一定帮助的,可以保证模型具有一定的泛化能力和鲁棒性。使用Web作为关联的语料库,主要看中Web上描述比较多样化,且信息具有冗余性,可以在保证覆盖率的同时确保数据的分布贴近真实情况。然而对于以语音作为主要交互方式的口语化聊天对话场景,我们仍然需要考虑从Web语料上学习到的模式或训练得到的模型如何进一步迁移适配。
第三个是知识问答(KBQA)。其中句理解的难点在于NLU,而候选答案生成则与检索过程关联,至于答案融合和排序,则重点考虑各种基于证据的收集和学习排序算法。这里我们看一个真实的例子,比如说“你觉得胡海泉这个人怎么样?”,这是一个意见询问类查询(opinion query),此时可以有很多回答,为了使得答案的多样化,除了利用摘要技术(summarization)从百科站点中得到“胡海泉是个歌坛巨星呀”之外,通过机器人KG中的经纪人关系,可以显式表明琥珀和他的关系。更进一步,可以通过琥珀记忆和技能关联,主动推荐“海泉给琥珀写的歌”。当用户给予明确的回复时,将表演自己的才艺,即唱自己的歌。在我们所描述的知识图谱下支持问答,需要额外考虑:1)如何统一对实体、问句、图像、上下文进行统一的表示,映射到同构的语义空间中?2)知识库永远不可能是完备的,如何从KBQA扩展到支持知识库和Web的混合QA场景下,并提供精准的数据源选择和语义解析?3)如何评估问句的复杂程度,并从单一知识库查询扩展到多知识库查询?
第四个是联想和推理。这里我列举了三种推理,但实际情况下不局限于这三种。第一种是空间推理,比如说“桌子上面有电脑,电脑旁边有水杯”,然后问,“桌子上面有什么”,正确的回答是电脑和水杯。桌子上有水杯是通过空间位置的判断得到的。空间推理在地理类问答和智能家居控制等应用中有非常广泛的应用。第二种是答案类型推理。答案类型(Answer Type)作为一种很重要的证据,对问答的准确性有很大的作用。这里的推理包括实例推理(如例子中乒乓球是一种运动)、上下位推理(白色家电是一种家电)和互斥推理(空调和电视没有交集)等。第三种是场景推理,即结合场景业务规则和相关常识知识进行一些联想。例如空调需要一定时间之后才能制冷,而用户在这段时间感到热时可以吃一些冷饮。除了这三类,冲突检测对于聊天机器人尤其是用户记忆很有价值。这里不仅包括前面提及的类别之间的互斥定义,还可以包括关系单值或数量约束,甚至形成很多由推理得到的事实和显式定义的事实组成的冲突关系链。这些对推理机的表达能力提出了更高的要求。
为了实现上述这些用于构建虚拟生命的AI技术,我们构建了一个AI引擎GAVE(Gowild AI Virtual Engine,人工智能虚拟生命引擎)。我不会具体说这个引擎到底怎么实现,就是给大家一个概述,最底层,我们考虑实现知识图谱统一表示、构建与融合,高效的知识存储与知识计算,AI+HI=增强智能,我们在弱人工智能化,我们引入人类的智慧,我们要在这样一个闭环中帮助机器进化。第二层是感知智认知智能的一体化,传统的方式,错误会继续放大。从单一模态到多模态融合交互,也是我们发展的方向。只建一个知识库没有用,怎么通过知识库建立语义和语用的桥梁。
问答聊天的服务化,支持场景化AI快速配置,开放平台接入,我们需要站在巨人肩膀上,不能什么东西都自己做,因为我们是小公司,但是我们的愿景和想做的事情很宏伟,我们需要和大家一起合作。我们虚拟生命的口号叫让AI打破次元壁垒,也就是说我们是三次元人群,我们构建的虚拟生命是二次元的美少女,我们如何建立这样一个通道,打破次元壁垒,是我们比较关注的事情。