论文阅读笔记 | MetaIQA: Deep Meta-learning for No-Reference Image Quality Assessment

文章目录

    • 文章题目
    • 发表年限
    • 期刊/会议名称
    • 论文简要
    • 动机
    • 主要思想或方法架构
    • 实验结果

文章链接:https://doi.org/10.48550/arXiv.2004.05508

文章题目

MetaIQA: Deep Meta-learning for No-Reference Image Quality Assessment

发表年限

2020

期刊/会议名称

Published in: 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)

论文简要

  • 本文提出了一种基于深度元学习的 NR-IQA 指标。其基本思想是学习人类在评估具有各种失真的图像质量时所共享的元知识,然后可以轻松地适应未知的失真。
  • 首先作者收集了针对不同失真的多个 NR-IQA 任务,然后采用元学习来学习不同失真共享的先验知识。
  • 最后,在目标 NR-IQA 任务上对质量先验模型进行微调,以快速获得质量模型。
  • 广泛的实验证明,所提出的指标在很大程度上优于现有技术水平。此外,从合成失真中学习的元模型也可以轻松推广到真实失真,这在IQA指标的实际应用中是非常理想的。

动机

  • 训练 DCNNs 严重依赖于大量带注释的数据。由于通过人工标注图像质量非常昂贵且耗时,因此收集大规模的图像质量数据来训练 DCNNs 的 IQA 模型是困难的。IQA 是一个典型的小样本问题。现有注释的 IQA 数据库的规模通常是有限的,因此直接使用这些数据库来训练深度 IQA 模型很容易导致过拟合问题。
  • 大多数现有的基于深度卷积神经网络 DCNNs 的 IQA 指标都是基于预训练的网络运行的。这些预训练的网络不是为 IQA 任务设计的,会导致模型在评估不同类型的图像退化时出现泛化问题。预训练模型并不是为 IQA 任务设计的,因此它们无法轻松适应新类型的失真。
  • 在现实世界的情况下,人类可以轻松从具有各种失真的图像中获得质量先验知识并快速适应对未知失真图像的质量评估,因此对于 NR-IQA 方法来说,学习人类在评估具有各种失真的图像质量时的共享先验知识至关重要。

主要思想或方法架构

在这里插入图片描述

  • 作者通过一些已知失真类型的 NR-IQA 任务来学习一个共享的质量先验模型,然后针对未知失真的 NR-IQA 任务进行微调。方法的整体框架如图所示,包括两个步骤,即质量先验模型的元训练和未知失真的 NR-IQA 的微调。
  • 在第一步中,作者利用一些特定失真的 NR-IQA 任务建立一个元训练集,进一步将其分为支持集和查询集两个子集。然后使用从支持集到查询集的双层梯度下降方法来学习质量先验模型。
  • 深度回归网络由卷积层和全连接层组成。卷积层来自于一个常用的深度网络,作者采用全局平均池化(GAP)操作来生成全连接层。然后,作者添加另一个全连接层来生成作者深度回归网络的输出。
  • 特别地,对于输入图像 x x x,作者将其输入深度网络,生成图像的预测质量分数 y ~ \tilde{y} y~,定义为:

在这里插入图片描述

  • 其中 θ θ θ 为初始化后的模型参数。作者使用欧氏距离的平方作为损失函数,其形式如下

在这里插入图片描述

  • 其中 y y y 为输入图像 x x x g r o u n d − t r u t h ground-truth groundtruth 质量分数。
  • 从许多特定失真的 NR-IQA 任务中获得元训练集 。

在这里插入图片描述

  • 其中, D s P ( τ ) {D_s}^{P(τ)} DsP(τ) D q P ( τ ) {D_q}^{P(τ)} DqP(τ) 分别是每个任务的支持集和查询集, N N N 是总任务数。
  • 为了捕捉不同 NR-IQA 任务之间的通用模型,作者从元训练集中随机抽取 k k k 个任务作为一个小批次( 1 1 1 < k k k N N N)。
  • 对于小批次中第 i i i 个支持集 ,可通过欧氏距离的平方 L \mathcal{L} L 计算损失,并表示为 L τ i {\mathcal{L}}_{τi} Lτi i i i ∈ \in { 1 , 2 , . . . , k 1,2,...,k 1,2,...,k})。
  • 作者利用更高效的随机梯度下降 S G D SGD SGD 方法来优化模型。
  • 首先计算与所有模型参数相关的损失函数 L τ i \mathcal{L}_{τi} Lτi 的一阶梯度,并定义为:

