当前位置: 首页 > news >正文

12、论文阅读:利用生成对抗网络实现无监督深度图像增强

Towards Unsupervised Deep Image Enhancement With Generative Adversarial Network

  • 摘要
  • 介绍
  • 相关工作
    • 传统图像增强
    • 基于学习的图像增强
  • 论文中提出的方法
    • 动机和目标
    • 网络架构
    • 损失函数
      • 1) 质量损失
      • 2) 保真损失
      • 3)身份损失
      • 4)Total Loss
  • 实验

摘要

提高图像的美学质量是一个挑战,并且受到公众的广泛关注。为了解决这个问题,大多数现有算法基于监督学习方法,旨在为成对数据学习一个自动照片增强器,该数据由低质量照片及其对应的专家修饰版本组成。然而,专家修饰的照片的风格和特征可能无法满足普通用户的需求或偏好。

本文提出了一种无监督图像增强生成对抗网络(UEGAN),该网络以无监督的方式从一组具有期望特征的图像中学习相应的图像到图像映射,而不是依赖于大量的成对图像。所提出的模型基于单一深度GAN,嵌入了调制和注意力机制,以捕捉更丰富的全局和局部特征。

在所提出的模型基础上,我们引入了两个损失函数来处理无监督图像增强:(1)保真损失,该损失被定义为预训练VGG网络特征域中的(L^2)正则化,以确保增强图像与输入图像之间的内容相同;(2)质量损失,该损失被表述为相对边际对抗损失,以赋予输入图像所需的特征。

介绍

随着移动互联网、智能电子设备和社交网络的快速发展,通过社交媒体和在线分享社区记录和上传人们精彩生活的方式变得越来越流行。然而,由于高质量硬件设备的高成本以及缺乏专业摄影技能,普通公众拍摄的照片的美学质量往往令人不满意。专业图像编辑服务费用昂贵,而且由于美学感受和偏好通常是个人问题,因此很难以自动化的方式提供此类服务。因此,提供用户导向的图像美化的自动图像增强技术更受欢迎。

与高质量图像相比,低质量图像通常在视觉质量上遭受多种降解,例如色彩不佳、对比度低和噪声强烈等。因此,图像增强过程需要通过一系列增强操作来解决这种降解,例如对比度增强、色彩校正和细节调整等。最早的传统图像增强方法主要集中在低质量图像的对比度增强上。最常见的直方图调整方法将低质量图像的亮度直方图转移到给定分布(可能由其他参考图像提供)上,以拉伸低质量图像的对比度。根据变换范围,这类方法可以进一步分为两类:全局直方图均衡化(GHE),和局部直方图均衡化(LHE)。前者使用单一的直方图变换函数来调整整个图像的所有像素。这可能导致某些局部区域增强结果不当,例如曝光不足、曝光过度、颜色失真等。为了解决这个问题,LHE基于局部区域的统计信息推导出内容自适应变换函数,并在局部应用这些变换。然而,LHE计算复杂,并不总是有效,因为提取的变换依赖于局部区域的主导信息。因此,它们也容易产生视觉上不令人满意的纹理细节、暗淡或过饱和的颜色。

在过去的几年里,深度卷积神经网络(CNN)在低级视觉任务中取得了显著进展。为了提高建模能力和适应性,基于深度学习的模型被构建,以引入深度网络卓越的表达能力,从而利用大数据的知识促进自动图像增强。Ignatov 等设计了一个端到端的深度学习网络,将移动设备的照片提高到数码单反相机(DSLR)照片的质量。Ren 等提出了一种混合损失,从色彩、纹理和内容三个方面优化框架,以生成更具视觉吸引力的结果。受到双边网格处理的启发,Gharbi 等使实时图像增强成为可能,这种方法动态生成基于局部和全局信息的图像变换。为了处理低光照图像增强,Wang 等建立了一个大规模的曝光不足图像数据集,并基于 Retinex 模型学习了图像与照明的映射,以增强极低光照的图像。

