如何进行图像识别 图像识别算法有哪些

人类会关注图中对象的形状,深度学习计算机系统所用的算法不一样,它会研究对象的纹理 。

如何进行图像识别 图像识别算法有哪些

文章插图
文章插图
如何进行图像识别 图像识别算法有哪些

文章插图
文章插图
图片中的动物轮廓是猫,但是猫披着大象皮肤纹理,将图片交给人识别,人会说是猫,如果给计算机视觉算法处理,它会说是大象 。德国研究人员认为:人看的是形状,计算机看的是纹理 。
这一发现相当有趣,但它证明计算机算法离人类视觉还有很远距离 。
如何进行图像识别 图像识别算法有哪些

文章插图
文章插图
如何进行图像识别 图像识别算法有哪些

文章插图
文章插图
当你看着一张猫的照片,轻松就能知道猫有没有条纹,不管照片是黑白照,有斑点,还是磨损或者褪色了,都能轻松识别 。不论宠物蜷缩在枕头背后;或者跳到工作台上,拍照时留下一片朦胧,你都能轻松识别 。如果用机器视觉系统(用深度神经网络驱动)识别,准确率甚至比人还要高,但是当图片稍微新奇一点,或者有噪点、条纹,机器视觉系统就会犯傻了 。
为什么会这样呢?
德国研究团队给出一个原因,这个原因出乎意料:人类会关注图中对象的形状,深度学习计算机系统所用的算法不一样,它会研究对象的纹理 。
德国的发现告诉我们人类与机器“思考”问题时有着明显区别,也许还能揭示人类视觉进化的秘密 。
 
有大象皮肤的猫和时钟做的飞机深度学习算法是怎样“工作”的呢?
首先人类向算法展示大量图片,有的图片有猫,有的没有 。算法从图片中找到“特定模式”,然后用模式来做出判断,看看面对之前从未见过的图片应该贴怎样的标签 。
神经网络架构是根据人类视觉系统开发的,网络各层连接在一起,从图片中提取抽象特点 。神经网络系统通过一系列联系得出正确答案,不过整个处理过程十分神秘,人类往往只能在事实形成之后再解释这个神秘的过程 。
美国俄勒冈州立大学计算机科学家Thomas Dietterich说:“我们正在努力,想搞清到底是什么让深度学习计算机视觉算法走向成功,又是什么让它变得脆弱 。”
怎样做?研究人员修改图片,欺骗神经网络,看看会发生什么事 。研究人员发现,即使只是小小的修改,系统也会给出完全错误的答案,当修改幅度很大时,系统甚至无法给图片贴标签 。还有一些研究人员追溯网络,查看单个神经元会对图像做出怎样的反应,理解系统学到了什么 。
德国图宾根大学(University of Tübingen)科学家Geirhos领导的团队采用独特方法进行研究 。去年,团队发表报告称,他们用特殊噪点干扰图像,给图像降级,然后用图像训练神经网络,研究发现,如果将新图像交给系统处理,这些图像被人扭曲过(相同的扭曲),在识别扭曲图像时,系统的表现比人好 。不过如果图像扭曲的方式稍有不同,神经网络就无能为力了,即使在人眼看来图像的扭曲方式并无不同,算法也会犯错 。
如何进行图像识别 图像识别算法有哪些

文章插图
文章插图
如何进行图像识别 图像识别算法有哪些

文章插图
文章插图
对于这样的结果如何解释?
研究人员深入思考:到底是什么发生了变化,即使只是加入很少的噪点,也会发生如此大的变化?
答案是纹理 。当你在很长的时间段内添加许多噪点,图中对象的形状基本不会受到影响;不过即使只是添加少量噪点,局部位置的架构也会快速扭曲 。研究人员想出一个妙招,对人类、深度学习系统处理图片的方式进行测试 。