当我们还在为语音识别的普及欢呼雀跃的时候,图像识别像暗夜里的蔓藤,正悄悄地在伸展自己的身体。
上周Facebook告诉我们它们正在开发的功能已经能让盲人”看到“图片的时候,晒图狂们突然发现,哇,原来图像识别已经离我们的生活如此之近,以至于盲人伯伯们也能用听的方式get到你此时正在三里屯撩妹的信息巴拉巴拉……但在毫无标签的情况下识别也太那个了,是不是用了什么非常手段?是不是欺负咱们不懂科学?
当然!黑科技只能用黑科技的办法解决。
雷锋网先带各位来回顾一下Facebook发布的这款黑科技————能对图片上的内容进行自动描述,从而让盲人或视觉障碍患者“看到”图片。该工具可对照片进行自动文本处理,从而让用户听到照片上的内容描述,如“有三个人,面带微笑,站在户外”等。
借助VPN翻墙到iPhone版Facebook后,发现iPhone自带的voiceover功能对于本来有文字描述的东西都能读出来,这跟Facebook本身图片识别的功能牛不牛掰并无关系,真正牛掰的是它对没有任何标签图片里物体的识别能力。
实际体验的效果,雷锋网按下Voiceover后暂时听到还只是“two people in the story,actions is available” 这样的效果,试了其它图片(中国长城风景图,非洲沙漠和人图片,一堆人聚餐图片),得到的反馈跟这个差别不大,目前还没听到特别连贯的描述。(莫非因为俺是翻墙用户,所以体验不纯正?强烈期待中国版上线!)
但就Facebook自己允诺的目标——————能让用户听到照片上的内容描述,如“有三个人,面带微笑,站在户外”等。图普科技海洋直言:这种难度蛮大的,主要在于准确率方面,对于单一标签的图片(仅识别人物或者物体)可以把识别准确率训练得很高,但对于组合来说,很难保证超高的识别准去率。
2014年9月的时候Google的图片识别技术还是遥遥领先的,当时媒体给的标题也是《技高一筹?最新的Google图片识别技术能够“认出”大部分物品》
在那年的ImageNet图像识别比赛里面,隶属于Google的GoogLeNet团队刷新了“分类和侦测”记录,挑战主要遵循三个步骤:分类、分类并锁定以及侦测,当时其精度比前年的记录提升了两倍。当时从谷歌发布的照片中我们可以看出,目前这项技术可以识别出我们常见的物体,比如宠物猫、鸡蛋、香蕉、橘子、电视机、显示器、书架等。
然后到了2015年12月的时候,媒体给的标题是 《ImageNet图像识别大赛 微软打败谷歌获多项第一》,也就是说当年这个名誉易主给微软了。
当时ImageNet图像识别大赛要求选手所设计的图像系统能准确定位来自Flickr和搜索引擎的10万张图片,并把图片划分入1000个物体分类中(狼蛛、iPod、清真寺、玩具店、调制解调器等),错误率越低越好。微软参赛系统的分类错误率为3.5%,定位错误率为9%。在整个比赛中,微软打败谷歌获多项第一。
可谁也没有想到,使用了这项功能后让大家觉得最“黑科技”的却是坐拥14亿个用户社交图片网站的Facebook。实话说,要比图片库Facebook不一定比Google多,但是用户对单张图片信息量的关注度,在Facebook上一定比Google强,就好比我们每天会去刷大量朋友圈看好友的点点滴滴,但不会没事就往搜索引擎里传图片……而现在,盲人们也能天天刷Facebook“看”好友的点点滴滴,让我们一下子就get到这个点的牛掰之处了。
体验过一把FB后雷锋网发现,Facebook这个功能实际上是跟iPhone自带的voiceover功能一起使用的,voiceover功能能辨别出所有的text文字然后念出来,所以它这项技术的核心实际上是对毫无标签图片的辨别能力。
对于毫无标签图片的鉴别能力,根据Facebook自己的解释,主要通过3个路径解决:
自动可替代文本。(以往,Facebook会统一把用户上传的图片的可替代文本设置为“XXX的照片”,但现在它会基于人工智能,自动根据照片内容进行替换,因此被称为自动可替换文本。)
运用深度学习(图片识别引擎的核心是一个包含数百万个可学习的参数的深度卷积神经网络,Facebook的计算机视觉平台能够非常简单地收集并分析上百万张照片,并在监督下学习进步。)
进一步组织语句。(在进行了多次实验室研究后,他们决定把图片中的内容分为3个类别:人、物体和场景,在描述图片时,也会按照这样的次序。)
曾在阿里负责图像识别和搜索产品的赵京雷,现readface创始人表示:
“从视觉识别的角度,深度学习出现以后,它的难点主要在大规模可用训练数据和算法上。
从数据层面上来讲,要“教会”计算机去识别、描述一个图片的内容,一方面要识别图片中出现了什么样的物品,另一方面要描述这些物品中的关联。
比如对于‘一个人坐在湖边钓鱼’这样的图片,要描述出来,最基本的要识别出:人、湖和钓鱼竿;识别出物品之后还要能够确定三者之间的关系。
世界上形形色色的物品种类繁多,构建可靠的标注数据集,使得针对每类物品都有足够的标注样本,去指导学习算法习得物品种类概念,本身工作量巨大。而同类的物品之间,又存在不同可能的关系。要对这些可能的关系,构建足够的样本数据,工作量会更大。
在计算机视觉的学术界,(我记得)斯坦福前些年推出“ImageNet”,人工对百万图片标注里面出现的物品种类,ImageNet在过去几年推动了对照片中通用物品识别技术的发展。而为了进一步确定不同物品的关系,斯坦福去年推出新的数据集“Visual Genome ”,致力于在ImageNet的基础上,刻画出物品的关系。Genome数据集针对一副图片,把结构化的图像概念和语言联系起来。
从机器学习的角度出发,这些人工标注的数据奠定了对图片进行文本描述的基础。当然,在这个基础之上,怎样实现更加精准的识别,就取决于底层的很多算法和数据处理手段了。如果想做到工业级应用,针对大规模通用物品的识别,算法的精度和效率等很多方面都是非常具有挑战的。
这次Facebook推出的产品,(我推测)在很大程度上可能使用了自己的类似“Genome”的数据库,然后利用机器学习技术习得图片中的物品与其可能的关系。”
随后,雷锋网将这张图片(来源于雷锋网对电影的手动截图,都是第一次,没有标注相关标签上传到 Facebook账号和百度图片平台上的)传到百度图片的检测库,暂时给出的“暂无猜词”,只是给出了相似图片推荐。
而当雷锋网把这张图片上传到搜狗图片的检测库,显示的是“婚礼,女孩”,然后给出了相似图片推荐,
虽然不一定能说明决定性的问题,但从这两个国内国内平台对图片的小测试看,要说出在哪个场景,有什么物体和人一定关系的语句,就目前的图片识别技术还是挺有难度的。
图普科技的海洋告诉雷锋网,目前这个难度蛮大的。
主要是准确率方面。对于单一标签的图片(仅识别人物或者仅识别物体)可以把识别准确率训练得很高,对于这种组合起来的,很难保证识别准确的。
我们自己就有个通用物体识别的接口,可以识别超过两万种物体。但是你会发现我们识别出来以后一般都会按照相关度给几个建议的。相关度越高机器越确定。
我们本身也有场景识别和人物类别识别,单一的接口识别准确率都很高。组合起来就可以进行简单语义分析了,比如在教室里有三个年轻女人……但是再加上物体,加上动作去分析那个人在干嘛,这个挺难的。比如超市前站着一个老年人在吃面包,这个目前很难描述出来啊。我也感兴趣脸书是怎样做的,到了什么程度……
对于Facebook宣称的可以对特定种类物体目前做到较高的识别率,商汤科技的杨帆则告诉雷锋网,如果除掉voiceover这个向苹果“借用”的功能,Facebook这次黑科技的核心只是对没有任何标签的图片里物体进行识别
那这是属于一般性物体检测,主要依靠高维信息特征识别,国际权威竞赛Imagenet中有几项分竞赛就是比这个,但Facebook这项黑科技那么多人关注,可综合识别率并不是很高,但可能某些类可以做的比较高而已。
那么说在国内也能实现?
(理论上可以)但不付出时间,没有那么简单。
对于这一点,Facebook也没有跟我们装逼,Facebook自己也承认“为了保证可靠,Facebook还是花了10个月的时间,经过反复测试,才上线了自动可替换文本功能。目前,Facebook的识别引擎能保证至少80%的准确率。”
按上面的逻辑,如果国内公司想做的话,同样花上个10个月再加上深度学习的助力,应该也能做成,毕竟大家都是有点底子的。比如悄悄一查,你会发现百度图片,搜狗图片都有类似的图片识别的功能,一些非搜索引擎公司的第三方团队也有类似的图片识别功能,包括sensetime,image++,美图,腾讯优图等。
但有个问题, 这项技术的意义远不在于帮盲人看见图片。
一个很简单的逻辑,我们身边的盲人很少有会用手机上网的,会用手机上微信的就更少了,Facebook这次用帮忙人看见点来宣传黑科技,只是让读者一目了然地感受到这个技术牛掰的精髓,若放到实际应用中,搜索引擎用它来识别小黄图的上传,社交网站用它来识别罪犯的踪迹,好友的生活足迹,进一步去推断出一些蛛丝马迹的东西,比帮盲人“看见”的作用要更广泛和厉害。