然而,这些方法遵循完全监督学习的路线,依赖于具有成对低/高质量图像的大规模数据集。首先,成对数据通常成本高昂,有时需要专业摄影师投入大量精力和资源来构建数据集。其次,图像质量的判断通常与个人的性格、美学、品味和经验密切相关。“在千人的眼中有千个哈姆雷特。”换句话说,每个人对摄影质量的态度都不同。为了证明这一点,在 MIT-Adobe FiveK 数据集中,我们展示了一张典型的低质量照片及其对应的五个由不同专家修饰的高质量版本(见图 1)。可以观察到,由一个专家处理的图像与另一位专家修饰的图像差异很大。因此,创建一个包含成对低质量和高质量图像的大规模数据集,以满足每个人的偏好是不切实际的。相反,更可行的方法是通过提供用户喜爱的图像集合来表达个人偏好。因此,急需构建一个增强模型,以便在没有特定成对图像的情况下,从低质量数据集学习增强映射到高质量数据集。通过这种方式,我们可以摆脱创建一对一成对数据的负担,仅依赖于某人所偏好的目标数据集及其期望的特征。

得益于生成对抗学习和强化学习(RL)的发展,一些研究尝试仅利用无配对数据来处理图像增强任务。无配对数据之间转移图像风格的里程碑式工作是 CycleGAN。该方法使用两个生成器和两个判别器,并利用循环一致性损失实现视觉上令人印象深刻的结果。Chen 等 提出了构建一个双向 GAN,并进行了三项改进,以将低质量图像转换为相应的高质量图像,实验结果表明该模型显著优于 CycleGAN。Hu 等设计了第一个基于 RL 的框架,以训练有效的照片后处理模型。Jiang 等在无监督框架下首次对低光照增强任务进行了研究。该方法应用自正则化的注意力生成器和双判别器,以在全局和局部指导生成器。

我们不是利用循环生成对抗网络(GAN)学习低质量照片与高质量照片之间的双向映射,而是构建了一个单向 GAN 来处理图像美学质量增强任务,称为无监督图像增强 GAN(UEGAN)

受到上述性质的启发,我们的网络由一个联合的全局和局部生成器以及一个具有有效约束的多尺度判别器组成

  1. 生成器由一个编码器和解码器组成,嵌入了全局注意力模块和调制模块,以在不同尺度上局部和全局地调整特征。多尺度判别器还在不同粒度级别检查结果,并指导生成器生成更好的结果,以获得全局一致性和更精细的细节。

  2. 为了保持内容的不变性,引入了一种保真损失,以正则化输入内容与结果内容之间的一致性。

  3. 从整个图像中提取的全局特征揭示了照明条件和颜色分布等高层信息。为捕捉这些特性,设计了全局注意力模块,根据局部邻域的信息调整像素,以满足局部适应性和全局一致性。

  4. 为了防止过度增强,引入了一种恒等损失,以约束高质量输入图像的增强结果与输入之间的一致性。这有助于控制增强过程使其更加无质量,并防止过度增强。

本文的主要贡献总结如下:

  • 我们设计了一个单一的 GAN 框架,摆脱了图像美学质量增强对成对训练数据的需求。根据我们所知,这是首次尝试使用单向 GAN 框架,将无监督学习应用于增强图像的美学质量(而不是低光照图像增强)。

  • 我们提出了一个全局注意力模块和一个调制模块,构建了联合的全局和局部生成器,以捕捉全局特征并自适应地调整局部特征。结合提出的多尺度判别器,以不同尺度检查生成结果的质量,最终生成的结果在感知和美学上都得到了很好的增强,具有全局一致性和更精细的细节。

  • 我们提议联合使用质量损失、保真损失和恒等损失来训练我们的模型,使其能够提取无质量特征并使增强过程对质量变化更加稳健。因此,我们的方法可以获得更合理的结果,并防止过度增强。针对各种数据集的大量实验结果定量和定性地证明了所提出模型的优越性。

