去年锤子科技发布会上大放异彩的文字处理技术Big Bang,已于今年1月12日开源。这个罗永浩自称在马桶上想出来的功能,背后究竟有着怎样的技术细节与故事?
本次要探讨的Big Bang,不是天文学家头脑中的宇宙理论,也不是众人追过的情景喜剧,更不是迷妹眼中的歌舞男团。这篇文章的主角,是锤子科技刚刚开源的文字处理技术Big Bang——在没有任何硬件依赖下,完全在软件层面,实现对文字段的智能语义化分词处理。Big Bang已于2017年1月12日正式开源,那么Big Bang是什么?背后的技术是怎样的?为何将其开源?为此InfoQ采访了锤子科技软件研发副总裁邹伟先生,以下是他对Big Bang的介绍。
人们的的联网习惯从电脑端转移到手机,总体而言的确便利很多,网络触手可及;但是文字处理一直很“憋屈”。罗老师(锤子科技CEO罗永浩)说:“九年了,没人管这个事儿。” 在既没有大键盘又没有鼠标针的情况下,手持设备的文字输入效率很低;超级常用的复制粘贴操作,没有Ctrl+C和Ctrl+V可用,只能用“胡萝卜”似的手指对着一群细小的文字不断触碰。
Big Bang因此应运而生,它可以实现对文字信息便捷化处理:复制、编辑和分享;具体而言,通过“炸”的形式,将一段文字(文字气泡或便签版图片)拆分成独立、可组合再使用的词。
Big Bang支持对中英两种语言的“炸”式处理,尤其是中文,会根据智能语义拆分成词组。使用者可以选定某个或某些进行搜索查询、复制和分享操作。比如,将微信聊天记录中的聚会地址,“炸”开只选取地址词语,直接发给高德地图软件。
Big Bang 以悬浮于当前应用窗口的形式,展示选定文字或便签图的“炸”开结果,所有工作都是软件层面实现。Big Bang是贯通锤子科技、三角兽、扫描全能王三家公司的技术,通力合作的结果。其中三角兽负责进行分词的算法与优化,扫描全能王负责图片的识别解析。锤子做了两件事:一个是打通界面与文字的区隔,尽可能用技术手段直接提取出文字,为此全系统做了很多工作配合文字提取,包括浏览器从内核层面上给予了支持,允许大爆炸从网页中提取文字;二是从系统层面上,整合这些技术,再根据用户的实际使用体验,交互与需求,进行不停的打磨与优化。
因为是深度定制Smartisan OS,所以能从框架层做出应用层无法实现的功能。比如炸开任意位置的文本, 只要一个应用使用了文本,这个应用不需要做任何事情,Big Bang就能炸开文字段。
分词技术我们采用了三角兽的方案,虽然这个公司成立时间不久,但是技术实力毋庸置疑。三角兽目前提供的技术分为两种,一种是离线,一种是在线,开源的代码上面是使用的在线的分词库。离线库的指标:内存70-80M,100字的分词时间在20-30ms。在线库的指标:内存在5M以内,100字的时间在120ms左右(网络状态好的情况下)。
考虑到解析效率与内存的问题,Big Bang现在对文字的长度限制是1000个字。三角兽目前的能力最大上限是8192字节, 采用的UTF-8编码,大部分汉字是三个字节的长度。因为这个长度越大分词的时间就需要越长。我们在综合考虑了分词的体验与实际的使用情况后, 限制了最大的长度是1000个字。对于自然语言的理解,三角兽有一个机器学习的平台,可以进行不断的训练,不断提高。同时还有一个人为干涉修正的因子,这样就尽可能的保证断句的准确性。
除了单一语言的中文或英文字段,Big Bang同样胜任中英文混排的语句的分词,还可以通过专业语库拆分一些难以理解的句子,比如在锤子M1发布会上,罗老师就运用Big Bang功能将一段文字“碳碳键键能能否否定定律一”,炸成了“碳碳键 / 键能 / 能否 / 否定 / 定律一”。针对有些文字语句的划分和理解有两种以上合理解释,也就是说连正常人都分不清的断句,非得交给机器来按照你想要的效果来处理,恐怕也是不合适的。
Big Bang 还可以实现将图片转成文字,当用户大面积按压一张图片时,系统会对屏幕上的显示内容进行截屏,进行适当的处理后(例如相册中,会裁掉上方和下方的工具条),交给扫描全能王进行文字识别。识别结果返回后,文字再交给三角兽智能分词引擎进行分词,最终呈现给用户。
纯色背景下的长微博几乎能全部识别,包括标点符号。标准打印字体,清晰的图书扫描的识别率也非常不错。图片转文字的正确率97%。不过,对于海报、漫画识别率会有不同程度的下降。目前尚不支持手写字体。
十年前,iPhone 的诞生让触摸屏全面取代手写笔和实体键盘,进行了人机交互的全面革新,但触摸屏无法精准定位的特性,让移动设备上的文字处理效率相比传统的键盘加鼠标而言,非常低下。
十年间,我们见证了微信、微博等互联网应用的诞生,但是移动设备上糟糕的文字处理体验却几乎没有任何提升。Big Bang 正是从这里切入,解决了手机屏幕上难于处理文字信息的弊端。
单纯提取应用内的文本,已经有友商做过类似的功能。如何方便地提取以及提取后如何方便地选取,才是大爆炸需要解决的核心问题。通过大拇指按压从而让文字“炸”出来,罗老师已经有提到过,灵感来源于他生活中的一件每个人都做过的,寻常的不能再寻常的小事 —— 蹲马桶。