Text to image论文精读 TISE (Text-to-Image Synthesis Evaluation):用于文本到图像合成的评估度量工具包

TISE (Text-to-Image Synthesis Evaluation)是一款用于评估文本生成图像的Python评估工具箱。文章由Tan M. Dinh, Rang Nguyen, and Binh-Son Hua等人发表。

其以统一的方式促进、倡导公平的评估度量,并为未来的文本到图像综合研究提供可重复的结果。

文章链接:https://arxiv.org/abs/2112.01398
项目链接:https://github.com/VinAIResearch/tise-toolbox

一、原文摘要

在本文中,我们对最先进的文本到图像合成方法进行了研究,并提出了评估这些方法的框架。我们考虑图像包含单个或多个对象的合成。我们的研究概述了当前评估过程中的几个问题:

  • (i)对于图像质量评估,一个常用的指标,例如启始得分(IS),在单对象情况下经常被错误校准,或者在多对象情况下被误用;
  • (ii)对于文本相关性和对象准确性评估,在现有的R-精度(RP)和语义对象准确性(SOA)度量中分别存在过拟合现象;
  • (iii)对于多目标情况,许多重要的评估因素,如目标保真度、位置对准、计数对准,在很大程度上被忽略;
  • (iv)基于当前度量的方法的排名与真实图像高度不一致。为了克服这些问题,我们提出了一组现有的和新的指标来系统地

二、为什么提出TISE?

尽管目前文本生成图像在特定的数据集上取得了优异的结果但目前的评估方法并非理想。

对于单对象情况,图像质量和文本图像对齐是典型评估过程中考虑的主要因素。一些常用的评估指标是图像保真度的起始得分(IS)和Fr´echet起始距离(FID)以及文本图像对齐的R精度(R-precision),在大多数单对象情况下都很有效。

然而,在具有多个对象的复杂场景中,这些度量指标并不完全有效,会导致一些不一致性问题。如下图所示,基于当前度量的GAN模型的排名与其生成的图像质量并不强相关。有些看起来不真实的图片,量化结果甚至高于真实照片的结果。
在这里插入图片描述
在这个问题的基础上,作者开发了一种系统的方法来评估文本到图像的合成方法,主要贡献如下:

  1. 创建了IS*(IS度量的改进版本),它缓解了由于用于IS的预训练分类器中的错误校准而导致的低置信度现象。另外还开发了文本相关性和对象准确性评估(RP和SOA)的稳健版本,以缓解多对象情况下的过拟合问题
  2. 作者开发了用于对象保真度的O-IS和O-FID,用于位置对齐的PA和用于计数对齐的CA,以评估多对象文本到图像合成中缺乏的方面。
  3. 提出了AttnGAN+。

三、什么是TISE?

3.1、现有常用的指标

1️⃣、Inception Score(IS)
IS分数用到了KL散度和熵的数学知识,其主要原理在于计算p(y|x)和p(y)之间的散度:

