在当今世界,图像处理在各个领域中都扮演着至关重要的角色,从科学研究到工业应用。但其中一个特别令人兴奋的应用就是图像标注。有效的图像标注具有巨大的潜力。它能够显著提高搜索引擎的准确性,使查找相关信息变得更加容易。此外,它还可以极大地提高视障人士的可访问性,为他们提供更加沉浸式的数字内容体验。 然而,尽管图像标注前景广阔,但它也带来了几项挑战。一个主要的障碍是从图像中提取有意义的视觉信息,并将其转化为连贯的语言。这需要弥合视觉和语言领域之间的差距,这项任务需要复杂的算法和模型。 作者的项目旨在通过开发一种自动图像标注架构来应对这些挑战,该架构结合了卷积神经网络(CNN)和编码器-解码器模型的优势。CNN模型用于从图像中提取视觉特征,随后在编码器-解码器框架的帮助下生成标注。 作者还进行了性能比较,深入研究了预训练CNN模型的领域,尝试了多种架构以了解它们性能上的差异。在优化过程中,作者还探索了将频率正则化技术集成到“AlexNet”和“EfficientNetB0”模型压缩中。 作者旨在看看这个压缩模型是否能在生成图像标注的同时保持其有效性,并且更加资源高效。
1 Introduction
近年来,计算机视觉与自然语言处理的融合开辟了一个有趣的研究领域——图像字幕生成。这个领域不仅仅是关于智能思考;它像是深入探究机器如何能像人类一样看和说话。基本上,图像字幕生成是关于计算机自行用文字描述图片。这就像是赋予了它们理解和解释所看到的图像的能力。这不仅仅对一个领域很重要——它在各种领域都有大量的应用。
图像字幕生成在开发辅助技术,以满足视障人士的需求方面至关重要。通过为图像提供描述性字幕,它使得视障人士能够更全面和独立地访问数字内容[6]。在社交媒体平台上,图像字幕生成通过使视觉内容对用户更加可访问,提高了可访问性和参与度。它通过在图像旁边提供信息性描述,丰富了浏览体验,促进了更深入的理解和互动[16]。在内容审核中,图像字幕生成有助于识别和标记不适当或有害的内容。通过分析图像并生成描述性字幕,它帮助审核员识别违反社区指南或标准的内容[9]。
在医学成像中,图像字幕生成通过为医学图像提供描述性标注,发挥着关键作用。它帮助医疗专业行人解释和分析复杂的医学图像,从而更准确地诊断和治疗。在自动监控系统里,图像字幕生成通过为检测到的事件或活动提供上下文信息,提高了态势感知。它使自动系统能为监控图像生成描述性字幕,从而加快响应和决策。
图像字幕生成为视觉搜索引擎提供了动力,使它们能够理解和解释视觉内容。它通过为图像提供描述性字幕,提高了搜索结果的准确性和相关性,提升了用户体验。在机器人学中,图像字幕生成使机器人能够更有效地感知和理解其环境。它为视觉场景提供描述性标注,使机器人能够自主导航和与周围环境互动[15]。它通过为视觉材料提供描述性标注,增强了教育内容。它使教育工作者能够创建更易于访问和引人入胜的学习资源,促进理解和记忆。图像字幕生成通过为图像生成描述性字幕,实现了图像标记的自动化。它帮助组织和大批量图像的分类,提高了可搜索性和可访问性[12]。
它还使虚拟现实环境中虚拟场景和目标的描述性叙述成为可能。它通过为虚拟元素提供情境相关的描述,增强了沉浸感和互动性。此外,图像字幕生成通过为卫星或无人机图像提供描述性标注,帮助环境监测工作。它有助于分析环境变化和趋势,促进明智的决策和政策规划。由于图像字幕生成的这些应用,它吸引了研究行人相当长一段时间的关注,导致开发了众多旨在提高其性能的高级算法[14]。
在作者的工作中,作者首先利用了一个CNN模型进行特征提取。具体来说,作者为此目的采用了几种最先进的预训练CNN模型。这些模型以其从图像中提取丰富而有意义特征的能力而闻名。一旦作者获得了提取的特征,就将它们输入到一个编码器-解码器框架中生成最终的字幕。
这个框架采用CNN模型提取的视觉特征,并通过编码器处理这些信息,以生成字幕的方式编码信息。随后,解码器取这个编码后的信息,并基于它生成描述性字幕。通过将CNN的特征提取能力与编码器-解码器架构在生成字幕时的灵活性相结合,作者旨在开发一个健壮且高效的图像字幕生成系统。
2 Literature Review
本文[10]强调了图像字幕生成的重要性,以及深度学习和视觉-语言预训练技术对此领域的变革性影响。文章讨论了图像字幕生成中的各种挑战,例如目标幻觉、上下文缺失、照明条件、上下文理解和指代表达式。这篇文章[18]提出了一种利用深度神经网络生成图像字幕的模型。该模型以图像作为输入,以三种不同语言的句子、mp3音频文件和图像文件的形式生成输出。该模型结合了计算机视觉和自然语言处理技术,特别是利用卷积神经网络(CNN)和长短时记忆(LSTM)来生成字幕。该模型通过CNN将目标图像与大型训练图像数据集进行比较,然后使用LSTM来解码图像的描述。
本文的作者[1]探讨了图像字幕生成的任务,并强调了其在各种应用中的重要性,如虚拟助手、编辑工具、图像索引和支持残疾人士。作者们还谈到了使用带有长短期记忆(LSTM)单元的循环神经网络(RNN)在图像字幕生成方面取得的重大进展。尽管LSTM单元在降低梯度消失问题和记忆依赖关系方面具有优势,但它们众所周知比较复杂,这可能是其性能的潜在局限性。针对这一局限性,本文提出了一种用于图像字幕生成的卷积方法。这种方法是为了展示在以前的研究中卷积网络在机器翻译和条件图像生成方面的优势而开发的。论文[5]比较了两种在图像字幕生成方面取得最新成果的方法。第一种方法涉及使用卷积神经网络(CNN)生成一组候选词汇,然后使用最大熵(ME)语言模型将这些词汇组织成连贯的句子。
第二种方法利用CNN的倒数第二层激活作为输入到循环神经网络(RNN)来生成字幕序列。作者们首次比较了这些语言建模方法的优点,使用相同的最新CNN作为输入。他们处理了诸如语言不规则性、字幕重复和数椐集重叠等问题。本文的作者[13]提出了一种基于图像生成描述性句子的模型,弥合了计算机视觉和自然语言处理之间的鸿沟。该模型强调描述的语法,并利用纯粹的双线性模型进行训练,以学习图像表示与相应短语之间的度量。它利用卷积神经网络生成图像表示。系统可以从输入图像推理描述性短语,并利用基于字幕语法统计的语言模型来生成相关描述。尽管与现有模型相比简单得多,但该方法在Flickr 30k和Microsoft COCO等流行数据集上产生了可比较的结果。论文提出[2]了一种新颖的方法,用于使用基于注意力的编码器-解码器网络生成图像和视频等多媒体内容的文本描述。编码器-解码器架构是一种常用的神经网络框架,用于涉及序列到序列学习的任务,其中输入序列映射到输出序列。
在这篇论文中,作者通过结合注意力机制扩展了这一框架,使模型在生成输出序列时能够关注输入序列的特定部分。所提出的方法主要由两个组件组成:编码器网络和解码器网络。编码器网络处理输入的多媒体内容并产生固定长度的表示,即“编码”,捕获内容的语义信息。然后解码器网络将此编码作为输入并生成内容的文本描述。在本文[8]中,作者设计了一个系统,以类似人类的方式从图像生成简洁的描述性句子。这个过程是计算一个将图像与陈述相连接的分数。这个分数可以用来识别支持特定文本的照片,或者向现有图像添加描述性句子。文章概述了将图像映射到意义的方法,这涉及通过成对的图像和指定的意义表示判别性地学习从图像到意义的映射。它还深入探讨了为图像预测三元组的方法,重点关注目标、动作和场景分类,以及使用Tree-F1和BLUE等度量来评估将图像映射到意义的性能。
在本文[20]中,作者提出了一种基于深循环架构的生成模型来描述图像,该模型结合了计算机视觉和机器翻译。模型的关键组成部分包括一个视觉卷积神经网络(CNN)和一个生成语言的循环神经网络(RNN)。这个端到端的神经网络系统通过CNN处理输入图像以提取视觉特征,然后将这些特征输入到RNN中以生成自然语言的完整句子。这种视觉理解和语言生成的无缝集成使模型不仅能捕捉图像中的目标,还能捕捉它们之间的关系、属性和活动。
为了解决诸如过拟合的挑战,模型利用了诸如从预训练模型进行权重初始化的技术,特别是在像ImageNet这样的大型数据集上。尽管实验中使用了相对较小的训练数据集,但模型展示了有希望的结果,其准确性和流畅性从定性和定量两方面得到了验证。这个模型在Pascal数据集上的BLEU-1分数大幅领先于现有最佳模型。该模型得出的分数为59,而之前最佳模型的分数为25。
在本文中,作者首先解决了存储和计算要求的问题,特别是对于移动设备。然后提出了一种方法,不仅压缩较小的权重,而且压缩所有权重及其底层连接。通过利用频域和离散余弦变换(DCT),所提出的算法旨在实现比现有方法更高的压缩比和速度增益。频域中的卷积滤波器表示被分解为类似滤波器共享的公共部分和包含独特信息的私有部分。通过丢弃细微的频率系数,两部分都可以显著压缩。开发了一种有效的卷积计算方案,以利用DCT基特征图与频率系数之间的关系,从而进行压缩和加速的理论讨论。通过探索基于频域中压缩网络稀疏性的更便宜的卷积计算,CNNpack保持了原始网络的功能,同时实现了高压缩比。所提出的方法是一种简单且易于实现的方法。
所提出的方法主要是为了解决任意架构(如CNNs、RNNs、GNNs和Transformers)的一般结构剪枝问题。这种架构中最困难的任务是结构耦合。为了避免这个问题,作者提出了依赖图(DepGraph),以明确建模层之间的依赖关系,并为剪枝分组耦合参数。
作者证明了,使用简单的基于范数的标准,所提出的方法可以展示出良好的结果。在这篇论文[22]中,作者通过应用频率正则化,旨在限制网络参数在频域内的范围。由于该架构在张量 Level 上操作,它可以适应于最新的架构,如LeNet、Alexnet、VGG、Resnet等。
人眼主要感知低频成分,而常常忽略高频成分,这种架构就是基于这一现象构建的。拥有0.4M参数的LeNet5可以通过仅776个float16数字来表示。由于神经网络学习的特征与训练图像密切相关,预计它们会反映出同样的趋势,即高频成分的重要性较低。然而,关键参数的微小变化可能会降低网络的性能。因此,作者专注于在训练过程中使用频域变换作为网络调节器。
尽管频率正则化被用来防止过拟合,但本文扩展了其用例以限制非零参数的数量。网络的参数张量在频率域中维护,而不是在空间域中,这有助于通过Z字型 Mask 矩阵截断张量的尾部元素。频率张量再次被送入逆离散余弦变换(IDCT)以重建空间张量。然后使用重建的空间张量进行训练。由于剩余的参数可能没有适合反向传播的合适梯度,作者提出了一个动态尾截断策略。在这里,随着截断参数的总数增加,每个训练周期截断的参数数量减少。
3 Proposed Methodology
在作者的方法中,首先将图像数据通过一个预训练的CNN模型来提取特征。这些特征捕捉了关于图像的重要信息。接下来,作者将这些特征输入到一个 Transformer 编码器模型中。这个编码器模型将这些特征转换成一个新的表示,帮助模型更好地理解图像。然后,作者将这个新表示与真实标题结合起来,并输入到一个解码器模型中。这个解码器模型根据组合信息预测最终的输出标题。
数据集
作者的项目使用了2014年的COCO训练/验证数据集[3]。原始数据集中共有82,783张训练图像和40,504张验证图像。在作者的工作中,首先处理了数据,使其适合作者的目的。以下是数据集的一些样本。
Dataset Preprocessing
图3:带标题的数据样本
图2:数据样本
初始数据集包含82,783张训练图像和40,504张验证图像,每张图像带有1到6个标题。为了简化数据集,作者进行了预处理,只保留恰好有5个标题的图像。这个预处理步骤确保了模型使用每张图像的5个一致标题进行训练。经过此筛选过程后,修订后的数据集包含68,363张训练图像,31,432张验证图像和2000张测试图像。为了训练、验证和测试,作者还准备了三个不同的_json_文件。json文件包含图像路径及其相应的标题。以下是作者准备文件的格式:
"path_to_image1.jpg": ["caption1", "caption2", "caption3", "caption4", "caption5"], "path_to_image2.jpg": ["caption1", "caption2", "caption3", "caption4", "caption5"]。
训练
作者训练过程的第一步是特征提取,由一些最先进的预训练CNN模型执行。作者使用了四种不同的模型,“EfficientNetB0”、“EfficientNetB1”、“ResNet50”和“MobileNetV2”,它们在“imagenet”数据集上进行了预训练。首先,作者通过_keras_库导入预训练权重。特征提取层被冻结,因此它们不会被训练。这样做是为了保留原始权重,并在作者的数据集上执行特征提取。
为了使学习更加泛化,作者执行了数据增强。作者在训练过程中使用了以下数据增强参数。
算法1 数据增强
数据被放置在启动训练过程的必要文件夹中。设置了不同的训练参数,如“IMAGE_SIZE = (299, 299), MAX_VOCAB_SIZE = 2000000, SEQ_LENGTH = 25, EMBED_DIM = 512, NUM_HEADS = 6, FF_DIM = 1024, SHUF-FLE_DIM = 256, BATCH_SIZE = 16, EPOCHS = 14, NUM_TRAIN_IMG = 68363, NUM_VALID_IMG = 31432, TRAIN_SET_AUG = True, VALID_SET_AUG = False, TEST_SET = True”。
Performance Evaluation
以下是所有使用不同CNN预训练权重的模型的比较表。在执行预测时,作者使用了两种不同的方法。首先,如果将图像路径作为参数传递,则训练有素的模型将仅对该图像执行预测,并在控制台生成输出。其次,如果没有传递路径,则模型将对测试.json文件中的每个图像执行预测,这是作者的测试数据集。每个预测以及相应的图像将被存储在一个新的prediction.json文件中。这两个json文件稍后用于计算其他评估指标。至于评估指标,作者使用了三种不同的指标。在test.json文件中,每个图像都有5个相应的基本真值(ground truth)标题。在计算指标值时,预测输出与所有5个标题进行评估,并取平均值作为最终值。对于BLEU,使用了4种不同的度量,分别称为BLEU-1、2、3和4。这些表示实际输出和预测输出之间连续1、2、3和4个词的相似度百分比。对于ROUGE度量也是如此。至于METEOR,它只是一个计算出的单一值。
模型分别使用每种预训练权重训练了14个周期。以下是模型之间准确性的比较。
这是作者工作中使用的三种图像标题评估指标:
表1:模型性能比较
图4:模型准确度比较
- BLEU(双语评估研究):BLEU是一种基于精度的度量,通过计算生成标题和参考标题之间的重叠n-gram(连续的n个词序列)的数量来衡量它们之间的相似性。BLEU的范围从0到1,分数越高表示相似度越好。它通过评估生成标题与人工生成的参考标题的相似性,为生成标题的质量提供了一种量化度量[19]。在作者的工作中,作者计算了BLEU-1、2、3和4的值,并从中取平均值。以下是平均值的比较。
- ROUGE(面向摘要评估的召回研究):ROUGE是一种基于召回的度量,它通过使用各种措施(如n-gram重叠、最长公共子序列和基于词的召回)来衡量生成标题和参考标题之间的重叠。它通过关注召回而非精度来补充BLEU[19]。在作者的工作中,作者计算了ROUGE-1、2和L的值,并从中取平均值。以下是平均值的比较。
- METEOR(具有显式排序的翻译评估度量):METEOR不仅考虑确切的单词匹配,还通过使用精度、召回和基于对齐的度量的组合来考虑同义词、词干词和其他语言变体。METEOR的分数范围从0到1,分数越高表示生成标题的质量越好。它捕捉了语义相似性,并考虑了表达同一想法的不同方式,使其适用于评估生成标题的自然性和流畅性[19]。
图5:平均BLEU得分比较
总之,作者的项目旨在利用图像标题的潜力来解决现实世界中的挑战并提升跨领域用户体验。通过精心设计的实验和与预训练CNN模型的性能比较,作者深入了解到了不同架构的细微差别,为优化策略铺平了道路。作者探索了集成频率正则化技术以压缩广泛使用的CNN模型(如“AlexNet”和“EfficientNetB0”)的途径,这证明了作者在不牺牲生成图像标题的有效性的同时,对资源效率的承诺。
作者的工作表明,CNN模型在特征提取方面的关键作用,结合编码器-解码器框架进行标题生成。这种协同作用使作者能够开发出一种健壮且高效的图像标题系统,能够为多样化的视觉内容生成描述性标题。展望未来,有几个未来研究和改进的方向。一个方向涉及探索特征提取和模型架构的先进技术,以进一步提高生成标题的质量和多样性。此外,整合多模态方法,如结合音频或文本信息,可以丰富对图像的情境理解并提高标题生成的准确性。
参考
[1].Compressed Image Captioning using CNN-based.