写点什么

专访姚从磊:Kika 如何利用 AI 使移动输入做到“全准快”?

  • 2018 年 1 月 24 日
  • 本文字数:6714 字

    阅读完需:约 22 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

说起 Kika,国内的读者可能目前感知有限,但这家公司早在 2014 年就推出了首款输入法产品 Kika Keyboard,在海外进入了 140 多个国家,支持 173 种语言,全球用户数量达 4 亿,月活 6000 多万。并在刚刚结束的 CES2018 上发布了 KikaGO 全语音解决方案在车载场景下的产品落地—KikaGO 车载语音助手,赢得四项 CES 创新大奖。AI 前线在 AICon 上趁机采访了 Kika Tech 首席技术官姚从磊博士。

姚从磊博士,毕业于北京大学计算机系,重点研究领域包含深度学习、机器学习、自然语言处理、自动语音识别、信息检索等,在技术团队搭建管理,技术项目管理等方面有丰富的经验。现任 Kika Tech 首席技术官,负责全球技术团队的组建与管理,技术架构的搭建—包含语音、内容推荐、用户画像、数据平台的设计和研发等。加入 Kika 前,任豌豆荚技术 VP,整体负责移动手机软件产品的设计和研发以及变现产品的整体技术支持。此前,姚从磊博士先后就职于惠普实验室和腾讯科技,负责内容挖掘、推荐系统等相关工作,在 WWW、CIKM、WSDM 等行业顶级学术会议上发表多篇论文。

姚从磊博士将在本周四晚八点半,AI 前线微信社群内,给大家做线上分享,主题为《输入法引擎 AI 化 - 从传统 N-gram 引擎到深度神经网络引擎》。加入社群,即可听课: http://cn.mikecrm.com/dqOHGRQ

AI 前线:首先请您介绍一下自己的从业经验以及 Kika 现在正在做的一些事情?

姚从磊:大家好,我是姚从磊,我是 Kika Tech 首席技术官。我是 2008 年从北京大学网络实验室博士毕业,我当时的研究方向是信息检索和自然语言处理。毕业之后很多年做的事情都是跟信息检索、自然语言处理相关。这两年开始彻底转到 AI 这个方向,或者说我对 AI 的理解就是深度学习,现在我们的 Kika 做的事情本身来讲跟自然语言处理是非常相关的。

Kika 是一家面向海外用户的互联网创业公司,我们最主要的产品 Kika Keyboard 是面向全球 140 多个国家的 173 种语言的用户提供一流的在移动设备上输入的体验。这个事情非常重要,为什么呢?首先大家日常在使用手机的过程中,大部分时间都花在跟好友聊天,而在这个过程里面,大部分时间又都是花在怎么快速地去输入一些文字,或者怎么快速地去找一些想表达自己情绪情感的图片、短视频等等这样的内容。而其实现有的很多产品的体验可以有很大的提升空间,而 Kika 就是致力于为全球用户提供一流的移动设备上输入体验的这样一个公司。这也是我们的价值观,Kika 的愿景是希望让整个世界的沟通更简单。

说到底沟通这件事情在移动设备上,就是一个用户通过手机跟另外一个用户沟通,他们沟通的媒介是什么呢?就是文字、语音、多媒体的内容。对我们来讲,我们期望能够在这样一个沟通的过程中做到三个点,第一个点全,第二个点要准,第三个点要快。全是什么呢?全是说,我们要能够让用户用文字、语音甚至图像、视频这样的内容全方位地表达自己的意图和情感。准是什么呢?准是我们期望输入法帮助用户输入的内容都是准确无误的,并且能够准确表达他的意图,不至于因为这个里边有些错误,而让他的好朋友在收到信息的时候产生误解。第三是快,作为一个手机软件,反应速度是非常基础的,如果反应速度偏慢的话,留存就会下降很多个点,这样对一个公司来讲,生存就会受到挑战,我们在 Kika Keyboard 这个产品的反映速度上下了很多工夫,我们期望它能够做到全世界响应速度是第一的输入法工具。同时,输入法的快还有一层含义,就是预测得准,比如说我说一段话可能十个词,我们希望做到的是,我就按了两个键,你就可以帮我预测接下来要输入什么东西,这样我就可以一下子把所有内容全部输完,这样的话就能做到更快、省时间。