I S = exp ⁡ ( E x K L ( p ( y ∣ x ) ∥ p ( y ) ) \mathrm{IS}=\exp \left(\mathbb{E}_{x} \mathrm{KL}(p(y \mid x) \| p(y))\right. IS=exp(ExKL(p(yx)p(y))

其中:

  1. p ( y ∣ x ) p(y|x) p(yx):其中x表示一个生成的样本,y是预测的标签,简单来说:x 表示模型生成的图片,y 表示这个图片包含的主要物体,条件概率 p ( y ∣ x ) p(y|x) p(yx)代表:给出一个图片,预测图片中包含的物体的概率,也就是有很高的把握对其进行正确分类,概率越大,越容易的知道其中包含什么物体。所以从一定程度上, p ( y ∣ x ) p(y|x) p(yx)代表了图片的质量,概率越高越好。
  2. p ( y ) p(y) p(y):y是预测的标签,p(y)表示边际分布,换句话说就是标签的分布情况,我们希望标签分布均匀,而不希望模型生成的都是某一类图片。这时候我们考虑的不是条件概率了,而是边缘概率p(y)。举个不恰当的例子来说,第一个模型生成出的图像的概率这样:p(喜鹊)=0.98,p(麻雀)=0.01,p(鸽子)=0.01,第二个模型生成图像的概率是p(喜鹊)=0.33,p(麻雀)=0.34,p(鸽子)=0.33。那么我们肯定认为第二个模型生成的多样性更好一点。 p ( y ) p(y) p(y)可以代表模型生成的多样性,我们希望p(y)分布均匀,最好达到p(y1=p(y2)=…=1/n,
  3. 熵的概念:指信息熵,个人理解成混乱程度。当概率小的时候,则不确定性大,熵的值就会越大。我们希望 p ( y ∣ x ) p(y|x) p(yx)概率越高越好,用熵来说,则其熵值越小越好,熵越小,不确定性越小,就能越好的对生成图像进行分类。我们希望各个 p ( y ) p(y) p(y)概率越小越好,用熵来说,则其熵值越大越好,熵越大,不确定性越大(更加混乱),就能生成更多的类别。
  4. KL散度:通过3我们希望p(y|x)的熵越小越好,p(y)的熵越大越好,故此时引入KL散度,KL散度也叫相对熵,表示两者的离散状态,简单来说就是两个概率的信息熵的差值: p ( y ) p(y) p(y)的熵减去 p ( y ∣ x ) p(y|x) p(yx)的熵

综上所述,IS分数越大越好。越大表示散度越大,即两者熵的差值越大。

2️⃣ 、Fr´echet Inception Distance (FID)
FID分数用于根据预训练网络提取的特征,测量真实图像分布和生成图像分布之间的距离。

F I D = ∥ μ r − μ g ∥ 2 2 + Tr ⁡ ( Σ r + Σ g − 2 ( Σ r Σ g ) 1 / 2 ) \mathrm{FID}=\left\|\boldsymbol{\mu}_{r}-\boldsymbol{\mu}_{g}\right\|_{2}^{2}+\operatorname{Tr}\left(\boldsymbol{\Sigma}_{\boldsymbol{r}}+\boldsymbol{\Sigma}_{g}-2\left(\boldsymbol{\Sigma}_{\boldsymbol{r}} \boldsymbol{\Sigma}_{g}\right)^{1 / 2}\right) FID= μrμg 22+Tr(Σr+Σg2(ΣrΣg)1/2)

其中:

  1. 物理意义:真实图像在空间中是服从一个分布的(假设为正态分布),而GAN生成的特征也是一个分布,GAN做的事情就是不断训练使这两个分布尽可能的相同。FID就是计算这两个分布直接的距离,使用的距离算法叫做Frechet distance。(比较好的还有Wasserstein-2 distance)
  2. 假设你有基础的统计学知识,很简单就能明白两个正态分布只要均值和方差相同,则两个分布相同。而我们这里的图像是多维的分布,所以使用协方差矩阵衡量单个分布里两个维度之间的相关性,FID正是用均值和协方差矩阵来计算两个分布之间的距离
  3. 上式由两个部分组成,r表示真实图像,g表示生成图像。第一部分中μ 表示分布的均值,第一部分为两个均值 μ 的差的平方。
  4. 第二部分中,Σ表示协方差,Tr表示迹(矩阵对角线上的元素和),第二部分为协方差矩阵的和减去根号下协方差矩阵的乘积的迹。

FID计算两个分布之间的距离,距离越小代表生成的分布越贴近于真实分布,故FID越小越好。

3️⃣、R-precision

R-precision通过对提取的图像和文本特征之间的检索结果进行排序,来衡量文本描述和生成的图像之间的视觉语义相似性。除了生成图像的真实文本描述外,还从数据集中随机抽取其他文本。然后,计算图像特征和每个文本描述的text embedding之间的余弦相似性,并按相似性递减的顺序对文本描述进行排序。如果生成图像的真实文本描述排在前r个内,则相关。

R-precision表示的是排序后真实文本出现在前r个的概率,越大说明图像与真实文本描述越相关,R-precision越大越好

3.2、 Improved Inception score (IS*): 校准图像分类器

用于计算IS的Inception网络的预训练分类器是未校准或错误校准的。因此,分类器往往过拟合或者欠拟合。

而IS是否校准可以通过使用预期校准误差(ECE)和可靠性图进行验证。ECE是用于评估校准的常用指标,而可靠性图是可视化校准质量的工具。如果分类器具有较小的ECE值,并且可靠性图接近同一性,则分类器被很好地校准。

在这里插入图片描述
为此,作者提出Improved Inception Score (IS*) ,这是一种改进的Inception分数,用于评估生成图像的质量。它通过校准分类器的置信度来解决这些问题。具体来说,作者使用了期望校准误差(ECE)和可靠性图来验证分类器的校准质量。如果一个分类器的ECE值较小并且可靠性图接近单位矩阵,那么这个分类器就是良好校准的。

通过这种方式,IS*不仅考虑了图像质量和文本-图像对齐度(这是传统Inception分数所考虑的),还考虑了分类器的信心水平,从而提供了更准确和全面的评估。

3.3、Object-centric IS (O-IS)、 Object-centric FID (O-FID) :以对象为中心的IS分数和FID分数

Object-centric IS (O-IS) 是一种评估生成图像中对象保真度的指标,它是Inception Score (IS) 的扩展。在文档中,作者提到现有的一些评估方法无法直接应用于文本到图像的任务,因为它们需要使用真实图像的对象边界框来提取对象,而这在文本到图像任务中是不存在的。为了解决这个问题,O-IS 利用了一个预先训练好的对象检测模型来预测生成图像中所有对象的边界框,然后对每个区域分别进行IS评分。这样,即使没有真实的对象边界框,也能够评估生成图像中的对象保真度。

与Object-centric IS (O-IS)类似,SceneFID 需要从布局中提取目标对象的边界框,因此,O-FID 使用预先训练好的目标检测模型来预测生成图像集中所有图像中的对象边界框,然后对每个区域分别进行 IS* 评分和 FID 评分,以此来评估对象保真度。

后面作者还提出了用于位置对齐的PA和用于计数对齐的CA,以评估多对象文本到图像合成中缺乏的方面。

3.4、AttnGAN++

作者创建了一个名为AttnGAN++的简单但强大的基线模型,主要通过以下两个方面来提升原始的AttnGAN模型:

  1. 添加谱归一化层到判别器(discriminator)中。谱归一化是一种用于稳定神经网络训练的技术,可以抑制梯度爆炸问题,提高模型训练的稳定性和收敛速度。通过在判别器的多层神经网络中添加谱归一化层,作者显著改善了AttnGAN的训练稳定性。
  2. 手动调整网络超参数。除了引入谱归一化,作者还对AttnGAN的网络结构进行了细致的调整和优化。这些修改后的超参数使得AttnGAN++在CUB数据集上取得了比原始AttnGAN更好的性能。

通过这两个方面的改进,AttnGAN++在多个评估指标上都显著超越了原始的AttnGAN模型以及现有的一些最先进的方法。
在这里插入图片描述
另外文章还有很多其他内容,这里不再赘述。

五、总结

本研究探讨了文本到图像合成(T2I)的评估问题,特别关注多对象场景。作者指出当前评估流程存在几个问题,如单对象情况下Inception Score(IS)的误用、多对象情况下R-precision(RP)和Semantic Object Accuracy(SOA)的过拟合现象,以及忽略的关键评估因素如对象保真度、位置对齐和计数对齐等。

而为解决这些问题,作者提出了一个综合的现有和新指标集来系统地评估这些方法。对于现有指标,作者改进了IS并提出了解决RP和SOA过拟合问题的方法。对于新指标,作者开发了用于评估多对象情况的Object-centric IS (O-IS) 和 Object-centric FID (O-FID) 。实验证明,使用这个指标集进行基准测试可以得到与人类评估高度一致的模型排名。此外,作者还创建了一个名为AttnGAN++的基线模型,并通过谱归一化稳定了AttnGAN的训练。最后,作者发布了名为TISE的工具箱,用于倡导公平和一致的文本到图像模型评估。文章比较长,一共有34页,阅读起来比较难,但是值得一提的是实验比较丰富,附录部分值得一看。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/578950.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

centos7.9中离线安装nginx开启ssl,arm架构

一、首先需要去国内相关镜像库下载相关依赖rpm: http://mirrors.bfsu.edu.cn/centos-altarch/7.9.2009/os/aarch64/ http://mirror.nju.edu.cn/centos-altarch/7.9.2009/os/aarch64/ http://mirrors.tuna.tsinghua.edu.cn/centos-altarch/7.9.2009/os/aarch64/ htt…

电子企业数字工厂管理系统有哪些实施难点

随着科技的快速发展,数字化转型已经成为企业提升竞争力、优化生产流程的必经之路。在电子企业中,数字工厂管理系统的实施尤为关键,它能够助力企业实现高效、精准的生产管理。然而,在实际操作过程中,实施数字工厂管理系…

linux ARM64 异常

linux 的系统调用是通过指令陷入不同异常级别实现的。arm64 架构的 cpu 的异常级别结构如下: 在上图中,用户层运行在 EL0 也就是异常级别 0,Linux 内核运行在 EL1 也就是异常级别 1,安全可信操 作系统运行在异常级别 2&#xff1a…

微信小程序---分包

概念:分包就是把一个完整的小程序项目,按照需求划分为不同的子包,在构建时打包成不同的分包,用户在使用时按需进行加载。 分包的优点:可以优化小程序首次启动的下载时间,在多团队共同开发时可以更好的解耦…

[2023-年度总结]凡是过往,皆为序章

原创/朱季谦 2023年12月初,傍晚,在深圳的小南山看了一场落日。 那晚我们坐在山顶的草地上,拍下了这张照片——仿佛在秋天的枝头上,结出一颗红透的夕阳。 这一天很快就会随着夜幕的降临,化作记忆的碎片,然…

ComfyUI如何中文汉化

comfyui中文地址如下: https://github.com/AIGODLIKE/AIGODLIKE-ComfyUI-Translationhttps://github.com/AIGODLIKE/AIGODLIKE-ComfyUI-Translation如何安装? 1. git安装 进入项目目录下的custom_nodes目录下,然后进入控制台,运…

Geotrust与QuickSSL证书

随着互联网的发展,SSL证书已经成为了保护网站数据传输安全的重要手段。然而,一些SSL证书申请流程繁琐,需要提供各种证明文件和等待审核,这对于许多小型企业或个人站长来说是一个很大的困扰。QuickSSL是Geotrust旗下的子品牌之一&a…

飞天使-k8s知识点7-kubernetes升级

文章目录 验证新版本有没有问题需要安装的版本微微 1.20.6.0kubeadm upgrade plan 验证新版本有没有问题 查看可用版本的包 现有的状态 查看版本 yum list kubeadm --showduplicates |grep 1.20 yum list kubelet --showduplicates |grep 1.20 yum list kubectl --showduplic…

P1016 [NOIP1999 提高组] 旅行家的预算

网址如下: P1016 [NOIP1999 提高组] 旅行家的预算 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 考前练练手 一道 普及/提高 难度的题 秒了 想到以前高中的时候被普及难度的题按在地上摩擦,现在能秒洛谷普及难度的题,有点泪目 代码如下…

记账导出excel表格,用表格导出账目数据

我们每天都在跟金钱打交道,记账则是更好地管理自己财务的一种方式,传统记账不仅繁琐,还容易出错。那么,有没有简单、高效的记账方式呢?答案是肯定的!今天,我们就向大家推荐一款全新的记账软件——晨曦记账本…

电子公章软件,怎么实现批量自动盖章?

在商务合作中,企业电子公章软件在提高办公效率、确保文件的法律效力方面发挥着关键作用。微签是国内电子公章软件领域的拓荒者之一,有19年的电子签研发应用经验,专注于审批场景中的安全签章。 今天,微签给大家带来了详细的“批量…

【电商】AI模特 高清放大

目录 实战一:模特人偶 实战二:3D OPEN POSE 生成 模特 高清放大(可开启ADetailer) 实战三:半身模特 随机生成 高清放大(可开启ADetailer) 实战四:人偶生成模特图 实战一&#x…

文献速递:生成对抗网络医学影像中的应用——3DGAUnet:一种带有基于3D U-Net的生成器的3D生成对抗网络

文献速递:生成对抗网络医学影像中的应用——3DGAUnet:一种带有基于3D U-Net的生成器的3D生成对抗网络 给大家分享文献的主题是生成对抗网络(Generative adversarial networks, GANs)在医学影像中的应用。文献的研究内容包括同模态…

线上服务有哪些稳定性指标?

在分布式高可用设计中,系统监控非常重要,系统监控做好了,可以提前对异常情况进行报警,避免很多线上故障的产生。系统监控做得好不好,也是评价一家互联网公司基础建设水平的重要标准,今天一起来讨论一下&…

Vue和React的运行时,校验引入包的上下文差异

背景 系统使用 webpack 5 模块联邦实现微前端,有关如何实现跨应用的代码共享,可参考 如何优雅的实现跨应用的代码共享 里的第三大点。 总之,这里是其他应用使用了某个应用共享出来的reg文件,引入方式为: import REG …

Dbeaver如何连接Oceanbase?

Dbeaver & Oceanbase 一、新增驱动二、连接数据库 一、新增驱动 1、新建驱动 点击数据库 -> 驱动管理器 -> 新建 2、设置驱动 驱动名称可随意填写注意驱动类型要是Generichost:port填写实际的host和port 库中新增下载的oceanbase驱动jar包 二、连接数据库 1、找…

ECMAScript 6 - 通过Promise输出题理解Promise

1 题目(1) 题目背景:分享洛千陨 珍藏题 const p1 () > (new Promise((resolve, reject) > {console.log(1);let p2 new Promise((resolve, reject) > {console.log(2);const timeOut1 setTimeout(() > {console.log(3);resolve(4);}, 0)resolve(5)…

【前端框架React】原理

React设计思想 1.原生JS React相比于vue来说更接近原生JS,因为在react内部,jsx模板经babel转化后是一个对象,所有的操作都是基于这个对象和其对应的fiber结构来操作的,而vue.js通过编译将templete模板转换成渲染函数(render),执…

工具系列:TensorFlow决策森林_(3)使用dtreeviz可视化

文章目录 介绍设置安装 TF-DF 和 dtreeviz导入库 可视化分类树加载、清洗和准备数据分割训练/测试集并训练模型训练一个随机森林分类器显示决策树检查叶节点统计信息决策树如何对实例进行分类特征空间划分 可视化回归树加载、清洗和准备数据分割训练/测试集并训练模型训练一个随…

漏洞处理-未设置X-Frame-Options

漏洞名称&#xff1a;iFrame注入 风险描述&#xff1a;系统未设置x-frame-options头 风险等级&#xff1a;低 整改建议&#xff1a;为系统添加x-frame-options头 知识 X-Frame-Options 响应头 X-Frame-Options HTTP 响应头是用来给浏览器指示允许一个页面可否在 <fram…