随着announcement宣布将用于图像识别的TensorFlow模型,以及对新老方法的精确度和性能进行比较评测的测试方法开源,谷歌Google在过去几年中迈上了一段全新的旅程。2014年的Inception V1,2015年的Inception V2,以及最新发布的Inception V3模型逐渐完善,分别以89.6%、91.8%,以及93.9%准确度的成绩位居ImageNet 2012图像分类测试的前五名。在使用BLEU-4指标衡量机器生成的注解的测试中,通过将一种自然语言的语句翻译成另一种语言并对准确度进行比较,基于TensorFlow的方法相比原本最先进的DistBelief模型也取得了领先两分的成绩。
\\在从原有实现中移植模型,并对其进行完善的过程中,最重要的问题之一在于对图像中的对象进行分类,以及对对象进行描述并将一张图像中的对象与另一张图像中的对象进行关联。为了解决这一问题,该模型在分类操作之外增加了一个微调操作,可以让模型提取用于描述对象细节的有用信息。通过将图像分类操作拆分为多个步骤,首先识别其他操作中确定的对象,并增加形容和预处理操作,并为要处理的注解提供必要的结构,使其在语句结构上更为准确,更类人。
\\该模型有一个范例:识别铁轨上的火车图像,随后识别火车为黄色夹杂着蓝色。最终合成的结果识别为:黄蓝相间的火车正行驶在铁轨上。虽然在本例中模型能否确定静态图片中对象是运动中的或静止的并不重要,但所输入图像的注解在训练数据中将类似图像中的对象描述为运动中的或静止的,这很重要。
\\该模型可将之前学习到的图像注解中的不同元素组合在一起,针对更多图像创建全新的注解,新的图像中可以包含多个已分类对象,但所有对象并未包含在同一个训练数据集中。在这个范例中,该模型自行创建出一个之前并不存在的注解。
\\在对原有模型的实现与新的模型进行性能评测对比发现,在通过Nvidia K20 GPU运行DistBelief以及全新的基于TensorFlow的Inception V3进行的性能对比中,TensorFlow的训练时间(0.7秒)仅为DistBelief(3.0秒)的25%。除了基于TensorFlow的Inception V3图像分类模型,谷歌还提到了即将发布的Inception-ResNet-v2模型,但并未谈到有关该模型的性能评测信息。虽然未使用训练数据集,但他们会通过人工生成的图像注解作为最基础的训练数。
\\查看英文原文:Google Machine Learning Models for Image Captioning Ported to TensorFlow and Open-Sourced