我们现在正在用大量的深度学习的技术,在全准快这三个方面,不断地提升 Kika Keyboard 的体验。同时我们认为语音是接下来人和人沟通,或者说人通过移动设备来沟通的这样一个场景下最重要的介质,并且语音的效率比文字高。

所以 Kika 在语音识别、语音理解和语音的各种应用场景,包括汽车、日常办公等很多场景里的语音方案,我们都做了很多探索。包括我们在刚刚结束的 CES 2018 上发布了 Kika Go,KikaGO 是一个什么样的产品呢?它是一个车内环境的全语音解决方案,它非常的灵巧。在这方案里边有一个硬件,这个硬件并不是传统意义上我们想象的很大的一个东西,它只是一个充电线。这个充电线里边,我们其实放一些麦克风和数据的芯片,同时这根线就通过手机的充电口和手机连起来,在手机上会有一个我们自己的 APP。然后能做什么效果?能做到在车内环境下边,噪音是 80 多分贝的情况下,它依然可以做到非常准确的收音、降噪,并且能够理解用户的意图。比如到底是打电话还是给谁发信息,或者通过什么软件给谁发信息、发什么信息等等功能,能够非常灵巧地去满足用户在开车的场景下所有的操控手机的需求。这个产品在 CES 上的反响超出了我们预期,包括美国非常主流的媒体,比如说华尔街日报都在头版去报道了这个产品,并且我们在 CES 2018 上也得到了 CES 的四项大奖。

AI 前线:您刚刚提到了移动输入上面的很多应用,包括 Kika Keyboard,也是用到了很多 AI 相关技术,还有大数据,能不能请您介绍一下 AI 跟大数据是在移动输入上面能解决一些什么样的问题?

姚从磊:首先我想说一下,Kika 对于 AI 是怎么认知的。我们认为 AI 是一个整体,里面包含三个因素,第一个是技术,可能在目前这个体量来讲,AI 技术最有价值的是深度学习的技术;第二个是数据,也就是您刚才说的大数据,那么对输入这个场景来讲数据是先天的,因为它使用频率特别高;第三个叫场景,如果没有场景那么所有的深度学习技术、AI 技术都没什么用。

在整个移动输入情况下它是什么样一个情况呢?首先移动输入解决的问题是,输入就是一个序列,比如说我输了什么词、按了什么键,或者说我过去发过什么图片、Emoji,或者讲一段语音,这段语音本身是语音信号的序列,它期望的输出是什么?输出也是一个系列,比如预测接下来用户想输什么词,或者用户想输什么 Emoji,这段语音信号应该对应的是一段什么样的文字,这本身都是一个序列到序列转换的过程,这个过程在深度学习中用 RNN 相关的这套解决方案是非常合适的。

但是这个合适也只是体现在云端,在性能非常强大的集群服务器上 Train model 的时候是非常好的,但是作为一个输入法的产品,因为刚才我们提到,输入法想做得好首先要足够快,需要响应时间也足够短,那就涉及到怎么把一个云端训练的很大的模型去量化、压缩,能够让它在客户端、在手机端,甚至在一个配置非常低的手机上能够非常流畅地运行,并且能够做到准,能够给用户提供非常好的预测,针对这个事情我们在过去很长一段时间里做了大量的工作。我们现在能够做到一个非常平滑的方案,能够把一个非常大的模型,比如说一点几个 G、两点几个 G,压缩到三兆四兆的样子,并且能够在手机上非常平滑地运行,它消耗的内存也就 20 兆,响应时间也能做到 60 毫秒以下,这个是我们过去做得大量的工作。这些工作都是基于谷歌的 TensorFlow 平台来做的,但是因为 TensorFlow 平台是为了一个非常通用的场景设计的,我们在它的平台基础上也做了大量的优化和创新,同时我们也把这些优化和创新的结果以代码的形式再开源出来,提给 TensorFlow,这个过程现在是处于一个源源不断的循环过程中。

AI 前线:您刚提到移动端的计算资源非常有限,你们也需要通过在手机端做一些工作,同时在云端做一些工作,二者综合起来实现神经网络的训练和预测,那么在这个过程中,云和手机端分别会完成一些什么样的工作?