相关工作

传统图像增强

在过去的几十年中,针对提高照片质量进行了广泛的研究。现有的大多数传统图像增强算法旨在拉伸对比度和提高锐度。以下三种方法是最具代表性的:直方图调整、锐化掩模和基于 Retinex 的方法。这些方法简要描述如下。

(1)直方图调整:基于将亮度直方图映射到特定分布的基本思想,许多方法根据整个图像的统计信息估计映射函数,然而,由于某些高频信息的主导作用,细节通常会过度增强。与其为整个图像估计一个单一的映射函数,其他方法则基于局部统计信息动态调整直方图。但是,更高的计算复杂性限制了该方法的适用性。

(2)锐化掩模:锐化掩模(UM)旨在提高图像的锐度。UM 方法的框架可以总结为以下两个阶段:首先,通过应用低通或高通滤波器将输入图像分解为基层和细节层。其次,细节层中的所有像素都被一个全局加权因子缩放,或者不同像素通过逐像素加权因子自适应缩放,然后再加回到基层中以获得增强版本。已经提出各种方法从两个方面改善 UM 的性能:1)设计更合理的层分解方法,以解耦不同频带 2)提出更好的估计算法来调整缩放因子。

(3)基于 Retinex 的方法:许多研究人员正在从事基于 Retinex 的图像增强研究,因为其具有明确的物理意义。Retinex 模型的基本假设是观察到的照片可以分解为反射和照明。增强后的图像依赖于分解的层,即照明层和反射层。因此,基于 Retinex 的模型通常被视为一个照明估计问题。然而,由于准确估计照明和反射图的模糊性和困难,这些方法可能会产生不自然的结果。

基于学习的图像增强

(1)监督学习方法:随着卷积神经网络(CNN)的爆炸性增长,基于学习方法的图像增强模型大量涌现,并取得了显著的结果。Yan 等人 首先探索了使用 CNN 进行照片编辑。Ignatov 等人构建了一个大规模的 DSLR 照片增强数据集(即 DPED),该数据集包含 6000 张同时由 DSLR 相机和三款智能手机拍摄的照片。通过成对的数据,很容易学习智能手机拍摄的低质量照片与专业 DSLR 相机拍摄的高质量照片之间的映射函数。Ren 等人提出了一个混合框架,通过共同考虑内容和结构来解决低光照增强问题。然而,这些模型的良好表现离不开大量退化图像及其对应高质量图像的配对这一前提。

(2)无监督学习方法:与超分辨率、去雨和去噪不同,高质量图像通常已经存在,其低质量版本可以通过退化轻松生成。在大多数情况下,图像增强需要在训练阶段生成低质量图像的高质量对应物,如果需要配对的低/高质量图像。高质量照片通常是由专家使用专业照片编辑程序(如 Adobe Photoshop 和 Lightroom)对低质量照片进行修饰获得的。这种方法成本高、耗时长,且编辑风格可能严重依赖于专家而非真实用户。为了摆脱配对训练数据,一些研究尝试使用无监督学习解决图像增强问题。受到知名的 CycleGAN启发,Chen 等人设计了一个双重 GAN 模型,以学习源域和目标域之间的双向映射。具体而言,从源域到目标域学习的变换首先用于生成高质量图像,然后学习从目标域到源域的反向映射,将生成的高质量图像转换回源域。引入循环一致性损失以强制输入的低质量照片与通过反向转换生成的图像之间的接近性。当两个双向生成器在两个域之间提供理想映射时,循环一致性效果良好。然而,当应用循环一致性时,GAN 的不稳定性增加了训练的难度,并使其面临局部最小值的风险。

论文中提出的方法

动机和目标

