智东西(公众号:zhidxcom)编 | 王小溪导语:Alexa的“隐式调用”功能将有可能通过CoNDA技术直接添加到技能商店,而无需浪费时间重头训练模型。智东西5月5日消息,据外媒报道,Alexa最近获得了亚马逊所谓的“隐式调用”(name-free skill interaction)功能,这使得它能够解析未明确指出的第三方语音应用的请求意图。例如,向Alexa发出指令:“Alexa,给我一辆车”,你不必指定网约车服务的提供商,它可能就会打开Uber、Lyft或其他一些乘车服务。但正如Alexa AI研究部门的科学家所说,这并不像看上去那么简单,因为每次将新技能添加到Alexa技能商店时,理想情况下需要从头开始重新训练将话语映射成技能(被称为“SHORTLISTER”)的人工智能系统,这需要重新训练所有的原始训练数据,以及与任何新技能相关的数据。而Alexa仅在过去一年就增加了数万项新技能,如果神经网络要定期更新,这种做法将非常耗时且不切实际。幸运的是,在今年新奥尔良举办的国际计算语言学协会(ACL,The Association for Computational Linguistics)北美分会上,Alexa的研究团队发表的一篇新论文(《Continuous Learning for Large-scale Personalized Domain Classification》)中,研究人员提出了一种省力的替代方案CoNDA(连续神经预适应,Continuous Neural Domain Adaptation)技术。它需要“冻结”AI模型的设置,并添加适应新技能的新网络节点,然后仅在与新技能相关的数据上训练这些被添加的节点。研究人员报告说,在涉及900项技能的训练数据集和100项新技能的再训练数据集的实验中,表现最佳的SHORTLISTER版本(总共六个版本)在现有技能上达到88%的准确率,仅比从头开始重新训练的模型的准确率低3.6%。一、让AI理解人类的隐含意思有多难?重头训练模型太麻烦有时候,人们说一句话不会说全,这个时候听者怎么执行就要靠悟性。人们常说会看眼色行事是高情商的表现,那么机器可以说是低情商的典型,往往只能呆板的执行明确的指令,“猜”不出人们话语中的引申义。要让机器猜透你的所思所想,那可是相当不容易的一件事,它需要建立一个将人的口头语映射到智能个人数字助理中(IPDA)的自然语言理解(NLU)领域任务的神经网络,这个过程叫做域分类(Domain classification)。这是主流IPDA行业的主要组成部分。域是智能个人数字助理中对天气、日历或音乐等特定的应用或功能的定义。例如,用户对Alexa说“我要用优步搭车”,相应的域就会调用“Uber”应用程序。除官方域名外,外部开发人员还会创建数千个第三方域名来提升IPDA的能力。每当让AI掌握一个新的“引申义”(即增加一个新域),就意味着需要更新这个网络。传统上IPDA只支持数十个分离良好的域名,为了增加域名覆盖范围并扩展IPDA的功能,主流IPDA发布了允许第三方开发人员构建新域的工具。Amazons Alexa Skills Kit,Googles Actions和Microsofts Cortana Skills Kit就是这样的例子工具。而且,为了应对新域的涌入,已经提出了像SHORTLISTER这样的大规模域分类方法,并取得了良好的效果。随着越来越多的新域名迅速发展,大规模域名分类的主要挑战之一是在不会失去已知预测能力的情况下如何快速适应新域,一个直截了当的解决方案是,从头开始训练网络,重新训练所有的原始训练数据,以及所有和新技能相关的数据。而Alexa仅在过去一年就增加了数万项技能,如果每增加一个新技能都重新训练一遍网络,那将费时费力又浪费资源。为了解决这一问题,提出了一种高效地更新系统使之适应新技能的解决方案——连续神经域适应CoNDA(Continuous Neural Domain Adaptation)。他们用900个域作为初始训练数据集,用另外100个新域作为测试集,一共测试了6个不同版本的神经网络。经过大量的实验,结果证明CoNDA在新域和现有域的测试精度都非常高,100个新域的平均预测准确率达到95.6%,并且在100个新域之后的所有域上累计准确率达到88.2%。表现远远超过baseline。二、CoNDA技术只针对新技术进行数据训练研究人员的方法依赖于嵌入(embeddings),嵌入将数据表示为固定大小的向量(坐标序列),坐标序列定义了多维空间中的点,在多为空间中具有相似属性的项目彼此分组。为了提高效率,嵌入层存储在大型索引表中并在运行时加载。像Shortlister这样的机器学习模型包括多个互相联接的功能层,每个层由简单的节点(或称为“神经元”组成,节点之间的连接有关联的权重,训练神经网络主要就是调整这些权重。研究人员介绍了CoNDA技术,它是无名域名分类的最新技术Shortlister的变种。Shortlister有三个主要模块。第一个模块用于生成表示Alexa用户指令的向量,使用嵌入曾来表示用户已启用的所有技能(通常在10个左右)。第二个模块生成启用技能的单一摘要向量,其中一些技能在话语向量的基础上进行额外的强调。第三个模块将输入(用户话语,结合启用技能信息)和输出(技能分配)映射到同一向量空间,并根据他们应该执行客户请求的可能性来生成技能的候选名单。第二个网络被称之为HypRank(假设排名,hypothesis ranker),它根据更细粒度的上下文信息来细化该列表。为了提高效率,研究人员将技能嵌入存储在一个大型查找表中。当有新技能被添加到Shortlister时,嵌入表会添加相应的一行,而所有其他嵌入保持不变。类似地,Shortlister的输出层由单行节点组成,每个节点对应于一个技能,每添加一项技能,将在该行扩展一个节点,每个添加的节点都连接到其下层中的所有节点。接下来,冻结所有网络连接的权重(除了新技能对应的输出节点的权重),然后仅针对与技能相关的数据训练新的嵌入和节点。第三个模块的映射即标准化过程,将矢量长度规范到统一空间。但当神经网络在新数据上重新训练时,新的向量往往不会经历这种标准化过程。重新训练的网络可以简单地通过使其矢量比其他所有数据更长,来确保新训练数据的良好性能。类似地,当神经网络学习新技能的嵌入时,也可以通过使新技能的向量比其他技能更长来提高性能。为了防止“灾难性遗忘”(catastrophic forgetting),在训练期间,Shortlister评估新技能的嵌入不仅仅考虑整个网络对新数据的分类程度,还考虑其与现有嵌入的一致性。此外,研究人员们还用另一种技术来防止灾难性遗忘,除了加上新技能的数据重新训练网络外,他们还从每个现有的代表性技能中提取小数据样本,因为它们最能代表各自的数据集。结语:CoNDA技术将有助于语音助手更善解人意通过CoNDA技术为IPDA添加新技能的时候,无需进行耗时的再培训,而是通过“冻结”AI模型的设置,添加适应新技能的新组件,并仅用与其相关的数据训练这些新组件。此项技术如果能不断成熟并被推广,语音助手将能更快更好地理解用户的指令,变得更加善解人意。论文链接:https://s3.us-east-2.amazonaws.com/alexapapers/Continuous_Learning_for_Large_scale_Personalized_Domain_Classification.pdf文章来自:Venture Beat