姚从磊:在云端的话,你可以这么理解,我们对每种语言会通过各种方式获得大量的公开数据,以及来自我们用户自身的、经过用户许可而获得的经过匿名化处理以后的脱敏数据,把这些数据汇总在一起。首先在云端我们要把噪音的数据去掉,因为其实现实社会中数据会有大量的噪音,噪音去掉之后再以一个比较好的方式并发地训练一个非常大的神经网络。我们期望这个训练过程足够的短,所以我们也做了大量的工作使得并发训练能够越来越快,同时在训练完之后能够自动对新模型的效果做评估。如果这个模型效果不错,那我们就要开始启动一个流程,把这个模型下发到客户端去。在下发之前我们要对模型做量化、做压缩,就完成了从很大的模型变成很小的模型这样一个过程。这一步做完之后从云端下发到客户端,到客户端之后它其实是这个语言的一个通用的模型,本身并不包含每个用户本身的个性化使用习惯。

所以我们还有一个线上解决方案,在用户手机空闲或者手机电量比较充足的情况下,会在手机端启动一个训练的过程。这个过程就是只利用用户本身的历史输入数据,去训练一个用户个人的模型。最后在用户实际使用输入法的过程中,当他按了一个键以后,我们会用这两个模型来做 Inference,最后通过一种比较有效的方式把两个 Inference 的结果整合起来,这整套都是通过一个更大神经网络来完成的。

**AI 前线:** 和其他的一些输入法相比,比如国内的搜狗、QQ 等等,Kika 输入法有哪些比较特别的地方?它的主要优势在哪?

姚从磊:特别的地方,我觉得几个点,第一个是我们覆盖的国家和语言足够多,到今天为止我们覆盖的语言已经到了 173 种,基本上能 Cover 这个世界上大部分国家的用户;第二是说,我们对国外用户或者说一些重点国家用户的理解会更好,比如说在我们的这个产品里面,用户使用多媒体内容、使用语音,这其实是一个非常明显的趋势,而我们产品的设计和实现也帮助用户能够更好地用语音和多媒体内容来表达自己,所以我们的用户都非常活跃;第三是说,虽然我们主要产品线是输入法,但是我们从输入法这样一个产品,往前看会发现,在整个用户和用户沟通的过程,这个过程不仅仅限于输入法场景,还有很多,比如几个人一起开会,这都是沟通的过程,再比如说在车内,我控制手机做事情其实也是沟通的过程。输入法的数据对这些过程其实都有很大的帮助,输入法很多技术本身会有更多的应用,我们也启动了很多工作,就是在利用输入法的技术和输入法的数据在更多的场景下去做更多对用户有价值的事情。

AI 前线:为什么 Kika 一开始就选择了海外的移动输入市场,而没有选择国内的中文市场?未来会考虑进军国内的市场吗?

姚从磊:首先作为一家初创公司,在 Kika 早期的时候,初创公司最有价值是什么呢?是它足够灵活,能够发现很有可能爆发的点。所以在那个时候我们发现了一个有可能爆发的点,就是在海外市场,在输入法这个工具上,用户想更个性化表达自己情感的诉求没有被满足,所以那个时候我们开始切入这样一个市场,开始做了 Kika Emoji Keyboard。说到底就是让用户在输入文字同时能够用很多 Emoji 组合起来表达自己的情感这样一件事情。这件事情我们找对了,所以就起来了。那么接下来怎么弄呢?找对了这个点之后,我们在这个基础上要满足用户更多需求。用户想表达自己不只要 Emoji 了,他首先要求输入非常准、非常快,同时还要求更多大图,甚至视频,这样一些语音输入的需求。在这个过程中,我们的产品会做得越来越好。所以说为什么我们选择海外市场,其实就是一个切入点的原因。

至于从技术上来讲,海外大部分国家都是拉丁语系,跟汉语有些不一样,汉语可以认为是一种转写,它是拼音的组合最后到汉字。但现在我们一些市场,比如印度,它有些语言也是这个样子,它可以用一个英文键盘或者类似英文键盘输出 Hindi 这样一个是跟英文完全没有关系的语言,过程跟中文是比较类似的。从产品角度来讲,我们觉得我们现在应该把海外市场做得更好,因为海外市场非常大,全球有 73 亿人,而中国以外的人口大概 60 亿,这个市场我们现在还没有做得足够好。但是从技术来讲,现在也存在一些可能性,比如我们也在考虑,是不是应该做个产品我们自己每天都用,作为一群中国人来讲最常用的就是中文输入,我们也在想,是不是现有的技术可以更好地改善我们的中文输入法的输入体验。