我们观察到专业摄影师在进行图像编辑时通常遵循以下直觉:

  • 全局变换与局部调整的结合:低质量图像与修饰后的版本之间的内容和内在语义信息应保持一致。专家可能首先会根据整体光照条件(例如,良好的曝光或欠/过曝光)和场景中的色调(例如,冷色调或暖色调)进行全局变换。然后,局部修正会基于全局信息和局部内容的综合考虑进行更细致的调整。

  • 防止过度增强:保真度与质量之间的权衡至关重要。过度增强会造成视觉效果,源于对与美感相关的图像特性的过度增强,例如非常暖的色调、高对比度和过度曝光等。然而,这也可能使得结果偏离保真度,产生不自然的效果。换句话说,一个好的自动照片增强器在产生良好的视觉效果时应该意识到过度增强的问题。

基于上述观察,我们致力于学习一个图像到图像的映射函数F,以生成给定低质量照片x1的高质量对应物 xg。该映射可以建模如下:
在这里插入图片描述
图像增强任务中的一个关键问题是如何定义质量和高质量。任何用户都可以轻松提供一组表达其个人偏好的图像,而无需明确说明他们所喜爱的质量。因此,与其将F定义为各种明确的规则,不如将其表述为在所需高质量图像分布的指导下,转化低质量图像分布的过程。这使我们能够在无监督的方式下,基于非配对数据学习用户导向的照片增强器。基于这一考虑,我们努力利用 GAN 的集合级监督,通过对抗学习实现我们的目标。

网络架构

  1. 联合全局与局部生成器:生成器在我们提出的 UEGAN 中发挥着关键作用,因为它直接影响最终生成照片的质量。专家可能首先根据场景中的整体光照条件或色调进行全局变换。因此,全局特征充当图像先验,指导生成并调整局部特征。基于这一观察,我们首先提出了一个全局注意力模块(GAM),以利用局部特征的全局注意力。每个特征图的通道通过卷积层从局部邻域中提取全局注意力的重点是对每个通道的“整体”理解

为了建模中间特征z ∈ RC×H×W的全局注意力,我们提出的方法可以总结为以下三个步骤,如图 3 所示:

  1. 通过公式 (2) 提取每个通道的全局统计信息在这里插入图片描述

  2. 利用提取的 gmean通过多层感知机在这里插入图片描述
    挖掘通道间的关系𝜌,如公式 (3) 所示;

  3. 通过公式 (4) 融合全局和局部特征。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述表示平均池化操作,
在这里插入图片描述是两个全连接层,
表示将ρ的空间维度扩展到 𝑧的维度,
是连接操作,
在这里插入图片描述是卷积层。

图 2 显示了联合全局与局部生成器中的调制模块 (MM)。特别是,我们在不同的尺度上使用跳过连接(skip connections)连接编码器和解码器,以防止由于分辨率变化而导致的信息丢失。与传统的 U-Net 不同,我们在每个阶段(即模型中的四个阶段)将编码器的特征与对称解码器的特征进行拼接。我们提出的调制模块学习生成两条特征分支,然后通过乘法操作将它们合并在一起。在我们的模型中,为了进一步重用特征,学习到的调制层通过逐元素乘法将编码器第一阶段的特征与倒数第二层的特征相乘。学习全局特征和特征调制可以有效增强生成图像的视觉效果。全局特征还可以用于惩罚一些可能导致视觉伪影或重构细节不佳的低质量特征。复杂的图像处理可以通过一组简单的局部平滑曲线近似,因此,提出的联合全局与局部生成器G比传统的 U-Net 更能够学习从低质量图像到高质量图像的复杂映射。
在这里插入图片描述

  1. 多尺度鉴别器: 为了区分真实的高质量图像和生成的“伪”高质量图像,鉴别器需要一个大的感受野来捕捉全局特征。这直接导致了对更深的网络或更大卷积核的需求。鉴别器的最后一层通常捕捉来自图像较大区域的信息,并能指导生成器产生具有更好全局一致性的图像。然而,具有较小感受野的鉴别器中间层可以迫使生成器更关注更精细的细节。基于这一观察,如图 2 所示,我们提出了一个多尺度鉴别器D,该鉴别器使用多尺度特征来指导生成器生成具有全局一致性和更精细细节的图像。

损失函数

1) 质量损失

我们使用质量损失来调整增强结果的分布,使其接近高质量图像的分布。质量损失引导生成器生成更具视觉吸引力的结果。在之前的 GAN 框架中,鉴别器的目的是区分真实样本和生成的样本。然而,我们观察到,仅仅使用鉴别器D来区分生成的图像和真实的高质量图像不足以获得一个能够将低质量图像转化为高质量图像的优秀生成器。这可能是因为低质量和高质量图像之间存在质量模糊性,低质量图像集中有些图像可能比高质量图像集中的图像更好。

为了解决这个问题,我们还训练鉴别器来区分真实的低质量图像和真实的高质量图像,如图 2 所示。

具体来说,我们提出的鉴别器基于最近提出的相对鉴别器结构,它不仅评估真实数据(即真实的高质量图像)比假数据(即生成的高质量图像或真实的低质量图像)更真实的概率,还指导生成器生成比真实高质量图像更逼真的高质量图像。此外,我们采用了改进形式的相对鉴别器——相对平均 HingeGAN (RaHingeGAN),公式如下:
在这里插入图片描述
其中 xl 、 xh 和 xg 分别表示真实的低质量图像、真实的高质量图像和生成的高质量图像。

2) 保真损失

由于我们以无监督的方式训练模型进行图像增强,仅依靠质量损失可能无法确保生成的图像与输入的低质量图像具有相似的内容。最简单的方法是测量输入和输出图像在像素域中的距离。然而,由于生成的高质量图像通常在像素域中与输入的低质量图像不同,原因在于对比度拉伸和颜色渲染,我们无法采用这种策略。因此,我们使用保真损失来约束生成器的训练,以实现生成的高质量图像和输入的低质量图像在内容上的相似性。保真损失定义为输入低质量图像和生成的高质量图像通过预训练 VGG 网络提取的特征图之间的L2范数,公式如下:
在这里插入图片描述
其中,φ j (·)表示通过 VGG 网络的第j层提取特征图的过程,J是使用的层数总数。在本文中,我们具体采用了 VGG-19 网络的 Relu_1_1、Relu_2_1、Relu_3_1、Relu_4_1 和 Relu_5_1 层。

3)身份损失

身份损失定义为输入高质量图像与生成器G输出之间的L1距离,如下所示:
在这里插入图片描述
其中,xh 表示从高质量图像集Ph中采样的图像。身份损失是基于高质量输入图像计算的。因此,如果输入图像的颜色分布和对比度符合高质量图像集的特征,身份损失将鼓励在输入和输出之间保留颜色分布和对比度。它确保生成器在图像增强过程中几乎不改变图像的内容、对比度和颜色,从而避免过度增强。

4)Total Loss

通过综合考虑质量损失(quality loss)、保真度损失(fidelity loss)和身份损失(identity loss),我们最终的损失定义为这些损失的加权和,如下所示:

在这里插入图片描述

其中 λqua、λfid 和 λidt 是权重参数,用于平衡 LG qua、Lfid 和 Lidt 的相对重要性。

实验

相关文章:

12、论文阅读:利用生成对抗网络实现无监督深度图像增强

Towards Unsupervised Deep Image Enhancement With Generative Adversarial Network 摘要介绍相关工作传统图像增强基于学习的图像增强 论文中提出的方法动机和目标网络架构损失函数1) 质量损失2) 保真损失3)身份损失4)Total Loss 实验 摘要 提高图像的…...

Axure重要元件三——中继器表单制作

亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢! 本节课:中继器表单制作 课程内容:利用中继器制作表单 应用场景:台账、表单 案例展示: 步骤一:建立一个背景区…...

DMAIC赋能智能家居:解锁未来生活新篇章!

从清晨自动拉开的窗帘,到夜晚自动调暗的灯光,每一处细节都透露着科技的温度与智慧的光芒。而在这场智能革命的浪潮中,DMAIC(定义Define、测量Measure、分析Analyze、改进Improve、控制Control)作为六西格玛管理的核心方…...

代码随想录算法训练营第二天| 209.长度最小的子数组 59.螺旋矩阵II 区间和 开发商购买土地

209. 长度最小的子数组 题目: 给定一个包含正整数的数组 nums 和一个正整数 target ,找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 ,并返回其长度。如果不存在符合条件的子数组,返回 0。 示例: 示例 1…...

mysql隐藏索引

1. 什么是隐藏索引? 在 MySQL 8 中,隐藏索引(Invisible Indexes)是指一种特殊类型的索引,它并不真正被删除,而是被标记为“不可见”。当索引被标记为不可见时,查询优化器在生成查询计划时将忽略…...

etcd入门到实战

概述:本文将介绍etcd特性、使用场景、基本原理以及Linux环境下的实战操作 入门 什么是etcd? etcd是一个分布式键值存储数据库 关键字解析: 键值存储:存储协议是 key—value 的形式,类似于redis分布式:…...

Build an Android project and get a `.apk` file on a Debian 11 command line

You can build an Android project and get a .apk file on a Debian 11 command line without using Android Studio. The process involves using the Android SDK command-line tools (sdkmanager, adb, and gradle). Here’s a step-by-step guide to building the ???…...

解读 Java 经典巨著《Effective Java》90条编程法则,第4条:通过私有构造器强化不可实例化的能力

文章目录 【前言】欢迎订阅【解读《Effective Java》】系列专栏java.lang.Math 类的设计经验总结 【前言】欢迎订阅【解读《Effective Java》】系列专栏 《Effective Java》是 Java 开发领域的经典著作,作者 Joshua Bloch 以丰富的经验和深入的知识,全面…...

Vivado HLS学习

视频链接: 6课:数据类型的转换_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1bt41187RW?spm_id_from333.788.videopod.episodes&vd_sourcea75d5585c5297210add71187236ec90b&p6 目录 1.数据类型的转换 2.自动类型转换 2.1隐式数据转换 2.2…...

一款AutoXJS现代化美观的日志模块AxpLogger

简介 Axp Logger是一款基于autox.js的现代化日志模块,具备窗口事件穿透、拖拽和缩放功能。 Axp Logger文档 特性现代化的UI设计支持点击穿透模式(不影响脚本运行)监听音量-键切换模式支持窗口操作模式窗口拖拽移动窗口自由缩放清空日志关闭日…...

成都睿明智科技有限公司共创抖音电商新篇章

在当今这个数字化浪潮汹涌的时代,抖音电商以其独特的魅力迅速崛起,成为众多商家竞相追逐的新蓝海。在这片充满机遇与挑战的领域中,成都睿明智科技有限公司凭借其专业的服务、创新的策略和敏锐的市场洞察力,成为了众多商家信赖的合…...

Spark的安装配置及集群搭建

Spark的本地安装配置&#xff1a; 我们用scala语言编写和操作spark&#xff0c;所以先要完成scala的环境配置 1、先完成Scala的环境搭建 下载Scala插件&#xff0c;创建一个Maven项目&#xff0c;导入Scala依赖和插件 scala依赖 <dependency><groupId>org.scal…...

网络编程基础-IO模型深入理解

一、IO的基本概念 什么是IO&#xff1f; I/O就是计算机内存与外部设备之间拷贝数据的过程 什么是网络IO&#xff1f; 网络IO是指在计算机网络环境中进行的输入和输出操作&#xff0c;涉及数据在网络设备之间的传输。 网络IO操作可以是发送请求、接收响应、下载文件、传输数…...

