面向商业应用的深度学习图像字幕技术

译文
人工智能 深度学习
采用人工智能技术将图像上的像素序列转换成文字的技术如今已经不像5年前或更早以前那么原始了。更好的性能、准确性、可靠性使从社交媒体到电子商务的不同领域的图像字幕变得平滑、高效成为可能。而标签的自动创建与下载的图像相对应。

【51CTO.com快译】采用人工智能技术将图像上的像素序列转换成文字的技术如今已经不像5年前或更早以前那么原始了。更好的性能、准确性、可靠性使从社交媒体到电子商务的不同领域的图像字幕变得平滑、高效成为可能。而标签的自动创建与下载的图像相对应。

本文介绍了图像字幕技术的用例、基本结构、优缺点,此外还部署了能够为输入图像上显示的内容创建有意义的描述的模型。

作为一种视觉语言目标,图像字幕可以借助计算机视觉和自然语言处理来解决。人工智能部分采用卷积神经网络(CNN)和递归神经网络(RNN)或任何适用的模型来达到目标。

在讨论技术细节之前,先了解一下图像字幕的位置。

人工智能驱动的图像标记和描述用例

微软公司技术研究员、Azure人工智能认知服务公司首席技术官Xuedong Huang指出:“图像字幕是计算机视觉的核心功能之一,可以实现广泛的服务。”

他的这一观点是有道理的,因为图像字幕技术已经有了广泛的应用,即电子商务中的图像标签、照片共享服务和在线目录。

在这种情况下,可以根据图像自动创建标签。例如,当用户上传图像到在线目录时,可以生成图像字幕并简化用户的操作。在这种情况下,人工智能识别图像并生成属性——这些属性可以是签名、类别或描述。这项技术还可以确定物品的类型、材料、颜色、图案,以及适合网上商店销售的商品。

与此同时,图像字幕可以通过图像共享服务或任何在线目录来实现,为搜索引擎优化或分类目的自动创建有意义的图像描述。此外,图像字幕技术还允许检查图像是否符合平台的发布规则。在这里,它可以作为卷积神经网络(CNN)分类的替代,有助于增加流量和收入。

注:为视频创建描述是一个更加复杂的任务。不过,目前的技术状况已经使它成为可能。

(1)盲人自动图像标注

为了开发这样的解决方案,需要将图像转换为文本,然后再转换为语音。这是深度学习技术的两个著名应用。

微软公司开发的一款名为“Seeing AI”的应用程序可以让视力有问题的用户采用智能手机看到周围的世界。当手机摄像头对准前方事物时,其应用程序可以将图像转换成文本并给出声音提示,还可以识别打印和手写文本,也可以识别物体和人员。

谷歌公司也推出了一种可以为图像创建文本描述的工具,允许盲人或视力有问题的人理解图像或所在的场景。该机器学习工具由多个层组成。第一个模型识别图片中的文本和手写数字。然后,另一个模型识别周围世界的对象,如汽车、树木、动物等。第三层是一个高级模型,能够在完整的文本描述中找到概要描述。

(2)社交媒体的人工智能图片字幕

借助基于人工智能工具生成的图像字幕已经可用于Facebook和instagram。此外,其模型将变得更智能,学习识别新对象、动作和模式。

Facebook在近五年前创建了一个能够创建Alt文本描述的系统。现在它变得更准确了。以前使用一般的文字来描述图像,但现在这个系统可以生成详细的描述。

人工智能标识

图像字幕技术也正在与其他人工智能技术一起部署。例如,DeepLogo是一个基于TensorFlow对象检测API的神经网络。它可以识别标识。标识字的名称作为图像字幕显示。基于生成对抗神经网络(GAN)的字形合成模型的研究可以揭示生成对抗神经网络(GAN)的工作原理。

图像字幕深度学习模型研究

在此应用了一个为图像创建有意义的文本描述的模型,同时牢记可能的用例。例如,图像字幕可以描述一个动作和对象,它们是每个图像上的主要对象。对于训练模型,可以使用Microsoft COCO2014数据集。COCO数据集是大规模目标检测、分割和字幕数据集。它包含了大约150万件不同的物品,分为80个类别。每个图像都带有五个人工生成的字幕。

采用Andrej Karpathy的训练、验证和测试分割,可以将数据集划分为训练、验证和测试部分。此外,还需要像BLEU、ROUGE、METEOR、CIDEr、SPICE等参数来评估结果。

图像字幕的机器学习模型比较

在通常情况下,图像字幕的基线架构将输入编码成固定形式,并逐字解码成序列。

编码器编码的输入图像与三个颜色通道成为一个更小的打印与学习通道。这个较小的编码图像是原始图像中有用信息的摘要。对于编码,可以应用任何一个卷积神经网络(CNN)架构。此外,可以对编码器部分使用迁移学习。

解码器查看已经编码的图像并逐字生成字幕。然后,每个预测的单词被用来创建下一个单词。在继续实施之前,先看看通过模型创建和使用Meshed-Memory转换器模型进行测试得到了什么结果。

基于人工智能的图像字幕

此外还研究了导致错误的例子。出现错误通常有几个原因,最常见的错误是图像质量差和初始数据集中缺少某些元素。该模型是在一个包含一般图片的数据集上训练的,所以当它不知道内容或不能正确识别它时就会出错。这和人类大脑的工作方式是一样的。

