COIN 基于隐式神经表示对于压缩工作的探究

2024-04-16 18:52

本文主要是介绍COIN 基于隐式神经表示对于压缩工作的探究,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


1. 论文基本信息

2. 创新点

  1. 提出了一种新的图像压缩的简单方法:不是存储图像的每个像素的 RGB 值,而是存储过度拟合图像的神经网络的权重。

3. 背景

压缩隐式神经表示。使用神经网络将像素位置 (x, y) 映射到 RGB 值(通常称为隐式神经表示)来过度拟合图像。然后,将这个神经网络的权重 θ 量化为较低的位宽并传输它们。

  • 将我们的方法与学习的权重分布相结合可能会导致有前途的神经数据压缩方法
  • 将图像视为从像素位置到 RGB 值的函数,使得网络可以通过逐渐提高分辨率来形成渐进式解码,对资源受限的设备特别有吸引力。

4. Pipeline

令 I 表示我们希望编码的图像,使得 I[x, y] 返回像素位置 (x, y) 处的 RGB 值。文中定义了一个函数 fθ : R2 → R3,其参数 θ 将像素位置映射到图像中的 RGB 值,即 fθ (x, y) = (r, g, b)。然后,我们可以通过在一些失真度量下将 fθ 过拟合到图像上来编码图像。在本文中,我们使用均方误差,得到以下优化问题:

使用标准激活函数的 MLP 参数化 fθ 会导致欠拟合,有多种办法可以解决这个问题,有可能使用大量参数来使得 MLP 能够过拟合模型、或者使用正弦激活函数对像素坐标进行编码,文中选择了一种给定参数预算产生了功能好的结果。

文中采用两种方法减少模型的大小:

  1. 架构搜索:通过调整 MLP 的层数和每层的宽度 (即每层的神经元数量或参数量)来找到最优的网络架构。
  2. 权重量化:打 将权重的精度从 32 位降低到 16 位,有助于减少模型的大小。

5. 💎实验成果展示

6. 🔍问题分析

6.1. 局限性:

  1. 编码速度慢
  • 由于需要为每个编码的图像解决优化问题,编码过程较慢。这对于大规模的一对多媒体分发,如Netflix,可能不是理想的。
  1. 解码时的计算需求
  • 解码时需要在每个像素位置评估网络以还原完整的图像。尽管这种计算可以通过并行处理优化,但仍可能会产生一定的计算成本。
  1. 性能
    • 与现有的最先进的压缩方法相比,该方法的性能较差。

6.2. 未来工作方向:

  1. 元学习和摊销推理
  • 可能可以通过元学习或摊销推理方法绕过编码速度的局限性。
  1. 权重分布学习
  • 学习函数权重的分布可能会为该方法带来显著的压缩收益。
  1. 神经架构优化
  • 通过神经架构搜索或修剪等方法优化表示图像的函数的结构。
  1. 模型压缩
  • 可以采用更先进的模型压缩方法,而不仅仅是简单地将权重转换为半精度。
  1. 应用于其他类型的数据
  • 将该方法应用于不同类型的数据,如视频或音频,可能会有趣且有潜力。

这篇关于COIN 基于隐式神经表示对于压缩工作的探究的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/909622

相关文章

Python利用PIL进行图片压缩

《Python利用PIL进行图片压缩》有时在发送一些文件如PPT、Word时,由于文件中的图片太大,导致文件也太大,无法发送,所以本文为大家介绍了Python中图片压缩的方法,需要的可以参考下... 有时在发送一些文件如PPT、Word时,由于文件中的图片太大,导致文件也太大,无法发送,所有可以对文件中的图

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

Qt实现文件的压缩和解压缩操作

《Qt实现文件的压缩和解压缩操作》这篇文章主要为大家详细介绍了如何使用Qt库中的QZipReader和QZipWriter实现文件的压缩和解压缩功能,文中的示例代码简洁易懂,需要的可以参考一下... 目录一、实现方式二、具体步骤1、在.pro文件中添加模块gui-private2、通过QObject方式创建

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

hdu1565(状态压缩)

本人第一道ac的状态压缩dp,这题的数据非常水,很容易过 题意:在n*n的矩阵中选数字使得不存在任意两个数字相邻,求最大值 解题思路: 一、因为在1<<20中有很多状态是无效的,所以第一步是选择有效状态,存到cnt[]数组中 二、dp[i][j]表示到第i行的状态cnt[j]所能得到的最大值,状态转移方程dp[i][j] = max(dp[i][j],dp[i-1][k]) ,其中k满足c

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

Codeforces Round #240 (Div. 2) E分治算法探究1

Codeforces Round #240 (Div. 2) E  http://codeforces.com/contest/415/problem/E 2^n个数,每次操作将其分成2^q份,对于每一份内部的数进行翻转(逆序),每次操作完后输出操作后新序列的逆序对数。 图一:  划分子问题。 图二: 分而治之,=>  合并 。 图三: 回溯:

工作常用指令与快捷键

Git提交代码 git fetch  git add .  git commit -m “desc”  git pull  git push Git查看当前分支 git symbolic-ref --short -q HEAD Git创建新的分支并切换 git checkout -b XXXXXXXXXXXXXX git push origin XXXXXXXXXXXXXX

嵌入式方向的毕业生,找工作很迷茫

一个应届硕士生的问题: 虽然我明白想成为技术大牛需要日积月累的磨练,但我总感觉自己学习方法或者哪些方面有问题,时间一天天过去,自己也每天不停学习,但总感觉自己没有想象中那样进步,总感觉找不到一个很清晰的学习规划……眼看 9 月份就要参加秋招了,我想毕业了去大城市磨练几年,涨涨见识,拓开眼界多学点东西。但是感觉自己的实力还是很不够,内心慌得不行,总怕浪费了这人生唯一的校招机会,当然我也明白,毕业

husky 工具配置代码检查工作流:提交代码至仓库前做代码检查

提示:这篇博客以我前两篇博客作为先修知识,请大家先去看看我前两篇博客 博客指路:前端 ESlint 代码规范及修复代码规范错误-CSDN博客前端 Vue3 项目开发—— ESLint & prettier 配置代码风格-CSDN博客 husky 工具配置代码检查工作流的作用 在工作中,我们经常需要将写好的代码提交至代码仓库 但是由于程序员疏忽而将不规范的代码提交至仓库,显然是不合理的 所