初见之时,只觉得这是一位精神矍铄的长者,后来听说林德康先生在这个年龄还在坚持跑马拉松的时候,更是让人敬佩不已。
和大多数技术人一样,林德康也并不是一个健谈的人,采访的过程中似乎还有些紧张。但是这些都掩盖不了这个人身上那些闪光的地方。
海外求学
林德康的教育经历很丰富,不仅是那时少有的大学生,更有在海外留学并留任的经历:1980 年考入清华计算机系,之后去英国念了两年研究生,又转到加拿大 Alberta 大学攻读到博士毕业,1992 年在 Manitoba 大学做助理教授和副教授,后来又回到 Alberta 大学当正教授。
2004 年林德康来到谷歌研究院,在谷歌一待就是 12 年。“大概前 10 年左右一直在研究院,后来最后两三年是,我们在研究院做了一个自动问答的系统,那时候觉得那个系统应该可以做成一个产品,后来我就带着整个团队挪到谷歌搜索部门,然后做了一个网页上自动问答的产品。”2016 年的 4 月份,林德康离开谷歌回到国内,开始了自己的创业之路。
回国创业
因为有在硅谷的工作经验,林德康对创业有自己的看法:“在硅谷,或者说在大公司里头,大家一直也在谈论创业的这个事情,从谷歌出来门槛还是挺高的,因为机会成本比较大,谷歌是一个很好的地方。我其实是很早就想自己真正做一个产品,虽然在谷歌里最后几年也是在做产品,但是跟自己完全把控一个产品还是不太一样,我们是想做一个跟自然语言有关的产品,这样积累的经验会跟别人不一样。”
另外,在用户需求和技术两方面来说,林德康认为现在回国创业是很好的时机。
早在 2005 年的时候,林德康就认为语音识别就已经得到了较好的发展,那个时候他已经把手机的键盘换成了讯飞的语音键盘,开始了语音输入的体验。虽然偶尔还是会有错误出现,但是语音输入的方式确实比键盘要快不少。而在他看来,下一步就是让机器理解使用者说的话,就是语义理解,也正是很多自然语言处理研究者们正在做的事情。
林德康说:“再往前几年,如果要做智能语音助手,光语音这一关就很难突破,如果是识别率不够的话,在使用过程中会暴露很多的问题,那个时候网上就有人发视频,说用语音助手有多恼火,大部分语音都识别错了,那 Code 就没法做。我觉得现在时机特别好,刚刚好可以把语音做成一个能用的,非常实际的产品。”
投身智能语音领域
奇点机智成立于 2014 年 11 月,推出的第一款产品就是在手机端的智能语音助手——小不点,这款智能助手与其他的同类产品都有些不同。
不一样的语音助手
林德康介绍,最大的不同体现在两点。
第一,其他语音助手,比如 Siri,Google assistant 都是自己有一个对话框,里头的内容是通过接后台服务来拿到的,要么就是手机上第一方的应用,比如设闹钟、连接 WiFi、屏幕旋转这些功能;但是一些跟内容有关的东西,比如你想打车,它需要接入打车软件的后台,或者其他服务的后台,到了打车的界面之后,选车需要在对话框里完成,差不多所有的智能语音助手做法都是这样的,除了三星的 Bixby。林德康说:“我们的做法是通过操作第三方的 APP,比如直接操作订票软件,或者操作打车软件来完成用户需要做的事情。”
第二,语义理解以后,程序已经知道要做什么,但是真正要去实现的话,还要有重要的一步,这一步就是要接后台,要把用户的意思理解之后去实现。一般是通过结构或者数据,把它转换成 API 的调用。在其他公司,这一步是需要工程师写程序去做,林德康表示,奇点机智的智能语音助手可以不必调用第三方 API,通过模拟用户的点击,用不着写程序就可以实现动作指令,同时把操作的过程记录下来,想办法做一些扩展,可以让它更泛化一些。学习功能和执行过程是奇点机智跟别人家比较不一样的地方。
技术难题
既然有着“不一样”的功能,研发的过程也必定不会一帆风顺,林德康在采访中说:“技术难题到处都是。”
语音识别
就语音识别来说,从前是门槛非常高的一件事情,至少是一个是 billion dollar company(十亿美金规模的公司),才有可能开始做这个事情。但是现在不一样了,有了深度学习以后,语音识别相对就会做得比较容易,另外也有一些开源的这个系统可以用,大部分创业公司就会采取,拿一个开源系统作为基础再去发展,一般大家用的最多的可能是 09 年的时候开始做得一个开源系统,叫 Kaldi。
奇点机智语音助手的系统借用了深度学习框架,谷歌的 TensorFlow,从 0 开始写,做了一个端到端的系统,但是没有一个直接开源的东西可以用,有些部件是有开源的,比如 CTC,这个事情一开始做比较难,但是真正打好了基础以后,做出来的系统就非常简单,代码量就是像 Kaldi 那样系统的 1/10 不到,也比较容易修改和做实验。
每个人对整个系统都有不同的了解,大型系统做出来之后,不同部件之间互相的缺陷已经适应了,很难再往上调,比如调试的某个部分理论上应该变好,但是因为其他的部件模块已经适应了这个缺陷,调试完以后有时候反而会有问题;如果一个简单的系统再往前走比较容易,林德康的团队选择了一个开始比较难,以后会变得比较容易的一条路。
语义理解
很多语音助手在遇到中文语音的时候就会犯难,似乎中文变成了一道世界性的难题,然而林德康在采访中表示,中文的语音识别不一定比英文要难,认出中文的发音,相对来讲是容易的,因为中文的每一个音节都是元音辅音,很规律,每个字是两个音节,识别出这个声音来,是一个相对来讲容易的事情。
关于中文识别效果不好,林德康认为,有可能是因为英文语音识别发展的历史长,最早大家都是用英文来做识别,谷歌在手机上做搜索的时候,就尝试过使用语音,但是是以英文为主,虽然后来也尝试过中文,但是谷歌当时并没有进入到中国市场,中文语音识别没有特别受重视。“我想其他的国外语音助手也会多多少少会受这个影响,都是以英文为核心这么发展起来的,整个系统都是一个英文系统,想办法把别的语言加进去再怎么样都会比较困难。”林德康同时也表示,目前专注中文语音识别研究的这些产品,使用起来不见得比英文为主的产品差,因为语言的这个复杂度是差不多的,而目前已有的技术已经可以很好的来识别中文语音的内容。
不使用第三方 API
奇点机智的语音助手在技术上有一个关键点,就是不用任何第三方的 API 即可操作手机应用。林德康为我们介绍了这一技术的原理:安卓手机上有一个 Feature 叫做辅助功能,它在设计之初是为了给盲人和其他残疾人使用手机,就需要有一个功能可以把屏幕里的信息读出来,不管到哪一页,屏幕能读出当前页的信息。奇点机智的这款语音助手,在最底层也是用这个辅助功能:用户打开权限以后,语音助手就可以帮着用户进行点击操作,比如在屏幕左上角有一个返回键,在程序里会给它发一个事件,就好像用户进行了点击操作一样,把一系列的动作组合起来,去完成一件事情。
没有使用第三方的 API 会不会产生一些限制?林德康认为,其实这样才可以让这款应用做更多的事情。
他表示,就算有第三方 API 的支持,能做的功能也有不少限制,虽然有一些核心的功能可以开放使用,一些细节方面的功能仍然不会对开发者开放,比如说在某些应用里更换字体大小,一般就不会专门做一个 API 来完成这些事情,因为这些都是需要工程的支持,但是如果直接操作 APP,就可以绕过很多繁琐的东西。
但是林德康同时也表示,如果可以调 API,体验还是会更好一些,因为可以直接到达,不用走几个屏幕,就可以完成操作。
学习功能
这款智能语音助手还有一个重要的功能是它的“学习能力”,用户可以教它一些操作,在之后的使用过程当中,它就可以学会这项技能,并帮助用户来实现。
通过学习功能,智能助手可以看到用户到底点击了什么东西,也就可以把它记下来,比如最简单就是完全记住用户的语句和操作的事件,在之后进行相同或相似指令就可以顺利执行。同样的,这项功能的实现也有难度,比如识别的语句中需要让智能助手找出来什么东西是参数,以后这个参数还可以换成其他的东西,如果用户要听歌,就可以换成歌曲;要去导航去什么地方,可以换成地名或路线。
虽然有强大的学习功能,奇点机智的智能助手也并非是毫无弱点,如果用户的 APP 有些改变,智能助手就要重新适应,但是这个适应的过程并非是一个要重新录制的过程,因为已经知道过去怎么做,现在的适应也不过是时间问题,所以还不需要特别大的改变。
对 AI 发展的看法
作为一个海外工作近 20 年的资深技术专家,我们也希望听听林德康先生对中国智能语音发展的看法,林德康说:“中国在做智能语音方面的研究,包括其他所有 AI 方面的研究,一个很大的优势就是人多,市场大。很多技术一开始都是有些冷启动的技术,但是最后真正能决定的这项技术能不能通过,是通过用户的数据不断的提高,系统的性能不断优化,形成一个闭环的关键点。用户多、人多,这样进步就会快,才有可能变得更好。”因为一开始,使用的人从百分比来讲会比较少,但是如果人口基数大,也是很多人。从数据积累的角度上讲,最重要的是用户的数目,在一个很大的池子里头,哪怕一个很小的百分比也比在一个小池子里头很大的百分比要强的多。
智能语音技术发展至今,林德康认为现在语音识别本身已经做的相当好,从技术上讲,最大的难点还是在语义理解的方面,如果把用户限制在某一个 APP 应用里的话,它的功能范围相对来讲有限;另外一个难点是在应用场景上,对产品来讲,最大的难点是找到一个最好的应用场景,真正能够解决用户的刚需。
未来规划
首先,林德康谈到现在正在制作一款独立的 APP,方便更多用户来使用奇点机智的这款智能语音助手,很快就会在“小米应用商店”上线。而对于目前热门的智能语音音箱,林德康表示:“我们还是想把自己做得比较轻,因为硬件一旦要投进去,运营的方法、资本等等都不一样,所以我们没有太考虑做自己的硬件。”
关于未来发展,林德康和团队也有一番规划:现在用户的实际需求变得慢慢清晰,另外他和团队也在做一些实验来寻找哪些需求是比较更刚性的,应该往哪个方向努力,才能够有更快的用户增长,在上线之前如果靠开发者坐在一起,开脑洞去想,会非常不准,有真正的用户数据来帮助做决策,这样走下去的发展会比较好。
评论