邵浩:深圳狗尾草智能科技有限公司AILab主任,日本国立九州大学博士,中国中文信息学会青工委委员,中国计算机学会YOCSEF上海学术委员会委员,研究方向为人工智能和机器学习,发表论文四十余篇。
1、聊天机器人关键技术及挑战
2、从0到1构建可用的聊天机器人
3、从认知到感知:知识图谱的核心作用
4、GowildAIlab简介,总结与讨论
了解Chatbot的技术体系
如何从零构建一个可用的Chatbot
首先看一下为什么要做聊天机器人,这要从上世纪80年代起我们所经历过的四个时代说起:
第一个时代是IT时代,这是个人电脑出现的时代,它的特点是「运算力改变生活」,当时最具代表性的公司是微软和IBM;
第二个时代是互联网时代,这个时代最典型的特征就是「连接颠覆一切」,当时最具代表性的公司就是Google;
第三个时代是移动互联网时代,其最典型的特点是「数据利用效率的提升,和交互方式的改变」:数据利用效率方面的典型应用场景就是我们可以通过手机点外卖、叫车,这在以前是无法实现的事情;交互方式则从按键式交互变化到触屏交互。这个时代的代表性公司是苹果。
自从AlphaGo战胜李世石,我们就进入了最新的一个时代——AI时代。这个时代所对应的入口就是语音对话产品。微软在2016年开发者大会上提出了「对话即平台」的口号,他们认为对话是人类最自然的交互方式,这也是为什么各大科技巨头都在竞相发力聊天机器人领域的原因。
做聊天机器人的第一步就是选择想做什么类型的机器人。我们这里分为两个层次、四种类型:
被动交互则是目前大家接触最多的一种交互方式,主要有三种类型:
第一种是聊天(闲聊)机器人,比如小冰;
第二种是问答系统,如IBM的Watson,可以回答一些事实型和非事实型的问题;
第三种是面向任务/目标的对话系统,比如当用户需要订机票、点外卖时,机器人就需要在对话中确定某项目标或任务。
后两类交互方式的一个主要区别在于:问答系统通常是单轮的,而面向任务/目标的对话系统通常是多轮的。
那又怎样区别聊天(闲聊)和面向任务/目标的对话系统呢?
(关于区别聊天(闲聊)和面向任务/目标的对话系统的具体讲解,请回看视频00:12:00处)
下面看一下怎样真正地从0到1去构建聊天机器人。我们以圣斗士的不同阶段为例进行阐述。
第三个阶段是白银圣斗士阶段,这个阶段要求有一定代码能力,对NLP有了解,可以自己动手去构建聊天机器人。
首先,自己可以创建一个对话语料库,然后使用Python进行文本处理,其中可以用到的一个比较经典的框架是IR框架:
其中,在匹配模型的构建方面,可以使用深度学习的方法去实现匹配:
一个方法是基于表达的——Weakinteractionmodels
另一个方法是基于交互的——Stronginteractionmodels
第四个阶段是黄金圣斗士阶段,这个阶段要求你可以使用代码完全实现一个文字型的对话机器人。
这里就需要有一个非常明确的架构设计:
目标就是综合各种手段去实现聊天机器人NLU、对话管理,NLG以及各种功能:
第五个阶段是掌管者阶段,需要更加深层的能力,包括构建生成模型和语言模型。
第六个阶段是神的阶段,这个阶段除了对NLP、工程、机器学习以及知识图谱能力方面有要求,还要求具备强大的团队实力。一个好的产品是各方面的妥协,需要从产品、性能以及成本等维度进行综合考量。
(关于从0到1去构建聊天机器人的每个阶段的具体讲解以及每个阶段所对应的实操演示,请回看视频00:15:00—00:49:40处)
事实上,很多创业公司都是「A轮死」,为什么?在A轮前,创业公司获取现金流有两种方式:一种是通过创始人、团队和技术来卖「期望」拿投资;另一种是将「期望」转化为「产品」,卖「现实」拿收入。而A轮之后,投资人更看中的是技术变现能力,看具体的营收数字。
然后聊天机器人创业团队还要考量的问题是,机器人要不要考虑多轮对话,这就涉及到多轮架构的构建,一般难度比较大。
最后跟大家介绍一下我们公司,Gowild是AI公司里面娱乐实力比较强的公司,也是娱乐公司中AI实力比较强的公司。