在网络视频对话里,一个有些腼腆的男生正面对着摄像头做一场网络工作面试的培训,摄像头的另一端则是一个模拟系统。这个系统观察着男生的举止、面部表情和声音变化,并对他进行有关工作上的提问。
在回答某个问题时,这个男生眼睛朝左下看,音量放低,回答非常简短。系统马上意识到,「他走神儿了。」男生的这种反应在工作面试中往往是大忌,而这个系统能够实时地观察到这种行为举止的变化,帮助他不会在以后的面试中再出现这样的问题。
这个系统叫做 HALEF,基于实时的多模态对话系统,能通过接受不同模态的信息实现更好的人机交互。这套系统的发明者是加州大学戴维斯分校(UC Davis)的助理教授俞舟,也是该校的语言、多模态和交互实验室(the Language, Multimodal and Interaction Lab)的主管。就在 11 月,俞博士刚刚入选了 Forbes 30 Under 30 in Science,这是福布斯为了表彰年轻人的一个重要榜单,入选率一般不超过 5%。
在俞博士获奖之后,机器之心第一时间联系到了她,并对其进行了独家专访。在本次采访中,我们谈到了俞博士求学期间的心路历程、在卡内基梅隆大学读博士期间就进行的多模态对话系统的研究,以及她对于未来事业的展望。
机器之心:先恭喜您入选 Forbes 30 Under 30 in Science,入选后对您最近的工作和生活有带来什么变化吗?
俞舟:因为我刚刚从卡内基梅隆(CMU)毕业,1 月份才入职 UC Davis,所以从某种意义上来说,这给我带来了很多合作的机会。比如说其他公司的人知道我以后,就会邀请我去讲座、包括进一步的合作。别的系的老师知道我以后,比如像传媒系的老师也会非常感兴趣这些计算模型,与我交流。还有,这对于我招聘学生有带来一些好处,其实也是增加一些就是宣传,让大家知道我的一些工作。
机器之心:入选这个榜单的几率可能只有 5% 都不到,那整个评选过程是什么样的吗?
俞舟:别人可以提名你,会发一个调查表到你邮件,让你填一下自己的成就和背景。收集了以后,内部有一个委员会然后作出评价,最后确定。
机器之心:您现在是 UC Davis 语言、多模态和交互实验室的主管,能否介绍一下您最近研究的项目?
俞舟:我一直在研究多模态对话系统。对话系统中有不同种的模态,从输入模型的不同中,系统可以是简单的基于文字的聊天机器人,可以是 Amazon Alexa 这样有语音的,或者是加入更多模态(例如视觉方面)的系统,比如机器人。而输出模型可以只是文字,也可以是语音,也可以是多模态的形式。比如说虚拟人类,在游戏里也会有由计算模型驱动的这种交互。虚拟角色可以做各种各样的事情,比如教小孩子英语啊。输出模式也可以是实体交互,就是机器人。人和机器人交流的话也可以通过自然语言完成更多的任务,实体的协作能带来更多的实用性,就比如人可以指挥机器人去哪里,通过交流机器人可以更好地完成它的任务,比如抓东西、运输等。
我的主要的工作就是做交互,但这个交互有多模态在其中,可以是自然语言,可以是语音,或者是基于视觉。比如我们以前做过工作面试的场景,我们就是很看重会话能力。其中,投入/参与度(engagement)非常重要,我们通过多模态的效果来预测这种参与度,比如说看看他有没有经常看你;他说话的声音有没有抑扬顿挫(prosidy, such as pitch changes),根据参与度的高低或者有没有参与,我们的系统可以不断地实时调整目标的行动规划(action planning)。比如你某部分做的不够投入,我们会给你一些鼓励,每个人的对话都会不一样。所以说我的工作很多就是去针对不同的用户,对每个人会有一个独特的交互规划。我的会话模型很多也用到了强化学习。
机器之心:我了解到您在浙江大学本科时期修的是双学位——计算机科学和语言学,为什么这么选择?
俞舟:其实是这样子的,我是 07 年读的本科,在浙江大学竺可桢学院就读。当时我修了外语学院的一些课程,我本身对语言也很感兴趣,而竺可桢学院也正好开了一个叫英语双学位的班,我是我们这一届唯一一个选计算机和英语(我选择的方向是语言学。浙大没有单独的语言学,它是英语专业下面的一个分支)双学位的。
机器之心:那您从什么时候开始有计算机科学方面的的这个兴趣?
俞舟:我小学的时候就喜欢这个,所以我很早就开始有编程的经验。
机器之心:来到 CMU 读博士之后,是什么启发了您开始研究多模态对话系统?
俞舟:我在本科大三进实验室的时候,跟着何晓飞和蔡登两位老师,他们一直做机器学习(machine learning)和计算机视觉(computer vision),还有数据挖掘(data mining),所以我很早就接触 ML 和 CV。之后,我在双学位英语系的时候,我选择做机器翻译(machine translation),和外语系的瞿云华老师做中文转英文的翻译,我也对这个非常感兴趣。
我申请博士的时候,CMU 有个特别的学院叫语言技术学院(Language Technology Institute),这属于计算机科学大类,主要是做计算语言学(computational linguistics)和自然语言处理(natural language processing),应该是最大的、也是最好的做 NLP 的小组,有二十几个教授。我当时申请了,但也没有报太大希望,因为觉得自己当时还只是本科生,虽然有一个发表的论文。不过,CMU 最后录取我了,包括我的本科导师何晓飞老师,也挺惊讶我会被录取。
我来到 CMU 后,才发现我这个背景是非常独特的,没什么人除了计算机外会选择读语言学,这两者本身在学科上的差异也比较大。后来我发现这个背景对做 nlp 是非常有用的,因为我既懂语言学,也懂计算机科学的东西,我可以把语言学应用到各种各样的计算模型中。因为以前做过 CV,也有 NLP 的经验,所以我就想把这些结合在一起。
CMU 是你去了之后才找导师的,找导师时我就找到了 Alan W Black 教授和 Alexander I. Rudnicky 教授。他们之前没有做过 CV,但是它们做很多语音对话系统(Spoken Language Dialogue System)。去了以后,我们就开始做多模态对话系统,慢慢地就做成了一个我的论文选题。这在当时也是一个契机,我去 CMU 的时候苹果 Siri 还没有出来,公众并不理解这个对话系统是个什么样的东西,然后慢慢的到现在才有所了解,而且当时就是深度学习还没有起来(Pre-Deep Learning)的时候我们很多自动语音识别(Automatic Speech Recognition)也不准。所以,这是一个非常好的契机,底层的技术偏向成熟的过程中,然后这种比较上层的东西就有更多可以做的空间。
在随后对 Alan W Black 的采访中,这位CMU的著名教授告诉机器之心:俞舟一开始致力于研究视觉和基于语音对话方面的工作,但她后来着重研究在“非任务导向”对话(non-task oriented dialog,通常称为chatbots)的用户参与度(engagement)。过去,“非任务导向”对话并不是真的一个研究领域,只是一个有趣的方面,但她有兴趣追求这一领域,我们也帮助她找到了资金来完成这方面的研究。 现在,这块研究已经慢慢成为主流,很多人也投身其中,但她是最早定义这个研究领域的一批人之一,并且已经发表了很多论文。
机器之心:那就像您所说的,13 年的时候大家意识到深度学习的效果很好,那这种转变就是对你本身的研究会带来一些影响吗?
俞舟:说不上正面,也说不上负面,对于我们而言深度学习只是一种模型,而且它没有什么特别的。神经网络现在被应用到不同的领域中,但是从机器学习的角度看,本质上没有任何区别。现在是深度学习的工具做的更好了,门槛变的更低了。当然我们在这个转型的过程中,有人更早地接受深度学习,有些人更晚。在 CMU 的话,我们比较早就接受深度学习,并不存在一个大的(转型上)障碍。
机器之心:那么,多模态对话系统这个领域有没有一个相对主流的、成型的前沿系统?
俞舟:其实对话系统本身没有这样的系统,因为还存在很多问题。在我们的这个对话系统中,对话本身是有一个内容,每一个事件是不一样的。比如说你订机票,和找饭店就不一样,教小朋友英语和教小朋友数学都不一样。我们也有自己不同的工具和传递途径。做对话系统的基本上每一个研究小组都会主张自己的系统。如果要我遵照你的系统,有非常大的壁垒,你要给我一个很大的理由来说服,为什么你们要比我好,或者互相并不能说服彼此。
多模态对话系统在全世界来说,做得好的并不多,就是五六个研究小组,然后每个系统都有不同的约束,比如说之前已经有遗留系统(legacy system),这个小组不愿意更新或者迁移到到其他系统。
我们这个受众又比较小,没有那么多人做,系统本身在工程方面有挺大的壁垒。不像深度学习,现在很多公司都有做这些工具,比如说 Amazon Alexa,他们也有出技能工具包(Skill Kits)。这个就完全没有达到学术界要求的灵活性,甚至连 ASR 都不会给你,这都是各种各样的问题。所以包括现在有很多人创业,就是想要做这些工具包,但是这其实也有很大的问题。我们本身这个领域有很多,就是任务之间有很大的变化,每个部分的技术更新也比较快,做到比较好的可维护性还挺难的。我们要做很多的多模态的感知和分析,这些东西要组合在一起,最后才能完成一个策略。虽然说现在我们也可以做端到端的训练(end-to-end training),但很多情况下,根据数据的不同,很多系统都要重新调整。
机器之心:一般相比于基于语音或者文字的对话系统,这种多模态对话系统在结构上最大的区别是什么?
俞舟:比如说语音只有一个模态,那采样时就是一种频率。你有视觉图像以后,有视频了以后,采样频率跟语音就不同了,而且视频计算就比较大,你怎么把这些不同的模态信息实时地结合在一起,要做很多融合的工作,在技术难度上就会多, 比如说你的系统要做到很好的信息传输(message passing),否则根本就做不起来。
同时,多模态对话系统可以基于情况提供更多的信息,比如说它可以得到更多的用户信息,用户笑还是没有笑,多加一个模态,效果会好很多,包括了解到这个情况,比如一个人两个人,三个人之间是什么关系,这些都可以用到。
机器之心:那您认为目前多模态对话最大的研究挑战是什么?
俞舟:三点吧,因为我们的对话是一个动态的交互,需要和人交互,而却这种交互是不可再重复的,因为每个人的交互是不一样的,所以从某种意义上讲,我们的实验是不可重复的,而且你不能在已有的数据集上训练,否则就变成了简单的模拟。所以说我们很多情况下要做真实的用户研究,就是我们做了系统后要有真的人做交互。但是,在招募人的时候就会有很大的问题,比如说我们做深度学习有一千个数据点,我们要雇一千个人来做吗?这个就非常不高效,所以我们用强化学习做很多模拟去减少这个数据的成本。
另外一点是,怎么能把多模态对话系统的数据收集和模型评估的难度降到最低。我们做的一个系统里加入了视频会议,比如说 Skype,我们的系统可以实时记录对话,注意视频和音频两端,在实时的过程中我们在云端做处理。这样的话就是我们收集数据(现在都在 Amazon Mechanical Turk 上收集,Amazon 下的一个网络众包平台)就减少了一些人力成本。这是我们最近系统做的一些提升。
最后的就是私密性的问题,人脸是可辨认的,你必须要得到用户的许可。还有就是用户的意图。比如我们在做教育方面,那测试的人群真的愿意学这方面的知识。但我在 AMT 上找到的人不一定真的要学习,所以这里还存在着不匹配。
机器之心:那么强化学习具体能够做什么?
俞舟:强化学习就是一个范式(paradigm),来优化这个交互。从某种意义上来讲的话,我的系统和你对话,是一个序贯判定(sequential decision),我的每一步的下一步决定都是基于你之前的对话的历史来做。这样我才能做到最优,这就是强化学习为什么在交互中这么重要。
还有,如果我在这个点做了决定 A,原来的打算做了决定 B,那我之后的数据是不是不能用了,因为我续发事件一旦选了另外一个决定,完全就不一样了。但是我们可以做一些用户模拟,假设如果他是在决定 B 的时候大概会是怎么样,就是从某种意义上也是减少数据的成本,很多情况下,两方面都有。
机器之心:那您在研究当中是如何去匹配这个技术研究和应用场景的?未来什么样的应用场景会广泛的应用到多模态对话系统?
俞舟:我觉得这个多模态对话系统的应用非常多的,包括现在的 Amazon Alexa,它现在能做的很多事情都只是一个回合,比如放音乐。如果它可以做多回合的东西,比如推荐电影或者推荐产品,这就会取代销售人员和客服。我们现在在做的就是可以将你的用户情绪包含在这个对话系统中做重新规划。例如,我知道你不开心了,我会选择安抚你或者马上转到人工,用多模态对话系统更好地完善系统。
比如教育领域,你看一个网络教育课程,它可以向你实时提问。培训这方面就更多了,可以训练销售技能、驾驶技能。我们之前做工作面试培训的系统甚至可以帮助初步筛选面试的人,收集到更多信息,给你的面试打分。
在医疗方面,我们做一个虚拟人物,它可以跟用户通过一个半预先设定的对话(semi-constructive dialogue plan),看你有没有心理问题,有没有抑郁、创伤后应激障碍(PTSD)等等。也可以做虚拟人类和有自闭症的小孩的交互,让他们可以通过跟这些虚拟角色交流,提高社交技能;对于老年人的关怀,我们可以让虚拟人类来监控他们的健康状况,问他们吃药了没,跟他们闲聊,看看精神状况如何。
还有就是路径规划,最近和 CMU 的一位老师合作将操作员和机器人合作搜救(search and rescue),人可以有一些先验知识,机器人可以问问题,然后通过合作一起完成不同的任务。
我们之前还做指路机器人(direction-giving robot)。为什么要做这个机器人?就是因为过去的交互界面特别让人困惑,如果有一个手势的话就很清楚了,左边就是左边。
机器之心:您在研究多模态对话系统,做了很多用户参与度(user engagement)的研究,那我想知道您是如何研究并量化这个问题?
俞舟:我们之所以关注这个问题是因为我们的定义就是你们愿不愿意继续这个对话,所有的对话都需要参与度。
具体量化就是我们会让专家来做注解,我们设置各种各样的调查和标注方案,我们也会叫人自己写报告,完成了交互之后自己看视频,说自己当时有没有非常的投入。根据这些标注来训练计算模型。
机器之心:我了解到您在做这个对模态对话系统的时候,分别创建了TickTock,Direction-giving Robot,HALEF,这是您读博士时候的主要成果,能否分别介绍一下这些系统?
俞舟:第一个系统是一个社交聊天机器人,我们把它部署到了 Amazon Alexa 上。从任务上说,现在我们把它扩展到可以和目标指向性的系统(task-oriented system)结合在一起,做前沿的任务,比如电影推荐之类的(详见 Yu et al., IJCAI 2017)。
第二个是人和机器人交互,这个用到很多注意力机制,就看用户是不是有注意。因为在这种指导性任务中没有注意力就不会有认知变化。我们获得注意力的方法就比如说用一些绘画策略,说「excuse me」,「restart」,「can you tell me」,效果就比较好。
第三个就是之前提到工作面试系统,帮助人提高他的对话能力。比如这个人是非母语对话者,需要训练自己的会话能力,通过这个机器人交互来做到。比如说我发现他参与度差的时候就缺乏信心,我就可以做一些鼓励,「I think you are doing great.」,他可以更好地训练自己的会话能力。
机器之心:您到目前为止您最满意的你的一篇论文研究是什么?
俞舟:这个还挺难讲的(笑),应该还是我最近的一个研究,总是最新的那个是最满意。
机器之心:那多模态对话系统会是您的 lifelong 的研究目标吗?
俞舟:那肯定是 lifelong 的,其实就是解决用不同模态的信息做更好的交互,这就是要解决的这个问题。
机器之心:像现在基于文字的和基于语音的这种对话系统其实已经已经大量的进入到了现在工业界的应用范畴,那您认为像多模态这样的对话系统,它将会在什么时候会大批量的进入到工业界?
俞舟:五到十年吧。就比如说 Amazon Alexa 出现的时机,因为他还是个音箱,比如说人家买个音箱也是这么多钱,还不如买一个 Amazon Alexa。市场和研究是两回事,你需要找一个非常好的切入口。
机器之心:我了解到 Amazon 最近给您 100,000 万美元用于开发 Echo 平台的社交聊天机器人,能否说说这个项目背后的整个经过?
俞舟:这个项目我去年 11 月份的时候拿到的,是我还在 CMU 的时候的一个团队。今年就是我在 Davis,它是每年可以续约研究的。
机器之心:那么你大概会开发一款什么样的社交聊天机器人?
俞舟:它其实就是一个非常综合的系统,可以跟你聊任何东西,它的唯一的目标,就是要让对话者待在这个对话中。我的论文的很大一部分是开放式社交聊天(open-domain social chatting),比较偏 NLP 的部分,比如说怎么利用知识库来做更好的自然语言理解(natural language understanding),用计算语言学做落地来加强会话的效果。
最近我们发表在 IJCAI 2017 的一个研究就是把社交聊天和任务结合在一起,可以让这个任务更好地完成。因为这个带有社交属性的任务有很大的灵活性,可以帮助人更好地理解和适应这个对话,同时加一个社交的部分更容易影响对话者,增加更多的技能。
机器之心:语音识别的错误率其实已经降到大概 5% 的水平,但是依然还有不少挑战,比如包括说在分离噪音和人声以及分辨多个人声,像鸡尾酒派对这样问题,那在对模态对话系统中有没有一些关于语音识别方面独有的挑战?
俞舟:在交互中语音识别是非常难的。人说话并不是就是一句话就说到底了,它里面有很多就是不流畅的地方,比如说错了以后还得重说,很多都不是符合文法的。这会带给语音识别带来很多的挑战。我也做一些语音的工作,但主要是做逐渐增加的语音识别(incremental speech recognition)。为什么这个很重要呢?因为在对话系统中人和机器交互,你希望机器越早回来回答你越好,你这个语音识别是需要时间的,我们就想要尽快地解码,你说几个词我们就解码一下。
就我们而言,我们也会想要研究声音事件(sound event),了解你的环境,比如学校,派对,火车的声音,我可以把这些东西在语音识别以前就降噪。包括声纹识别(speaker identification),也是我们研究的方向。
机器之心:关于自然语言理解中的非语法问题呢?
俞舟:我们在做很多语法分析上的拆解。NLU 在对话中非常重要,比如说意图识别,只需要知道几个单词就可以知道用户的意图。你如果做开放领域的话,这也是非常需要这一点,这也是我的未来研究方向:怎么做到语义分析、意图分析。比如说「我有只猫,我很喜欢它」,这个它是这个猫对不对;还有比如说「我有只猫,我可喜欢了」我没有会所宾语是什么,可是上下文我可以理解我指的就是那个猫。第一种是指代(co-reference),第二种是省略(ellipsis)的问题,这个语法分析就很难。
机器之心:提高对话系统的回合数,让机器和人类能够进行多回合长时间的沟通是一件非常困难的事情。这方面的研究,挑战在哪儿?
俞舟:回合的长短和对话系统好坏还是两回事情,这要看设计过程中的目标。比如我们通常称为的回报函数(reward function),我的目的是让你和机器人讲话越讲越久,那我就建议优化目标是回合数越多越好;那我如果是完成一个简单的任务对,其实你的目标是越有效越好。
机器之心:多模态对话系统是一个非常跨专业的领域,对于想要学习多模态对话系统的学生,你有什么好的建议吗?
俞舟:我的建议就是说,先要学习这个对话,先从单模态里开始学习。我们这个领域科学和工程学是并重的,有非常好的实施的场景。而且你要做好准备,这个专业里面有很多的内容,你不仅仅要做设计和算法,你也要测试这个算法,在和人类做真实对话的时候有没有效果。
机器之心:你有什么比如说推荐的一些参考资料或者书籍,愿意推荐给读者的同时?
俞舟:这是一个非常郁闷的事情,就是这个领域一直没有一个很好的教科书,因为发展太快了。我其实想写一本书,但是也是没有时间,可能要过两年。但是你可以从最基本的学习,你可以从 NLP 开始学起。书的话比如就是 Daniel Jurafsky 和 James H. Martin 的《Speech and Language Processing》,网上有第三版的 draft。
机器之心:有哪些机构和大学在这一方面在这个领域是佼佼者?
俞舟:比如 Microsoft Research,我曾经在那儿做过实习;南加大的 Institute for Creative Technologies,欧洲的 KTH, Bielefeld 等等。
机器之心:在学术圈这么多年,有没有想过在未来投身工业界?
俞舟:现在有很多机会,但是最重要的还是做我觉得有意思的事儿。
机器之心:就您个人的话,因为做多模态对话系统可能需要你很关注社交、交流、和别人打交道,你是一个喜欢社交的人吗?
俞舟:(笑)我应该还 ok 吧哈哈,我并不是一个非常外向的人,但是我觉得我也是可以在与人交流中得到很多的信息,并且从中感觉到快乐的。
机器之心:在学术圈做研究项目中,寻求资金支持是一个很重要的话题,那么你觉得在这个方面是一个比较简单的事情,还是一个比较困难的事情?
俞舟:我不太清楚别人是怎样的,但是我自己来说我觉得可以,并不是说我非常超过这个范围的事情,工业界都很支持,包括 NSF、DARPA,他们也看到这个是未来,这个交互会在未来有很大的影响力。
机器之心:除了学术之外的兴趣爱好是什么?
俞舟:我看 Youtube 视频,喜欢看小动物视频(笑)。因为我觉得看这个小动物视频非常的减压,很可爱的小动物。我非常希望能够养一个小动物,但是我经常出差,也也没有办法。还有就是看书。
机器之心:希望招募什么样的学生?
首先我来讲讲你为什么要来我的组念 Postdoc 或者 PhD. 我们这个领域非常有前景,我也花很多的时间来带学生做项目。我的组还在成长中,现在有两个博士生,还有四个硕士生。工业界也非常支持多模态对话系统的推进,所以我很希望有能力的学生能够进入这个领域。我希望能有博士后能加入我的团队,可以是一年或者两年。我的组现在就有一个名额。在这个过程中可以一直接触到前沿的研究,而且这两年之后会有非常好的学术界的或者创业的机会。对于学生的背景,我会希望他会有机器学习、自然语言处理、语音识别等相关专业的基础,同时也有很好的工程能力。
机器之心:最后一个问题,您怎么评价自己的工作?
我觉得我们这个工作,包括我和我的 Ph.D,就是在努力的把这个方向往前推一点,希望做更多有意义的研究。因为我们这个是一个非常跨领域工作,也是在慢慢希望推进我们的研究。我也经常办学术会议,把不同领域的人拉进来一起合作,就是希望可以通过我们的一些努力可以把这个领域往前推一点。