A-A+

沉寂4年的Siri终于开放:这是目前我们知道的全部细节

2016年06月17日 编程开发, 苹果 沉寂4年的Siri终于开放:这是目前我们知道的全部细节已关闭评论 阅读 28 次
本文作者陈村,剑桥大学自然语言处理(NLP)组,现为机器学习语义分析工程师。

沉寂4年的Siri终于开放:这是目前我们知道的全部细节

果不其然,苹果在昨晚WWDC 2016上发布了新的SiriKit,即把Siri开放给开发者。作为自2012年就发布的Siri,除了偶尔说几个段子、打个电话或者发个短信,似乎也没啥太多常用的功能。iOS平台的一个显著优势其拥有丰富的第三方应用生态和众多优质开发者,将Siri开放给iOS生态希望能够让Siri支持更丰富的功能。

| Siri 变身 SiriKit 之后,带来什么?

面向开发者的Siri的API都集成在今天早上刚刚发布的SiriKit中。(有趣的是,现任泰国王后也叫Sirikit,就是中国人民的老朋友诗琳通公主的母上)。

SiriKit采用了跟Google和出门问问类似的策略,即用户通过正常的流程唤醒Siri,Siri做完语音识别和语义分析之后,将结构化语音分析结果打包成一个某个领域(Domain)的意图(Intent),然后交给支持这个意图(Intent)的第三方应用(比如微信),第三方应用被启动,从传入的Intent中获取相应的信息,完成操作。

沉寂4年的Siri终于开放:这是目前我们知道的全部细节