go 语言学习路线图(一)

1. Go语言简介 Go语言的历史背景和设计理念Go的优势&#xff1a;简洁、高效、并发支持强Go的应用场景&#xff1a;微服务、云计算、系统编程 2. 开发环境设置 安装Go语言开发环境 在Windows、macOS、Linux系统上的安装方法 配置环境变量&#xff1a;GOROOT 和 GOPATH验证安装…...

前端自动化部署,Netlify免费满足你

1 Netlify 介绍 为什么推荐 Netliy &#xff0c; 主要还是穷&#xff0c;Netlify 免费太香了 Netlify you优势100GB 内免费 &#xff0c;满足个人日常 需求&#xff0c;操作,兼容性绑定代码仓库&#xff0c;提交代码自动部署 支持 github , gitlab 等 大多常用代码仓库易操作只…...

Linux的开发工具gcc Makefile gdb的学习

一&#xff1a;gcc/g 1. 1 背景知识 1. 预处理&#xff08;进行宏替换) 预处理 ( 进行宏替换 ) 预处理功能主要包括宏定义,文件包含,条件编译,去注释等。 预处理指令是以#号开头的代码行。 实例: gcc –E hello.c –o hello.i 选项“-E”,该选项的作用是让 gcc 在预处理结…...

基于SSM出租车管理系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;车辆管理&#xff0c;驾驶员管理&#xff0c;基础数据管理&#xff0c;公告管理 驾驶员账号功能包括&#xff1a;系统首页&#xff0c;学生管理&#xff0c;车辆管理&#xff0c;公告管理 开发系统&a…...

iPhone照片内存怎么清理,参考这些方法

随着拍摄数量的增加&#xff0c;许多iPhone用户常常发现自己的手机存储空间不足&#xff0c;而照片无疑是占用空间的罪魁祸首之一。清理这些照片不仅能释放存储空间&#xff0c;还能提升设备的运行速度。小编将分享一些iPhone照片内存怎么清理的高效策略&#xff0c;助你告别冗…...

【Triton教程】向量相加

Triton 是一种用于并行编程的语言和编译器。它旨在提供一个基于 Python 的编程环境&#xff0c;以高效编写自定义 DNN 计算内核&#xff0c;并能够在现代 GPU 硬件上以最大吞吐量运行。 更多 Triton 中文文档可访问 →https://triton.hyper.ai/ 在本教程中&#xff0c;你将使…...

关于CSS中毛玻璃和滤镜使用总结

【1】毛玻璃 毛玻璃效果&#xff08;也称为磨砂玻璃效果&#xff09;可以通过 CSS 的 backdrop-filter 属性来实现。这个属性允许你在背景上应用各种滤镜效果&#xff0c;从而创建出类似磨砂玻璃的效果。这种效果通常用于创建半透明背景下的模糊效果&#xff0c;使得背景图像或…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性&#xff0c;不同版本的Docker对内核版本有不同要求。例如&#xff0c;Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本&#xff0c;Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

CMake基础:构建流程详解

目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异&#xff0c;它们的数据同步要求既要保持数据的准确性和一致性&#xff0c;又要处理好性能问题。以下是一些主要的技术要点&#xff1a; 数据结构差异 数据类型差异&#xff…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

MySQL中【正则表达式】用法

MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现&#xff08;两者等价&#xff09;&#xff0c;用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例&#xff1a; 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

MySQL用户和授权

开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务&#xff1a; test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...

大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计

随着大语言模型&#xff08;LLM&#xff09;参数规模的增长&#xff0c;推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长&#xff0c;而KV缓存的内存消耗可能高达数十GB&#xff08;例如Llama2-7B处理100K token时需50GB内存&a…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...

BLEU评分:机器翻译质量评估的黄金标准

BLEU评分&#xff1a;机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域&#xff0c;衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标&#xff0c;自2002年由IBM的Kishore Papineni等人提出以来&#xff0c;…...