微软小冰是怎样学会对话、唱歌和比喻?我们听三位首席科学家讲了讲背后的原理

2019-12-05 11:37:54 浏览数 (2)

“爱情和葡萄酒一样,对程序员来说都是奢侈品。”

这是学习“比喻”这种修辞手法时,微软小冰的一句话。

现在,已经有4.5亿台第三方智能设备搭载了小冰,小冰多轮对话的轮数(CPS)最高已经达到了23轮。

过去5年来,小冰团队有48篇论文发在了AAAI I JCAI ACL KDD EMNLP等顶会上,已经申请了72个专利,其中,今年发了3篇ACL、4篇EMNLP、1篇Interspeech和1篇ACM MM long paper。

在前不久的一次workshop上,微软小冰首席科学家宋睿华、微软小冰首席NLP科学家武威、微软小冰首席语音科学家栾剑分享了近年来小冰的技术成就。

朝向自我完备的对话机器人

此前,小冰已经掌握了“尬聊”技能,能控制多轮对话的节奏和走向,微软小冰首席NLP科学家武威介绍了这一过程背后的技术,他称之为朝向自我完备的对话机器人

自我完备,也就是Self-Complete,自我完备的机器人需要具备三个能力:

1、学习能力,不仅从人类的对话中学习,也可以让不同的机器人借助Co-teaching模型互相学习;

2、能够自主的管理,初级阶段是知道单轮对话应该进行怎样的表达,高级阶段就是能把控整个对话的流程;

3、连结能力,连结散落在世界上的多模态知识。

在三种能力之上,结合检索模型(Retrieval Model)、生成模型(Generation Model)和共感模型(Empathy Model),这样小冰就可以自主把握对话过程。

小冰唱歌技能揭秘

微软小冰首席语音科学家栾剑揭秘了小冰的唱歌技能。

首先,唱歌有三大要素:发音、节拍和音调。

那么,AI要怎样学会一首歌呢?

有两种方法,一是学习人唱的歌,听人类歌手的原唱,这也是人类更喜欢的学唱歌方式,但机器通过这种方式来学唱歌需要需要判断曲调,更容易有误差。

二是看着曲谱学这首歌,直接从曲谱生成唱出来的音频文件,这对人类来说比较复杂,但对机器来说更容易。

之后,合成一段歌声也有两种方法。

一种是单元拼接法,把单个的声音找出来拼在一起。

如果不考虑音调,声母和韵母凑成的单音节有400个左右,提前录制好这400个音节的不同版本,长的短的、高音低音,凑成单元库,再根据具体歌曲中的发音需求从单元库中选取单元拼接起来。

不过,这种方法可能不太流畅,会有一个字一个字蹦的感觉,出来的曲调过渡上会让人感觉生硬。

另一种是参数合成法,用隐马尔科夫模型来做。

这种方法是从大量录音数据中提取包括能量谱、时长、音高在内的声学参数,通过声学参数、声码器把音频的波形重构出来。

这种方法得出的结果有丰富的变化,可以创造出从来不存在的声音,但是在声码器重构的过程中可能会引起音质损失。

小冰的唱歌技能就是基于参数合成法,从乐谱中采集发音、节拍、音调三大要素,分别对声谱参数、节奏序列、音高轨迹用三个模型分别建模,用神经网络预测参数,之后把这些参数通过声码器生成波形。

之后的迭代中,也借助了模块化的方式,并将三个模型合为一个,这样合成歌声的自然度和流畅度就得以提升了。

小冰如何学会比喻

微软小冰首席科学家宋睿华介绍了小冰学会比喻句的过程。

让小冰学比喻的灵感,来自一个段子:

不管什么样句子,后面加一个“爱情也是这样的”都是说得通的。

比如,“人有两条腿,爱情也是这样的”,可以理解为“爱情总会走的”,也可以理解为“爱情总会来的”。

在这个逻辑下,找到本体、喻体和中间的解释,就可以有很多种可能:

比如“爱情和葡萄酒一样,对程序员来说都是奢侈品。”

不过,它也可能生成神奇的比喻:

“恋人像是可靠的报表”

作者系网易新闻·网易号“各有态度”签约作者

0 人点赞