IT之家(www.ithome.com):搜图绝技:谷歌能“认出”照片上的东西
如果你突然想在自己保存的无数照片里找到其中的某一张,一般情况下会怎么做?你可能知道这张照片大概是什么样子,照片中有什么元素,但就是想不起来放到哪个文件夹里了。而且要是照片数量太多的话,想找到那张图恐怕真得费一会儿功夫。
要是能通过搜索照片中某个元素的关键词来找到它就好了。
实际上从去年开始,像Google+ Photos的搜索中就已经开始使用这种简单的物体识别技术了,后来Google Drive的搜索引擎也引入了类似的功能。通过Google的一种自动注解技术,用户可以通过照片中某些元素的单词描述来搜索到对应的图片。
虽然像人脸识别这样的图像识别技术已经有了很多应用,但要识别出自然界中各种各样的物体就比人脸识别困难多了,尤其是当这些物体都还在一张图片中。在今年的ImageNet大规模视觉识别挑战赛中,Google的一支团队就使用了与之相关的技术,借此我们也可以看看一些与之相关的细节。具体来说,一张图片中往往存在好几种物体,参赛者借助一些技术则可以在同一张图片中识别出不同物体的类型,比如一张果盘图片里放着的几个橘子和香蕉、一个房间图片里的电视和猫咪,等等。在这些照片中,Google可以通过技术手段识别出图像中的物体,并让用户可以搜索它们。
也许你会好奇Google是如何做到的,其实想让用户可以搜索到,你当然需要标记这些物体,但在标记它们之前,你还需要让机器知道这是什么才可以标记。为了让机器知道图片中的物体是什么,Google甚至专门开发的一个名为DistBelief的基础框架。利用它,Google可以调用成千上万的计算机集群,使用数十亿的参量来做大规模的深度神经网络训练,进而也就能比对大量图片中的相似物体,为它们打上标签。如果这个系统再接受到相似物体的图像信息,系统就会检测到它与此前被打上标签的那些物体是相似的。在分布式计算和快速迭代的机制下,Google可以把训练深度网络的规模提升到以前学术报道中理论值的30倍以上,这就让它可以主动“认识”某个物体——就像人脑识别某个物体那样工作。在这种“主动学习”的基础上,就可以达到输入一个关键词、机器就能识别出图像中物体的目的。