例如,上图演示中提到了的例句 “I need to send a message to Nancy via WeChat saying I'll be five minutes late",当用户唤醒Siri说出这句话的时候,Siri会把上面这句话转换成结构化语义意图:

  • 领域 (Domain):Messaging

  • 意图 (Intent):Send a message (INSendMessageIntent

  • 意图参数 (Intent Parameter)

    收件人(recipients):Nancy

    消息内容(content):I'll be five minutes late

然后这个意图会被转交给微信,微信会从该意图中抽取出收件人和消息内容,匹配用户联系人并发送消息。

按照苹果官方的iOS文档,现在SiriKit共支持7个领域的共计22种意图:

  • 语音通话 VoIP Calling:打电话、发起视频电话、查通话记录
  • 信息 Messaging:发信息、搜索信息
  • 照片搜索 Photo Search:搜索照片、播放照片幻灯片
  • 个人之间的付款 Payments:向某人付款、向某人收款
  • 健身 Workouts:开始健身、暂停健身、恢复健身、结束健身、取消健身
  • 打车 Ride Booking:查看附近可用的车辆、订车、查看订单
  • 车载 CarPlay:切换音频输入源、空调、除霜、座椅加热、FM调台

对于以上的22种意图,苹果都会帮开发者处理好所有的语音识别和语义理解,开发者只需要申明支持某些意图,然后坐等用户唤醒就好了

比如说,“Hey Siri, 用支付宝付20元给小张作为午饭钱”,支付宝就会自动被唤醒,找到用户“小张”并转账20元。

“Hey Siri,用滴滴给我叫一辆车去中关村”,则启动滴滴打车,并自动设定目的地为中关村。

沉寂4年的Siri终于开放:这是目前我们知道的全部细节

(图为作者自制)

作为开发者而言,如果你的App功能正好跟以上7大领域22意图重合,那么是一个很好的机会去声明支持其中某一些意图,这样就可以让用户用语音的方式来启动你的应用,大大增加使用的便利性和用户粘性。

| 苹果为什么现在才开放Siri的语音搜索API?

1、开放给开发者需谨慎

SiriKit开放了Siri的语音搜索API,机制跟Google Android Voice 类似,后者都已经上线两年并早已支持十几种领域,远超SiriKit现在发布的7个领域。而国内的出门问问,因有Ticwear智能手表操作系统作为入口,早在去年年初就开发了类似的语义API,滴滴、支付宝、阿里小智智能家居等第三方厂商早已通过这种形式落地其手表操作系统。

在语音搜索API上,一般公司的做法都是极其谨慎的。不同于以科大讯飞为代表的“应用内”语音、语义API,苹果、Google、出门问问这些API属于“入口级”语音搜索API,即语音搜索是系统发起的而非在应用内发起,系统识别语音意图并分发给第三方应用。

一般这类“入口级”语音搜索API,会非常谨慎地先做好领域分类(Domain Classification),然后根据分出来的领域导流给不同的应用。所以,领域和领域内意图,一般要由系统事先定义好、并且优化好语音、语义识别模型之后,才开放给第三方开发者使用。

2、现有语音识别API存在哪些技术瓶颈?

由于众所周知的技术难度,现有的语音识别API还存在以下技术瓶颈:

首先,语音识别方面,训练一个可靠的语音识别需要领域内的大量语言模型。

例如如果不将北京地名词典这样的领域知识输入进语音识别引擎,语音识别根本无法正确输出类似于“簋(gui)街”这样的不常见词语。

其次,由于是“入口级”语音搜索,还要处理好不同领域之间的歧义。

例如“发微信给小苹果让她帮我打电话订一辆出租车”,这句话对人类来说是再简单不过了,但是对于现有的语义识别系统来说都是极具挑战性的:这到底是要发短信呢?还是打电话?还是叫车?怎么还提到了歌曲“小苹果”啊!

3、发布会上没有提到的特色

不过,笔者也从官方文档中惊喜地发现一个未在发布会上提及的特色。不同于Google Voice Action[1]SiriKit发布第一版就允许开发者在一定程度上自定义语音命令。SiriKit允许开发者通过配置文件的方式自定义某一些词的读音、上下文例句、甚至语义含义,当然,这些必须限定在这7大领域22个意图框架内。

如下面图中例子所示:

沉寂4年的Siri终于开放:这是目前我们知道的全部细节

图中展示了一个名为“CardioBonaza”的健身应用,其应用支持一个名为“Cardio Craze”的健身项目,用户可以通过Siri直接启动CardioBonaza应用并开始Cardio Craze健身项目上图的配置文件通过以下几方面帮助Siri识别有有关命令:

  • 定义Cardio Craze是开始健身(INStartWorkoutIntent)这个意图下面的workoutName这个属性(注意,这个意图以及意图的指令都是包含在SiriKit那7大领域和22意图内的)。这样一但识别出来,Siri会把Cardio Crazes识别成workoutName属性传给CardioBonazay应用
  • 定义Cardio Craze的发音以及可能出现的上下文,这有助于帮助Siri更准确的语音识别这些不常用词
  • 通过定义Intent Phrase的一些例句,甚至可以影响Siri入口的领域分类(Domain Classification)

苹果一向谨小慎微,这次SiriKit仅仅开放了7个领域,应该是经过充分的用户调研和模型调优。但实际使用中是否能够胜任复杂的用户自然语言,还需要等到真正发布之后好好体验。不过,SiriKit确实做了充分的准备,准备和开发者一起保证良好的语音交互体验。

| 什么是用户真正需要的语音搜索?

除此之外,苹果今天还发布了MacOS版本的Siri,可以在Mac上通过Siri去完成手机上的一些基本功能。比如听歌、查天气,以及一些为Mac笔记本开发的语音命令,比如查找某个文件、或者看看电脑还有多少剩余空间。

连同SiriKit,这应该是Siri自从2012年发布以来最大的一次更新。

但我认为,这次更新仍然乏善可陈。竞争对手Google本身拥有强大的AI研发能力和长期以来的技术积累,SiriKit做的这些事情从技术上来讲都只是一直在追赶Google而已。

要做到如同Google Now一样的智能,比如百科类问题的问答、智能推送[2],苹果还有很长的一段路要走。当然当前,不管是哪家的语音识别技术,从能力上来讲并没有质的区别,人工智能语音搜索仍然是一个新鲜玩意,他的能力远低于人们的预期。在短期人工智能技术难以进行质的突破的情况下,像苹果这样谨小慎微地一步步往前走,慢慢地加入新的功能,让更多的开发者加入这场游戏,总体来说也是推动了整个行业的发展。今天凌晨发布的时候,苹果宣布SiriKit已经得到众多主流App的支持,包括微信、支付宝、滴滴、Whatsapp、Skype等,这也许正是苹果作为一个后来者的优势。

这让我想起了4年前第一次发布Siri的时候,无声无息地发布,在沉寂了十几年的人工智能圈,确确实实地掀起了一阵浪潮。

注解:

【1】Google的Voice Action有自定义语音命令,但是看起来还没有完全准备好。

【2】Google Now会分析用户的Email 来获取用户的一些个人信息,比如航班行程、酒店。苹果在今天凌晨的发布会上声称,出于用户隐私方面的考虑,暂时没有类似的功能。

评论已关闭!

Copyright © 理处言语然自 保留所有权利.   Theme  Ality 京ICP备07032740号

用户登录

分享到: