学习记录:Improving Image Captioning with Conditional Generative Adversarial Nets

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 学习记录:Improving Image Captioning with Conditional Generative Adversarial Nets
  • 前言
  • 一、摘要
  • 二、引言
  • 三、用强化学习实现图片描述
    • 1.传统的训练方法
    • 2.强化学习的训练方法
  • 四、条件生成对抗网络训练方法
    • 4.1 框架
    • 4.2 基于CNN的判别器模型
    • 4.3 基于RNN的判别器模型
    • 4.4 算法
    • 5.效果

前言

提示:这里可以添加本文要记录的大概内容:

利用GAN提升image caption的效果


提示:以下是本篇文章正文内容,下面案例可供参考

一、摘要

这篇文章提出了一个新的基于条件生成对抗网络的图片描述的框架。这个框架是传统的基于强化学习的编码解码框架的拓展。为了解决不同语言评估策略评估不一致的问题,设计了一个判别器网络来判断图片描述是来自人类还是来自机器。介绍了两种判别器架构(基于CNN的和基于RNN的),他们各有优点。文章还提出了一个通用的能提高基于强化学习的图片描述的算法,条件强化学习只是他们方法中的个例。相比于不同sota模型,对语言评估矩阵有了一致性的提高。

二、引言

曝光偏差问题(bias exposure problem) 是图像描述中典型的问题,由训练时有正确单词和预测时只有预测单词造成的。为了解决这个问题,前人也采用了很多方法,很多人在强化学习中加入训练策略,直接优化像BLEU这样的指标。有人把基于策略梯度的强化学习方法用在图像描述中。也有人将actor-critic RL 算法用在图像描述中。GAN在视觉任务上取得了成功,SeqGAN将GAN应用在了文本和音乐生成。Dai et al. 2017 ,Shetty et al. 2017,Mirza and Osindero 2014 ,都尝试将条件对抗生成网络应用在图片描述中,但是他们更关注自然性和多样性,而忽视了评估得分。为了得到高的评估得分,很多工作选择直接优化一个指标或者组合指标。优化一个指标并不能确保一致性的提高所有的指标。因此,为了提高所有的指标,本文设计了一个判别器网络来判断句子是人类描述的还是机器描述的。本文采用对抗训练的方法自动优化生成器和判别器。此文章的贡献:1.提出了一种通用算法,算法能普遍提高基于强化学习的图片描述框架。2.训练好的判别器也可以看作图像描述的评估器。3.用此模型的方法提高了up-down image caption的性能。

三、用强化学习实现图片描述

1.传统的训练方法

传统的RNN模型训练策略是MLE,最大化对数似然。

2.强化学习的训练方法

强化学习的目标是最大化生成器的期望奖励

梯度方程:

四、条件生成对抗网络训练方法

4.1 框架


如图所示,生成器生成的句子将会被送入判别器D和评估器Q,判别器D会给出一个概率p(句子是人类生成的概率),评估器Q会根据评价指标生成一个客观的分数s。从图中可以看到由p和s加权求和得到强化学习的中的奖励。根据奖励得分更新生成器和判别器D.

4.2 基于CNN的判别器模型


整个流程为,将CNN产生的特征和生成器生成的句子进行水平级联操作得到特征图,再采用不同窗口大小的m组卷积核提取特征,得到c,c经过最大池化得到c~,再经过MLP和Softmat得到概率。具体公式如下:


4.3 基于RNN的判别器模型

从图中可以很清楚的看出此模型由T+1层LSTM和一层MLP+Softmax组成。注意LSTM输入的变化。

4.4 算法

5.效果


学习记录:Improving Image Captioning with Conditional Generative Adversarial Nets相关推荐

  1. 【GANs】Conditional Generative Adversarial Nets

    [GANs]Conditional Generative Adversarial Nets 2 CGAN 2.1 CGAN简介 前言 流程图 目标函数 2.2 CGAN代码 2 CGAN 2.1 CG ...

  2. Conditional Generative Adversarial Nets

    Conditional Generative Adversarial Nets 利用五一假期的小尾巴终于看完了CGAN的论文,特意记录一下,方便以后查找. 文章目录 Conditional Gener ...

  3. PaperNotes(5)-Conditional Generative Adversarial Nets

    Conditional GAN 论文阅读笔记 Abstract 1 Introduction 2 Related Work 3 Conditional Adversarial Nets 3.1 Gen ...

  4. CGAN论文解读:Conditional Generative Adversarial Nets

    论文链接:Conditional Generative Adversarial Nets 代码解读:Keras-CGAN_MNIST 代码解读 目录 一.前言 二.相关工作 三.网络结构 CGAN N ...

  5. cGAN:Conditional Generative Adversarial Nets

    论文阅读之cGAN:Conditional Generative Adversarial Nets #Abstract 本文提出了条件-生成对抗网络(Conditional-GAN),Generato ...

  6. GAIN: Missing Data Imputation using Generative Adversarial Nets学习笔记

    GAIN: Missing Data Imputation using Generative Adversarial Nets(基于对抗生成网络实现缺失数据插补) 缺失数据插补算法问题背景 缺失数据 ...

  7. GAN(Generative Adversarial Nets)研究进展

    想与大家分享的是图像生成中一些工作. 这些工作都基于一大类模型,Generative Adversarial Networks(GAN).从模型名称上甚至都可以看出一些发展轨迹:GAN->CGA ...

  8. 深度学习之生成式对抗网络 GAN(Generative Adversarial Networks)

    一.GAN介绍 生成式对抗网络GAN(Generative Adversarial Networks)是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一.它源于2014年发表的论文:& ...

  9. 论文阅读:Single Image Dehazing via Conditional Generative Adversarial Network

    Single Image Dehazing via Conditional Generative Adversarial Network Runde Li∗ Jinshan Pan∗ Zechao L ...

最新文章

  1. 设计模式第七讲-责任链模式
  2. python 比较文件夹或列表异同
  3. FreeBSD 创始人-Jordan Hubbard
  4. Java Spring Beans.xml里的Bean定义是如何被解析出来的
  5. sensei鼠标测试软件,'黑科技'传感器打造出的FPS利器 - 赛睿Sensei 310 鼠标
  6. linux sigprocmask函数理解
  7. [LeetCode]238.Product of Array Except Self
  8. openssh-server (= 1:6.6p1-2ubuntu1) but it is not going to be installed
  9. linux环境ubuntu: pushd: not found
  10. JAVA实训心得体会(精选4篇)
  11. VoIP技术的基本原理与应用
  12. switch case的天坑
  13. unity3d发布安卓出错plese set the package name
  14. 拥有梦想的时候 拿出勇气和行动
  15. [解疑][VS]Visual Studio软件编程时,ID号的格式ID_,IDS_,IDC_,IDI_,IDB_,IDD_之间有什么区别?
  16. 服务器怎么清空系统盘,服务器怎么清空数据
  17. 小米手环模拟门禁卡读卡失败_工作生活好帮手 篇一:小米note3模拟门禁卡 你该不该知道的可能都在这里_安卓手机...
  18. 中国仪器仪表市场需求前景预测与投资规划分析报告2022年版
  19. ROS2源码快捷下载的办法
  20. 计算机艺术论文,计算机艺术设计教学研究论文

热门文章

  1. Xposed模块开发教程(一) 了解并使用Xposed
  2. 运营入门——运营本源
  3. mysql 月份_MySQL显示所有月份
  4. H5应用集成到钉钉,完成免登录
  5. poj1974 排序 模拟
  6. 超简洁的导航网站PHP源码
  7. 手写汉字识别和多字分割
  8. Manual:Wireless FAQ
  9. [转] WEB设计趋势与潮流
  10. 使用java实现基础的家庭记账程序