Image Captioning概述
目录
- 任务描述
- 应用领域
- 主要问题
- 主流框架
- 常用数据集
- Metrics
Metrics的部分内容参考自知乎
任务描述
- 输入:图片III
- 输出:由 nnn个单词组成的图片内容描述S={s1,...,sn}S=\{ s_1,...,s_n \}S={s1,...,sn}
应用领域
- 图文互搜
- (细粒度)图像检索
- 对视觉障碍者进行辅助
主要问题
dataset bias
已有方法:将cnn特征分解为object、attributes、relation、function等
参考文献:[1] ICCV 2019 Learning to Collocate Neural Modules for Image Captioninglong tail
long tail本身也算作dataset bias的一种,在很多task中普遍存在。单独列出来的原因是,有的方法专门针对long tail问题进行优化。
已有方法:按频率多阶段训练
参考文献:[1] CVPR 2020 Learning to Segment the Tail数据集标注昂贵
已有方法:无监督
参考文献:[1] CVPR 2019 Unsupervised Image Captioning
[2] ICCV 2019 Unpaired Image Captioning via Scene Graph Alignments模型的recall低、多样性低
已有方法:改进损失函数、可控的Captioning
参考文献:[1] CVPR 2020 Say As You Wish: Fine-grained Control of Image Caption Generation with Abstract Scene Graphs
[2] CVPR 2020 Better Captioning with Sequence-Level Exploration
[3] CVPR 2019 Intention Oriented Image Captions with Guiding Objects
[4] CVPR 2019 Show, Control and Tell: A Framework for Generating Controllable and Grounded Captions
[5] CVPR 2019 Fast, Diverse and Accurate Image Captioning Guided By Part-of-Speech
[6] CVPR 2016 DenseCap: Fully Convolutional Localization Networks for Dense Captioning生成的结果不够human-like
已有方法:使用贡献字典引入先验知识
参考文献:[1] CVPR 2019 Auto-Encoding Scene Graphs for Image Captioning长序列建模问题
已有方法:探索单词之间的连贯性
参考文献:[1] CVPR 2019 Reflective Decoding Network for Image Captioning提升grounding能力
已有方法:知识蒸馏+强化学习
参考文献:[1] CVPR 2019 More Grounded Image Captioning by Distilling Image-Text Matching Model网络结构优化
已有方法:对self attention进行改进
参考文献:[1] CVPR 2020 Normalized and Geometry-Aware Self-Attention Network
for Image Captioning
主流框架
- encoder + decoder结构,对图片的regions信息进行编码,建立不同objects之间的关系后,使用decoder解码,生成sentence。encoder部分常使用CNN,decoder部分为RNNs,后由于Transformer的兴起,RNN被替换为了SANs(Self Attention Networks)。
常用数据集
- Flickr30k Entities
下载链接
论文原文 - MS-COCO Karpathy
下载链接
论文原文
Metrics
BLEU-n(Bilingual Evaluation Understudy,双语评估辅助工具):比较候选译文和参考译文里的 n-gram 的重合程度,重合程度越高就认为译文质量越高。把sentence划分成长度为n个单词的短语,统计它们在标准译文中的出现次数,除以划分总数。
(mBleu-4, best-k):对于一个image,选择生成的最好的k个captions,对于每个caption,计算其与其他k-1个captions的BLEU-4值,再取平均。值越低,多样性越高。
METEOR(Metric for Evaluation of Translation with Explicit ORdering,显式排序的翻译评估指标):计算生成结果和参考译文之间的准确率和召回率的调和平均。
ROUGE(Recall-Oriented Understudy for Gisting Evaluation,面向召回率的摘要评估辅助工具):大致分为四种:ROUGE-N,ROUGE-L,ROUGE-W,ROUGE-S。常用的是前两种(-N与-L)。ROUGE-N中的“N”指的是N-gram,其计算方式与BLEU类似,只是BLEU基于精确率,而ROUGE基于召回率。ROUGE-L中的“L”指的是Longest Common Subsequence,计算的是候选摘要与参考摘要的最长公共子序列长度,长度越长,得分越高,基于F值。
CIDEr(Consensus-based Image Description Evaluation,基于共识的图像描述评估):把每个句子看成文档,然后计算其 TF-IDF 向量(注意向量的每个维度表示的是n-gram 而不一定是单词)的余弦夹角,据此得到候选句子和参考句子的相似度。
SPICE(Semantic Propositional Image Caption Evaluation,语义命题图像标题评估):SPICE 使用基于图的语义表示来编码 caption 中的 objects, attributes 和 relationships。它先将待评价 caption 和参考 captions 用 Probabilistic Context-Free Grammar (PCFG) dependency parser parse 成 syntactic dependencies trees,然后用基于规则的方法把 dependency tree 映射成 scene graphs。最后计算待评价的 caption 中 objects, attributes 和 relationships 的 F-score 值。
Image Captioning概述相关推荐
- CV:计算机视觉技最强学习路线之CV简介(传统视觉技术/相关概念)、早期/中期/近期应用领域(偏具体应用)、经典CNN架构(偏具体算法)概述、常用工具/库/框架/产品、环境安装、常用数据集、编程技巧
CV:计算机视觉技最强学习路线之CV简介(传统视觉技术/相关概念).早期/中期/近期应用领域(偏具体应用).经典CNN架构(偏具体算法)概述.常用工具/库/框架/产品.环境安装.常用数据集.编程技巧 ...
- 论文阅读【Controllable Video Captioning with POS Sequence Guidance Based on Gated Fusion Network】
Controllable Video Captioning with POS Sequence Guidance Based on Gated Fusion Network 概述 发表:ICCV 20 ...
- 迁移学习(Transfer Learning)概述及代码实现(full version)
基于PaddlePaddle的李宏毅机器学习--迁移学习 大噶好,我是黄波波.希望能和大家共进步,错误之处恳请指出! 百度AI Studio个人主页, 我在AI Studio上获得白银等级,点亮2个徽 ...
- 论文笔记:COCO-CN for Cross-Lingual Image Tagging, Captioning, and Retrieval
COCO-CN用于跨语言图像标记.标题和检索 摘要 介绍 COCO-CN结构 应用 结论 补充 摘要 本文从数据和基线方法两方面对跨语言图像标注和检索做出了贡献.我们提出了一种新的中文句子和标记丰富M ...
- 【Image Captioning】Improve Image Captioning by Estimating the Gazing Patterns from the Caption
Improve Image Captioning by Estimating the Gazing Patterns from the Caption Department of Computer S ...
- Java 多线程概述
多线程技术概述 1.线程与进程 进程:内存中运行的应用程序,每个进程都拥有一个独立的内存空间. 线程:是进程中的一个执行路径,共享一个内存空间,线程之间可以自由切换.并发执行,一个进程最少有一个线程, ...
- 【SpringMVC】概述
概述: SpringMVC:是基于spring的一个框架, 实际上就是spring的一个模块, 专门是做web开发的. 理解是servlet的一个升级 Sp ...
- 梯度下降优化算法概述
本文原文是 An overview of gradient descent optimization algorithms,同时作者也在 arXiv 上发了一篇同样内容的 论文. 本文结合了两者来翻译 ...
- Redis概述和基础
Redis 1.NoSQL NoSQL = Not Only SQL(不仅仅是SQL) 泛指非关系型数据库的,随着web2.0互联网的诞生!传统的关系型数据库很难对付web2.0时代!尤其是超大规模的 ...
最新文章
- 阿里员工离职潮的背后?
- 艾伟_转载:C#语言基础常见问题汇总
- 对一种自制乐器进行音高修正和音色分析
- Struts2工作原理和框架扩展点
- linux下安装 配置 redis数据库
- mysql select high_priority_MySQL进阶SELECT语法篇
- 腾讯广告招人啦,校招优质岗位你不容错过!
- 想创业赚钱 就必须了解赚钱的真相
- 朱松纯教授浅谈人工智能:现状、任务、构架与统一
- 你们要的后台管理系统全套,今天它来了【开源推荐】
- Ubuntu SecureCRT安装/破解
- 【kali技巧】kali配置ssh服务
- 美国服务器电影网站版权问题,为什么说选择美国服务器做电影网站比较好
- 视图中的调用者权限控制bequeath current_user
- 平凡的女人,伟大的奉献
- 转行学习java自学好还是去培训学校学习好?系统学习路线推荐
- uniCloud 云函数
- Java-ZZH1-78面试题
- CK+人脸表情数据集下载
- JAVA:如何读写txt文件,并解决中文乱码问题