专栏名称: InfoQ
有内容的技术社区媒体。
目录
51好读  ›  专栏  ›  InfoQ

锤子科技开源文字处理技术Big Bang,小创新解决大痛点?

InfoQ  · 公众号  · 科技媒体  · 2017-01-23 08:01

正文

请到「今天看啥」查看全文


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 还可以实现将图片转成文字,当用户大面积按压一张图片时,系统会对屏幕上的显示内容进行截屏,进行适当的处理后(例如相册中,会裁掉上方和下方的工具条),交给扫描全能王进行文字识别。识别结果返回后,文字再交给三角兽智能分词引擎进行分词,最终呈现给用户。







请到「今天看啥」查看全文