**AI 前线:** 您演讲中提到 Kika 是为了解决人跟人之间沟通的问题,那么现在这个移动时代,人跟人之间的沟通存在哪些特点?未来又可能发生一些什么样的变化?

姚从磊:特点的话,再回到那个全准快上来讲。我个人感觉首先最重要是全这样一个特点,我们能够看到一个趋势,在 Kika 用户的日常使用中用户发送多媒体内容的频率越来越高,这也比较容易理解,因为一图胜千言,所以整个移动设备的沟通多媒体化是一个非常重要的趋势。

第二是语音化,语音在 Kika 用户的整体使用频率也是非常快升高的,这个原因比较简单了,虽然可能有些日常的场合不太适合使用语音,比如隐私问题等,但还是有大量的场合是适合语音的,它会更快,在这些场景下使用语音的潜力非常大,主要因为语音的效率非常高,所以我们会觉得语音也是一个非常重要的趋势。所以我们花了很多的精力而且投入了很大的团队在语音方向上,我们期望能够在移动设备上给用户提供一个基于语音的更好的方案。但是这个语音的方案,不是指我说一段话,你给我录个音然后发给对方。

大家可能也注意到,在知乎或者其他媒体上会有一些讨论,我记得印象最深的是,一篇文章是说,请不要随便给我发语音,就在微信里边。因为比如说两个人不熟,其实发的时候对别人是不礼貌的,即便很熟,如果发的语音里面有一些特别重要的信息,我可能需要听很多遍。所以语音这个事情是可能发的这方觉得特别好,但是收这方觉得特别不好。但文字是属于发这方觉得比较慢,但是收这方会觉得特别好。Kika 在语音上做得更多的事情是,怎么样让用户用语音来讲,但是让他的好朋友收到这个信息的时候,能够用文字加 Emoji 加图片等很多种方式,更全面的展现出他用语音讲的东西,这是我们现在正在全力以赴解决的问题。这些问题现在也有一些比较好的结果了,刚才提到的 CES 上 KikaGO 这样的产品,就是我们在这个努力方向上的一个成果。

**AI 前线:** 您刚刚提到了 Kika Keyboard、KikaGO 等不同场景里面的产品,未来 Kika 还会把移动输入的技术方案放在哪些产品上面?还有什么样的计划?

姚从磊:首先作为一家创业公司而言,或者作为一家互联网公司而言,最重要的一个点是聚焦,对我们来讲,我们只会聚焦在人和人的沟通上,或者说怎么样给人提供更好的沟通方式。具体的产品来讲,我们现在开始慢慢的开始比较明确,就是 2C 和 2B 两端,C 端可以认为是像 Kika Keyboard 这样的产品,也包括像 KikaGO 这样基于充电线的一套全语音解决方案。但是 KikaGO 就有点偏 2B 了,因为其实我们在 CES 上就会遇到很多潜在的合作伙伴,他们就问我们,你们这项技术能不能跟我们的产品整合,其实这就是 2B 的一个方向。2B 方向对我们是非常重要的,回答你刚才的问题,首先在 2C 端这样的产品上,我们会把 Kika Keyboard 做得更加好用,在全准快上能够做得更好,能够真的让用户实现一个特别全面准确和快速的人与人之间的沟通;在 B 端来讲,我们更多的是基于语音这套解决方案,在比如说车载场景,在人和人日常工作沟通的场景,用语音提供更多更有价值的方案,这些方案我们期望能够跟 B 端更多厂商以及合作伙伴一起把这些方案落地,给他们的产品提供更多的价值。

**AI 前线:** 最后请您谈一下对人工智能未来的展望。

姚从磊:首先实事求是地讲,人工智能不是个新玩意,其实在好几十年前,一九五几年的时候,人工智能相关技术已经开始萌芽了,甚至说现在的深度学习这套技术的基础,在我读本科那时候就已经 OK 了,只是算不动、没数据,虽然有需求,但算不动、没数据。我觉得我们现在赶上了一个好的时代,因为深度学习技术开始能够广泛应用了,但是现在只是一个开始。随着数据电子化的速度越来越快,我们可以拥有、可以处理的数据会越来越多,并且我们日常生活里有很多场景是迫切需要提升效率的,比如说像下午有一些演讲提到在这种仓储环境下怎么提高效率,包括 Kika 正在做的事情,人和人沟通之间怎么提升效率,等等这样一些事情,其实有很多可以做的事情。但是我觉得这其中重要的不是去预测在什么领域里或者什么场景下它会发挥作用,重要的是一种思维方式。