在这里插入图片描述

  • 接下来,作者使用 A d a m Adam Adam 优化器在支持集 D s τ i {D_s}^{τi} Dsτi i i i = = = 1 , 2 , . . . , k 1,2,...,k 1,2,...,k)上对模型参数进行 S S S 步更新。
  • A d a m Adam Adam 优化器的定义如下:

在这里插入图片描述

  • ε = 1 e − 8 ε = 1e−8 ε=1e8
  • α α α 是内部学习率。
  • m θ ( s ) m_{θ(s)} mθ(s) v θ ( s ) v_{θ(s)} vθ(s) 分别表示梯度的一阶和二阶原始矩,定义如下:

在这里插入图片描述

  • 其中 m θ ( s ) = 0 m_{θ(s)} = 0 mθ(s)=0 v θ ( s ) = 0 v_{θ(s)} = 0 vθ(s)=0
  • μ 1 μ_1 μ1 μ 2 μ_2 μ2 m θ ( s ) m_{θ(s)} mθ(s) v θ ( s ) v_{θ(s)} vθ(s) 的指数衰减率。
  • g θ ( s ) g_{θ(s)} gθ(s) 表示第 s s s 步中更新后的梯度 。
  • 模型参数 θ ′ i {θ^{'}}_i θi 可以通过 A d a m Adam Adam 优化器在查询集 D q τ i {D_q}^{τi} Dqτi i i i = = = 1 , 2 , . . . , k 1,2,...,k 1,2,...,k)上进行 S S S 步更新,具体形式如下:

在这里插入图片描述

  • 这里的 m θ ′ ( s ) m_{{θ^{'}}(s)} mθ(s) v θ ′ ( s ) v_{{θ^{'}}(s)} vθ(s) 分别表示梯度的一阶和二阶原始矩。
  • 对于 k k k 个任务的小批次处理,所有任务的梯度被整合以更新最终的模型参数,定义如下:

在这里插入图片描述

  • 其中 β β β 是外部学习率。
  • 通过这种方法,作者在元训练集 D p ( τ ) m e t a {D^{p(τ)}}_{meta} Dp(τ)meta 上迭代地对 k k k 个 NR-IQA 任务进行采样来训练深度回归网络 f θ f_θ fθ
  • 最终,通过双层梯度优化的元学习可以获得适用于各种图像失真的质量先验模型。
  • 在第二步中,作者在目标 NR-IQA 任务上对质量先验模型进行微调,以获得质量模型。
  • 在对于未知失真的微调中,在从若干特定失真的 NR-IQA 任务中训练质量先验模型后,作者将使用该模型作为先验知识,在具有未知失真的 NR-IQA 任务上进行微调。
  • 对于来自目标 NR-IQA 任务的 M M M 张训练图像,并带有注释的质量分数,作者对于第 i i i 张图像的预测分数和真实分数使用欧氏距离的平方作为损失函数,其定义如下:

在这里插入图片描述

  • 然后,作者利用 A d a m Adam Adam 优化器在 NR-IQA 任务上对质量先验模型进行 P P P 步的更新,定义如下:

在这里插入图片描述

  • 其中 α f α_f αf 是微调的学习率。 m θ ( p ) m_{θ(p)} mθ(p) v θ ( p ) v_{θ(p)} vθ(p) 分别表示梯度的一阶和二阶原始矩。

  • 最终,可以获得用于评估具有未知失真图像质量的质量模型。

  • 值得注意的是作者提到他所提出的方法的微调过程不需要学习额外的参数,这极大地提高了学习效率,并增强了模型的泛化能力。

实验结果

  • 为了验证作者提出的元模型对未知失真的泛化性能,作者通过在 T I D 2013 TID2013 TID2013 K A D I D KADID KADID- 10 K 10K 10K 数据库上使用留一失真交叉验证,将所提出的方法与六种最先进的通用 NR-IQA 方法进行了比较。

在这里插入图片描述

  • 表中列出了所提出的方法和最先进的 NR-IQA 方法的测试 S R O C C SROCC SROCC 值,每种失真类型的最佳结果以粗体标记。
  • 可以看到,作者提出的方法在两个数据库上的总体性能(平均结果)都大大优于其他方法。
  • 在TID2013数据库中,作者提出的方法对超过一半的失真类型的SROCC值大于 0.9 0.9 0.9,这表明提出的基于元学习的 NR-IQA 方法可以有效地学习共享质量先验模型,并快速适应未知失真类型的 NR-IQA 任务。

在这里插入图片描述

  • 为了进一步研究所提出的方法的有效性是否来源于元学习,作者进行了消融实验。
  • 基线方法是首先直接使用 A d a m Adam Adam 优化器在特定畸变的图像上训练网络模型,然后在真实畸变图像的训练集上对模型进行微调。
  • 与基线方法相比, M e t a I Q A MetaIQA MetaIQA 具有更好的泛化性能,可以在不改变网络结构的情况下提高 NR-IQA 模型的性能。

在这里插入图片描述

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

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

相关文章

Marin说PCB之POC电路layout设计仿真案例---01

最近娃哈哈饮料突然爆火&#xff0c;看新闻后才知道春晚的的时候宗老已经病的很严重了&#xff0c;现在也已经离我们而去了&#xff0c;宗老是一个值得我们尊敬爱戴的伟大企业家。于是乎小编我立马去他们的直播间买了一箱娃哈哈AD钙奶支持一下我们的国货。 中午午休的时候&…

Excel如何开启VBA进行二次开发

经常使用Excel做数据分析的朋友平时用的比较多的可能只是一些常用的内置函数或功能&#xff0c;比如求和函数、字符串分割函数、分类汇总、IF函数、VLOOKUP函数等。大多数人认为Excel强大是因为内置了大量的函数。其实&#xff0c;作为一名资深程序猿&#xff0c;个人认为&…

kafka消费端消息去重方案

背景 我们在日常工作中&#xff0c;消费kafka消息是一个最常见的操作&#xff0c;不过由于kafka队列中经常包含重复的消息&#xff0c;并且消息量巨大&#xff0c;所以我们消费端总是需要先把消息进行去重后在消费&#xff0c;以减少消费端的压力&#xff0c;那么日常中我们一…

redis 性能优化一

目录 前言 尾延迟 前言 说到redis 性能优化&#xff0c;优化的目的是什么&#xff1f;提高响应&#xff0c;减少延迟。就要关注两点&#xff0c;一是尾延迟&#xff0c;二是Redis 的基线性能。只有指标&#xff0c;我们的优化&#xff0c;才有意义&#xff0c;才能做监控以及…

玩一会小乌龟

滚滚长江东逝水&#xff0c;浪花淘尽英雄。 是非成败转头空。青山依旧在&#xff0c;几度夕阳红。 白发渔樵江渚上&#xff0c;惯看秋月春风。 一壶浊酒喜相逢。古今多少事&#xff0c;都付笑谈中。 画一个正方形 import turtle# 创建一个Turtle对象 t turtle.Turtle()# 循环…

【开发工具】Git模拟多人开发场景理解分支管理和远程仓库操作

我们来模拟一个多人多分支的开发场景。假设你有一个新的空白远程仓库,假设地址是 https://github.com/user/repo.git。 克隆远程仓库到本地 $ git clone https://github.com/user/repo.git这会在本地创建一个 repo 目录,并自动设置远程主机为 origin。 创建本地开发分支并推送…

学术论文GPT的源码解读与二次开发:从ChatPaper到gpt_academic

前言 本文的前两个部分最早是属于此旧文的《学术论文GPT的源码解读与微调&#xff1a;从ChatPaper到七月论文审稿GPT第1版》&#xff0c;但为了每一篇文章各自的内容更好的呈现&#xff0c;于是我今天做了以下三个改动 原来属于mamba第五部分的「Mamba近似工作之线性Transfor…

开源模型应用落地-工具使用篇-Spring AI(七)

一、前言 在AI大模型百花齐放的时代&#xff0c;很多人都对新兴技术充满了热情&#xff0c;都想尝试一下。但是&#xff0c;实际上要入门AI技术的门槛非常高。除了需要高端设备&#xff0c;还需要面临复杂的部署和安装过程&#xff0c;这让很多人望而却步。不过&#xff0c;随着…

Kap - macOS 开源录屏工具

文章目录 关于 Kap 关于 Kap Kap 是一个使用web技术的开源的屏幕录制工具 官网&#xff1a;https://getkap.cogithub : https://github.com/wulkano/Kap 目前只支持 macOS 12 以上&#xff0c;支持 Intel 和 Apple silicon 你可以前往官网&#xff0c;右上方下载 你也可以使…

案例介绍:信息抽取技术在汽车销售与分销策略中的应用与实践

一、引言 在当今竞争激烈的汽车制造业中&#xff0c;成功的销售策略、市场营销和分销网络的构建是确保品牌立足市场的关键。作为一名经验丰富的项目经理&#xff0c;我曾领导一个专注于汽车销售和分销的项目&#xff0c;该项目深入挖掘市场数据&#xff0c;运用先进的信息抽取…

EasyExcel3.1.1版本上传文件忽略列头大小写

1、背景 项目中使用easyExcel3.1.1版本实现上传下载功能&#xff0c;相关数据DTO以 ExcelProperty(value "dealer_gssn_id") 形式规定其每一列的名称&#xff0c;这样的话easyExcel会完全匹配对应的列名&#xff0c;即用户上传文件时&#xff0c;列名写成Dealer_…

利用websocket +定时器简易的实现一个网络聊天室

其实原理非常简单,就是客户端用户通过websoket来连接websocket服务端。然后服务端,收集每个用户发出的消息, 进而将每条用户的消息通过广播的形式推送到每个连接到服务端的客户端。从而实现用户的实时聊天。 // TODO : 我主要是讲一下实现思路。并未完善其功能。 1.后端 依赖 …

使用数据库实现增删改查

#include<myhead.h>//定义添加数据函数int do_add(sqlite3 *ppDb) {//1.准备sql语句,输入要添加的信息int add_numb; //工号char add_name[20]; //姓名char add_sex[10]; //性别double add_score; //工资printf("请输入要添加的工号:")…

恢复IDEA误删除的git提交,提交被删除,尝试恢复提交

​​​​​​ dgqDESKTOP-JRQ5NMD MINGW64 /f/IdeaProjects/workspace/spzx-parent ((8bb112e...)) $ git reflog 8bb112e (HEAD, origin/master, master) HEAD{0}: checkout: moving from master to 8bb112e5ac18dfe4bbd64adfd06363e46b609f21 8bb112e (HEAD, origin/master, …

微信小程序开发系列(二十一)·wxml语法·setData()修改数组类型数据(增加、修改、删除)

目录 1. 新增数组元素 方法一&#xff1a;push&#xff08;&#xff09; 方法二&#xff1a;concat() 方法三&#xff1a;ES6中的扩展运算符 ... 2. 修改数组元素 样式一&#xff1a;数字 样式二&#xff1a;元素 3. 删除数组元素 方法一&#xff1a;splice&#x…

vue2源码分析-vue入口文件global-api分析

文章背景 vue项目开发过程中,首先会有一个初始化的流程,以及我们会使用到很多全局的api,如 this.$set this.$delete this.$nextTick,以及初始化方法extend,initUse, initMixin , initExtend, initAssetRegisters 等等那它们是怎么实现,让我们一起来探究下吧 源码目录 global-…

Windows下 OracleXE_21 数据库的下载与安装

Oracle 数据库的下载与安装 数据库安装包下载数据库安装访问数据库进行测试Navicat连接数据库 1. 数据库安装包的下载 1.1 下载地址 Oracle Database Express Edition | Oracle 中国 1.2 点击“下载 Oracle Database XE”按钮&#xff0c;进去到下载页面&#xff08;选择对…

Stable diffusion零基础课程

该课程专为零基础学习者设计&#xff0c;旨在介绍和解释稳定扩散的基本概念。学员将通过简单易懂的方式了解扩散现象、数学模型及其应用&#xff0c;为日后更深入的科学研究和工程应用打下坚实基础。 课程大小&#xff1a;3.8G 课程下载&#xff1a;https://download.csdn.ne…

灵魂指针,教给(一)

欢迎来到白刘的领域 Miracle_86.-CSDN博客 系列专栏 C语言知识 先赞后看&#xff0c;已成习惯 创作不易&#xff0c;多多支持&#xff01; 一、内存和地址 1.1 内存 在介绍知识之前&#xff0c;先来想一个生活中的小栗子&#xff1a; 假如把你放在一个有100间屋子的酒店…

第三讲 汇编初步 课程随手记

一、寄存器 32位CPU通用寄存器如下图所示&#xff1a; 因为教材依照的是32位CPU寄存器&#xff0c;而我安装的是64位寄存器&#xff0c;所以找了一下64位的寄存器的资料 PS&#xff1a;一般来说&#xff0c;Intel处理器字节存储顺序为小端法存储&#xff0c;是指数据的高字节保…