这里有另一个例子来说明神经网络是如何运作的。例如数据集模型中没有老虎,与其相反,人工智能系统会选择它所知道的最近的物体,这和人类的大脑处理未知事物是一样的。

图像字幕的自上而下的注意力模型

自上而下的注意力模型是第一个可供比较的模型。自上而下的注意力机制结合了自下而上和自上而下的注意力机制。

Faster R-CNN用于建立目标检测和图像字幕任务之间的联系。由于利用了各行业领域知识,区域建议模型在目标检测数据集上进行了预先训练。此外,与其他一些注意力机制不同的是,这两个模型都使用了带有自上而下的注意力机制。

使用Faster R-CNN(图5A)进行图像特征提取。FasterR-CNN是一种对象检测模型,用于识别属于特定类别的对象,并使用包围框对其进行定位。Faster R-CNN检测物体分为两个阶段。

第一阶段被称为区域建议网络(RPN),用于预测对象建议。采用具有交并比(IoU)和非极大值抑制(NMS),选择顶框方案作为第二阶段的输入。

在第二阶段,使用感兴趣区域(RoI)池为每个框提议提取一个很小的特征图(例如14×14)。然后,这些特征图被批处理在一起,作为卷积神经网络(CNN)最后一层的输入。因此,最终的模型输出包括一个softmax分布在类标签上,以及每个框提议的特定于类的边界框细化。

例如上图中建议的字幕模型使用一个自上而下的注意力机制,在字幕生成过程中衡量每个特征。这是带有上下注意机制的长短期记忆网络(LSTM)。较高的层次上,字幕模型由两个LSTM层组成。

用于图像字幕的Meshed-Memory 转换器模型

另一个用来解决图像字幕任务的模型是Meshed-Memory 转换器。它由编码器和解码器部分组成,并由多个层次堆叠而成。编码器还包括前馈层,解码器具有加权的可学习机制。

图像的区域是用多级方式编码的。该模型同时考虑了低级和高级关系。所学的知识被编码为记忆向量。编码器和解码器部分的层连接在一个网状结构。解码器从每个编码层的输出中读取,并对单词进行自我注意,对整个编码层进行交叉注意,然后对结果进行调制和求和。

因此,该模型不仅可以利用图像的视觉内容,还可以利用编码器的先验知识。

两种图像字幕模型的比较

根据研究,可以比较Updown模型和M2 Transformer模型,因为它们是在相同的数据上训练的。以下两个图表提供了这两种模型的比较。

表1 评估指标

表2 推断时间和记忆

 

图像字幕:结果分析和未来展望

两种模型都显示出相当好的结果。在他们的帮助下,可以为数据集中的大多数图像生成有意义的字幕。此外,由于使用Faster-RCNN进行特征预提取,并在庞大的Visual Genome数据集上进行预训练,该模型可以识别人们日常生活中的许多对象和行为,从而正确描述它们。

有什么区别?

Updown模型比M2 Transformer更快、更轻量。原因是M2 Transformer使用了更多的技术,比如编码器和解码器之间的额外(“网格”)连接,以及用于记忆过去经验的记忆向量。此外,这些模型使用不同的注意力机制。

自上而下的注意可以一次完成,而M2 Transformer中使用的多头注意力应该并行运行几次。然而,根据获得的指标,M2 Transformer取得了更好的结果。在它的帮助下,可以生成更正确、更多样的字幕。M2 Transformer预测在描述数据集的图像和其他一些相关图像时包含较少的不准确性。因此,它能更好地完成主要任务。

本文比较了这两种模型,但也有其他方法来完成图像字幕的任务。它可以改变解码器和编码器,使用各种单词向量,合并数据集,并采用迁移学习。

可以对该模型进行改进,以实现更适合特定业务的结果,无论是作为一个应用程序,可以为有视力问题的人员或作为额外的工具嵌入电子商务平台。为了达到这个目标,模型应该在相关的数据集上进行训练。例如,对于一个能够正确描述衣服的系统来说,最好是在带有衣服的数据集上进行训练。

原文标题:Deep Learning Image Captioning Technology for Business Applications,作者:MobiDev

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

 

责任编辑:华轩 来源: 51CTO
相关推荐

2021-01-06 13:50:19

人工智能深度学习人脸识别

2021-04-07 10:13:51

人工智能深度学习

2023-02-28 08:00:00

深度学习神经网络人工智能

2021-09-28 09:34:23

深度学习神经网络人工智能

2017-04-26 13:50:26

深度学习图像超清应用

2018-03-14 08:10:44

深度学习

2021-11-03 09:00:00

深度学习自然语言机器学习

2017-06-26 09:59:14

图像分析样本过滤深度学习

2022-01-17 17:01:23

深度学习图像人工智能

2017-05-22 13:15:45

TensorFlow深度学习

2020-11-02 08:00:00

深度学习神经网络人工智能

2018-07-11 11:27:26

人工智能深度学习机器学习

2018-07-19 15:13:15

深度学习图像

2017-05-12 16:25:44

深度学习图像补全tensorflow

2024-10-08 08:19:19

2022-12-30 08:00:00

深度学习集成模型

2010-06-18 17:49:34

UML面向对象技术

2023-05-26 08:39:44

深度学习Alluxio

2021-04-01 13:53:26

深度学习大数据人工智能

2016-12-01 14:23:32

iosandroid
点赞
收藏

51CTO技术栈公众号