AI 在我看来更重要的是,只掌握技术本身是很有限的,因为技术这东西,无外乎就是像 CNN、RNN、GAN 等等这一套东西,但更多的是我能找到一个什么场景。这个场景下我去利用深度学习的技术,能够非常大幅度地提升体验。场景本身的定位是非常重要的,有了场景,再去看我有没有足够的数据。这里边还有个悖论,就是很多人以为 AI 只有在真正大数据前提下才有作用,这是错的,它很多时候在一些小规模数据上也有很好的效果,更重要的是在于场景的定位。只有场景定准了,我能找到足够多的 Data,或者我能够找到支撑这个场景的 Data 就够了。我觉得从这个角度来讲,是有很多事情可以做的。

2018 年 1 月 24 日 00:201076
用户头像
蔡芳芳 InfoQ高级编辑

发布了 661 篇内容, 共 334.8 次阅读, 收获喜欢 2257 次。

关注

评论

发布
暂无评论
发现更多内容

送你一份迷你书,全面了解如何做好大促技术备战

京东科技开发者

DevOps

令数字起舞,让自然微笑:TECH4ALL的2020启示录

脑极体

通达同城快递设计方案

garlic

架构师训练营第 1 期

软件测试——网络协议知识(二)

测试人生路

软件测试 网络通信协议

北京一咖啡店启动数字人民币应用场景测试 店员:目前处于内测阶段

CECBC

数字人民币

Rust布道者张汉东倾授,入门Rust初学者都要攻破哪些难点?

华为云开发者社区

学习 rust 语言

LeetCode题解:239. 滑动窗口最大值,二叉堆,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

Java多线程编程核心技术

田维常

多线程

重新发现科技与人文的互动

脑极体

写出一手烂代码的19条准则

Java架构师迁哥

破除数据垄断,数据上链或是关键

CECBC

区块链 大数据

ClickHouse利器—如何提高留存计算速度

行者AI

数据库

百度京Fun生活节 双旦福利HIGH 翻全城

DT极客

测开之函数进阶· 第6篇《闭包》

无个性不签名

测试开发

爆赞!P8架构师总结29篇多线程与高并发+设计模式核心笔记

Java架构追梦

Java 学习 架构 面试 多线程高并发

RPC Demo(二) 基于 Zookeeper 的服务发现

Java zookeeper RPC 服务发现

Flink Forward Asia 2020 -- Keynote 总结

Apache Flink

flink

架构师训练营大作业

Gosling

架构师训练营第 1 期

华为云·云享专家李万龙: IoT 梦想,从0到1的实现

华为云开发者社区

技术 物联网 IoT

IPFS分布式存储矿机系统APP软件开发

系统开发

近些年有哪些口碑炸裂的项目管理工具?各具特色的项目管理工具我们该如何选择?

PingCode

项目管理 程序人生

Linux基本操作命令

行者AI

Linux

仅4步,就可通过SQL进行分布式死锁的检测与消除

华为云开发者社区

数据库 sql 死锁

实用流程工具,浅析LR.NET配置型工作流引擎

雯雯写代码

.net 工作流

Java中的常量

cdhqyj

Java

第一张区块链完税证明在深圳开出,区块链政务应用再获突破

CECBC

区块链 电子证明

分享一个普通程序员的“沪漂”六年的历程以及感想

程序员老猫

回忆录 经历 年终总结 沪漂 上海买房

技术干货 | 六分钟学会使用 HBuilder 引入构建 mPaaS 小程序

蚂蚁集团移动开发平台 mPaaS

小程序 uni-app mPaaS

跨年巨作!13万字!腾讯高工纯手写“JDK源码笔记”直接带你飙向实战

比伯

Java 编程 架构 面试 计算机

如何使用mock应对测试所需随机数据

华为云开发者社区

测试 数据 Mock

云挖矿APP系统开发|云挖矿软件开发

系统开发

专访姚从磊:Kika如何利用AI使移动输入做到“全准快”?-InfoQ