受到华为AI竞赛的启发,调研了一下近期的AI移动端应用,发现已经出现了以下有趣的应用
1、smart reply(智能回复)
模型能够在输入会话聊天信息时生成回复建议,通过有效的推理,可以很容易地插入到聊天应用程序中,从而为设备上会话智能提供动力。由谷歌发布的一个基于TensorFlow Lite驱动的自然语言应用程序的示例。
2、文档检测校正
模型实现对文档翻拍过程的辅助增强功能,自动识别图片中的文档,返回文档在原图中的位置信息。根据文档在原始图片中的位置信息校正文档的拍摄角度,自动将拍摄视角调整到正对文档的角度上。此功能在纸质旧照片、信件、画作等翻拍为电子版的场景中,有出色表现。
3、文档识别(有道云笔记技术)
模型在用户拍摄的照片中,识别出文档所在的区域,进行拉伸 (比例还原),识别出其中的文字,最终得到一张干净的图片或是一篇带有格式的文字版笔记。具体涉及:
1)识别文档区域: 将文档从背景中找出来,确定文档的四个角;
2)拉伸文档区域,还原宽高比: 根据文档四个角的坐标,根据透视原理,计算出文档原始宽高比,并将文档区域拉伸还原成矩形;
3)色彩增强: 根据文档的类型,选择不同的色彩增强方法,将文档图片的色彩变得干净清洁;
4)布局识别: 理解文档图片的布局,找出文档的文字部分;
5)OCR: 将图片形式的“文字”识别成可编码的文字;
6)生成笔记: 根据文档图片的布局,从 OCR 的结果中生成带有格式的笔记。
参考:https://mp.weixin.qq.com/s?__biz=MzIxMDg0NTgwNA==&mid=2247483651&idx=1&sn=c3d4c5a8fb3e173ef1d433f665bdac35&chksm=975f2800a028a116b88b7a72199ecbfce63375dbb90746a34e153ff399c2c47769b2f00a4722&scene=21&pass_ticket=fhdTLb3VGiB9e2giJGM5NZ6xLcGmGxJQMrpGVZOEGw6cn56iMjsEm1X3DdOWkYLs#wechat_redirect
4、助手类意图识别
人机交互越来越普遍,需要理解用户给手机下达的各种指令,便捷用户的操作。
助手类意图识别是指利用机器学习技术对用户发送给设备的文本消息进行意图分析和识别。基于语义分析,利用机器学习相关的技术识别并理解用户消息的意图,通过助手类意图识别功能,可以衍生出各种智能的应用场景,使智能设备更智能,智慧。
5、文字图像超分
文字超分辨率模型可以对包含文字内容的图像进行9倍放大(高宽各放大3倍),同时显著增强图像中文字的清晰度。
在文字档案翻拍等场景中,针对文字内容的图像清晰度提升显著,极大提升文字的可辨识性。目前该算法基于深度神经网络开发,可以利用华为手机的NPU芯片,对神经网络进行加速,加速比能达到10倍以上。
6、实体识别
实体识别技术能够从自然语言中提取出具有特定意义的实体,例如找出给定文本中的人物、地点、时间等,并在此基础上完成搜索等一系列相关操作及功能。
7、语言建模和文档摘要
语言模型学习词与词之间的概率关系,这样以来,新的词的序列可以生成与源文本统计学上一致的文本内容。单独地,语言模型可用于文本或语音生成;例如:
• 生成新的文章标题。
• 生成新的句子,段落,或文件。
• 生成一个句子的建议延续的句子。
文档摘要是对创建的文本文档进行简短描述的任务。可以认为是语言模型用于基于完整文档的摘要输出。
一些文档摘要的例子:
• 为一篇文档创建一个标题。
• 为一篇文档创建一个摘要。
关于这个话题可参考:
• 维基百科上的自动摘要。
• 深度学习已经被应用于自动文本摘要(成功)了吗?
• Paper:https://arxiv.org/abs/1705.04304
关于文档摘要深度学习的3个例子:
• 新闻文章中的句子摘要
一个抽象概括的神经注意力模型
• 新闻文章中的句子摘要
使用片段到片段RNN(循环神经网络)的抽象总结及更多
• 新闻文章中的句子摘要
通过提取句子和单词的神经摘要
8、语种检测
如何精确地识别短文本(140个字符)的语言。这个问题目前由各种软件库解决,但是使用了一组硬编码的规则和查找表。可以使用深度学习算法来解决这个问题。
Paper:Deep Learning: Language identification using Keras & TensorFlow
9、IM类意图识别
IM类意图识别是指利用机器学习技术对用户短信或聊天类APP(微信、QQ等)的文本消息进行意图分析和识别。基于语义分析,可以利用机器学习相关的技术识别并理解用户消息的意图,通过IM类意识识别,可以衍生出各种智能的应用场景,使智能设备更智能,智慧。
IM类意识识别API提供了一个智能识别用户短信或聊天类APP的文本消息的意图的接口,通过该API可以对文本消息的意图进行自动分析识别。
10、图片分类
基于深度学习方法,识别图片中物体、场景、行为等信息,返回对应标签信息,如:花、鸟、鱼、虫、汽车、建筑等等。模型可以应用于各类基于图片内容理解的智能业务,如图库照片自动分类整理、社交图片识别分享等。
通过识别图像内容所属场景,对输入图片进行快速分类,目前可支持多类场景识别。
识别场景涵盖丰富,包括动物、绿植、食物、建筑、汽车等多种类别,识别准确率高。
通过场景识别,为图片添加智能分类标签,可广泛应用于创建智能相册、图片分类管理等功能中。
11、照片描述
深度学习还可以对照片中的各种元素进行描述,训练深度学习模型识别照片中不同区域内元素,并用一句话来描述照片。
Demo:http://cs.stanford.edu/people/karpathy/deepimagesent/generationdemo/
Paper:http://www.cv-foundation.org/openaccess/content_cvpr_2015/papers/Karpathy_ Deep_Visual-Semantic_Alignments_2015_CVPR_paper.pdf
另外,基于图片描述,可以进一步地用图片讲故事,例如下图,机器给出的故事如下。
I had a train over the bridge and at the same time , it hurt so much . But it did n’t take long for me to understand what he was saying . In fact , it was as if he were walking away from her , looking out over the bridge and into the river below . I had no idea how many times I tried to convince her to be my anchor , but that made me feel better . His face was a mask of pure steel , the bridge of his mouth . His entire body shuddered with relief. Sometimes, I d have to follow the bridge that led up on a ship and once more
参考:https://blog.csdn.net/yangdelong/article/details/77727278
类似的,还可以对视频做添加描述,或配以字幕,参考:片段到片段—视频到文本
12、图像语义分隔
对拍照图像进行像素级的识别和分割,从而获得图像中物体的类别信息以及精确位置信息。以上内容作为图像语义理解的基本信息,可用于进行后续的多种图像增强处理。华为HIAI目前支持3类物体的识别和分割:人、天空、绿植(包括草地、树)。
语义分割:指对图像中物体进行像素级的分割,每个像素都标明属于哪类物体;对不属于所支持的多类物体的部分,则标为“背景”。
13、AI画图
往电脑中输入一幅简笔画,甚至一些色块,然后让电脑发挥自己的创造力输出新的图片。类似地,你也可以把衣服航拍照片变成一幅地图,将白天的场景变成夜晚。
Paper:https://arxiv.org/pdf/1611.07004v1.pdf
Code:https://github.com/phillipi/pix2pix
14、视频内容定位
深度学习模型可以读出视频中的文字,然后支持用户通过文字搜索视频图像中包含这些文字的视频,例如,搜索“London”:
Demo:http://www.robots.ox.ac.uk/~vgg/research/text/#sec-demo
Paper:http://arxiv.org/abs/1412.1842
15、反复攻破和修补自己的防火墙
Google大脑的研究团队创建了两个深度学习网络用于安全工具开发,他们让其中一个不断创造自己的加密算法,然后让另一个网络去尽力攻破它。在两套系统的反复缠斗后,第一个系统已经能生成非常优秀的安全加密算法。
然而,第二套算法也总是表现得比它更好……
Paper:https://arxiv.org/pdf/1610.06918v1.pdf
16、kika输入法
移动端的解决方案如 TensorFlow Mobile、TensorFlow Lite 等在一定程度上并不完善(TF Mobile 的内存管理与 TF Lite 的 Operators 的缺失),在实践中可能需要更多的修正与完善。
kika输入法成功地将基于循环神经网络的深度学习模型应用到安卓版的手机输入法引擎中,在克服工程化问题的情况下大大提升了输入体验:不仅使基于上下文的词预测更加准确,同时还使得词纠错功能更加强大。
可以参考这个案例中Android 移动端轻量化部署所遇到的工程化挑战极其解决方法,为后期实践做准备。
算法和实践原文参考:https://baijiahao.baidu.com/s?id=1598247649132552549&wfr=spider&for=pc