【论文阅读】ViTAE:Vision transformer advanced by exploring intrinsic inductive bias

ViTAE:Vision transformer advanced by exploring intrinsic inductive bias

    • 论文地址
    • 摘要:
    • 简介:
    • 3 方法论
      • 3.1 重温视觉变压器
      • 3.2 ViTAE
      • 3.3 缩减单元
      • 3.4 Normal cell
      • 3.5 模型细节
    • 4 训练
      • 4.1 Implementation details
      • 4.2 Comparison with the state-of-the-art
    • 5 局限性与讨论
    • 6 总结

论文地址

1、论文地址
2、论文源码地址

摘要:

Transformer 在各种计算机视觉任务中显示出巨大的潜力,因为它们使用自注意力机制对远程依赖进行建模的强大能力。然而,视觉变换器将图像视为一维视觉标记序列,在建模局部视觉结构和处理尺度方差时缺乏内在的归纳偏差 (IB)。或者,他们需要大规模的训练数据和更长的训练计划来隐式学习 IB。在本文中,我们提出了一种新的 Vision Transformer Advanced by Exploring intrinsic IB from convolutions,即 ViTAE。从技术上讲,ViTAE 有几个空间金字塔缩减模块,通过使用具有不同扩张率的多个卷积对输入图像进行下采样并将其嵌入到具有丰富的多尺度上下文的标记中。通过这种方式,它获得了一个内在的尺度不变性 IB,并且能够为各种尺度的对象学习鲁棒的特征表示。此外,在每个转换器层中,ViTAE 都有一个与多头自注意力模块并行的卷积块,其特征被融合并馈入前馈网络。因此,它具有内在的局部性 IB,并且能够协同学习局部特征和全局依赖性。在 ImageNet 和下游任务上的实验证明了 ViTAE 优于基线转换器和并发工作。源代码和预训练模型将在代码处提供。

简介:

变形金刚[79, 17, 40, 14, 46, 61]在NLP研究中显示出支配趋势,因为它们在通过自我注意机制建模长期依赖方面具有很强的能力[67,81,51]。变形器的这种成功和良好特性激发了许多将它们应用于各种计算机视觉任务的工作[19,100,97,80,7]。其中,ViT [19] 是开创性的纯变压器模型,它将图像嵌入到一系列可视令牌中,并使用堆叠的变压器块对它们之间的全局依赖关系进行建模。尽管它在图像分类方面取得了可喜的表现,但它需要大规模的训练数据和更长的训练计划。一个重要原因是ViT在建模局部视觉结构(例如,边缘和角落)和处理各种尺度的对象(如卷积)时缺乏内在的归纳偏差(IB)。或者,ViT 必须从大规模数据中隐式地学习这种 IB。

与视觉转换器不同,卷积神经网络 (CNN) 自然地配备了尺度不变性和局部性的内在 IB,并且仍然作为视觉任务中的普遍骨干 [26, 70 , 62, 8, 96]。 CNN 的成功激励我们探索视觉转换器中的内在 IB。我们首先分析 CNN 的上述两个 IB,即局部性和尺度不变性。计算相邻像素之间局部相关性的卷积擅长提取边缘和角点等局部特征。因此,CNN 可以在浅层 [94] 提供丰富的低级特征,然后通过大量顺序卷积 [32、68、71] 逐渐将这些特征聚合成高级特征。此外,CNN 具有层次结构,可以在不同层提取多尺度特征 [68、38、26]。此外,层内卷积还可以通过改变内核大小和膨胀率来学习不同尺度的特征[25、70、8、45、96]。因此,可以通过层内或层间特征融合获得尺度不变的特征表示。然而,CNN 不太适合模拟长程依赖性 2,而这是 transformer 的主要优势。一个有趣的问题出现了:我们能否利用 CNN 的良好特性来改进视觉转换器?最近,DeiT [76] 探索了将知识从 CNN 提取到 Transformer 以促进训练和提高性能的想法。但是,它需要一个现成的 CNN 模型作为老师,并且会消耗额外的训练成本。

与 DeiT 不同的是,我们通过重新设计本文中的网络结构,将内在 IB 显式引入视觉转换器。当前的视觉转换器总是获得具有单尺度上下文的标记 [19、93、80、86、47、69、77],并学习适应来自数据的不同尺度的对象。例如,T2T-ViT [93] 通过以软分割方式巧妙地生成令牌来改进 ViT。具体来说,它使用一系列 Tokens-to-Token 转换层来聚合单尺度相邻上下文信息,并逐步将图像结构化为 tokens。受 CNN 在处理尺度方差方面的成功启发,我们探索了变压器中的类似设计,即具有不同感受野的层内卷积 [70、91],以将多尺度上下文嵌入到标记中。这样的设计允许令牌携带对象在各种尺度上的有用特征,从而自然地具有内在的尺度不变性 IB,并明确地促进变换器更有效地从数据中学习尺度不变的特征。另一方面,低级局部特征是生成高级判别特征的基本要素。尽管 transformer 也可以从数据中学习浅层的这些特征,但它们在设计上并不像卷积那样熟练。最近,[89、43、21] 按顺序堆叠卷积层和注意力层,证明局部性是对全局依赖性的合理补偿。但是,这种串行结构在局部建模期间忽略了全局上下文(反之亦然)。为了避免这种困境,我们遵循“分而治之”的思想,建议并行地对局部性和远程依赖性进行建模,然后融合这些特征来解释两者。通过这种方式,我们使 transformers 能够更有效地学习每个块内的局部和远程特征。

从技术上讲,我们提出了一种新的 Vision Transformers Advanced by Exploring Intrinsic Inductive Bias (ViTAE),它是两种基本单元的组合,即还原细胞 (RC) 和正常细胞 (NC)。 RCs 用于对输入图像进行下采样并将其嵌入到具有丰富的多尺度上下文的 token 中,而 NCs 旨在联合建模 token 序列中的局部性和全局依赖性。此外,这两种类型的细胞共享一个简单的基本结构,即并行的注意模块和卷积层,然后是前馈网络(FFN)。值得注意的是,RC 有一个额外的金字塔缩减模块,具有不同扩张率的空洞卷积,以将多尺度上下文嵌入到标记中。按照 [93] 中的设置,我们堆叠三个缩减单元以将空间分辨率降低 1/16,并堆叠一系列 NC 以从数据中学习判别特征。 ViTAE 在数据效率和训练效率(见图 1)以及下游任务的分类准确性和泛化方面优于代表性视觉转换器。

我们的贡献有三方面。
• 首先,我们探索了变压器中两种类型的内在 IB,即尺度不变性和局部性,并证明了该思想在提高变压器特征学习能力方面的有效性。
• 其次,我们基于两个新的还原和正常单元设计了一个名为 ViTAE 的新变压器架构,以内在地结合上述两个 IB。拟议的 ViTAE 将多尺度上下文嵌入到标记中,并学习局部和远程特征有效。
• 第三,ViTAE在分类精度、数据效率、训练效率和下游任务的泛化方面优于代表性视觉变压器。ViTAE 在 ImageNet 上分别实现了 75.3% 和 82.0% 的顶级 1 精度,参数分别为 4.8M 和 23.6M。

3 方法论

3.1 重温视觉变压器

我们首先对视觉变压器进行简要回顾。为了使变压器适应视觉任务,ViT [19] 首先将图像 x ∈ RH×W×C 拆分为还原比为 p 的标记(即 xt ∈ R((H×W)/p2)×D),其中 H、W 和 C 表示高度、宽度和通道尺寸输入图像 D = Cp2 表示令牌维度。然后,在以元素方式添加位置嵌入之前,将额外的类标记连接到可视标记。生成的令牌将馈送到以下转换器层。每个变压器层由多头自注意力模块(MHSA)和前馈网络(FFN)两部分组成。

MHSA多头自我注意通过为每个头部使用不同的投影矩阵来扩展单头自我注意(SHSA)。具体来说,输入标记 xt 首先使用投影矩阵投影到查询 (Q)、键 (K) 和值 (V),即 Q,K,V =xtWQ,xtQK,xtQV,其中 WQ/K/V ∈ RD×D 分别表示查询、键和值的投影矩阵。然后,该 SHSA 模块重复 h 次以制定 MHSA 模块,其中 h 是磁头数。 h个头的输出特征沿着通道维度连接起来,形成MHSA模块的输出。

FFN FFN被放置在MHSA模块之上,并且相同且分别应用于每个令牌。它由两个线性变换组成,中间有一个激活函数。
此外,在 MHSA 和 FFN 之前和旁边分别添加了层归一化 [2] 和快捷方式。
在这里插入图片描述

3.2 ViTAE

ViTAE 的概述架构旨在将 CNN 中的固有 IB 引入视觉转换器。如图 2 所示,ViTAE 由两种类型的细胞组成,即 RC 和 NC。 RC 负责将多尺度上下文和局部信息嵌入到令牌中,而 NC 用于进一步对令牌中的局部性和远程依赖性进行建模。以图像 x ∈ RH ×W ×C 作为输入,使用三个 RC 分别将 x 逐渐下采样 4×、2× 和 2×。因此,RC 的输出标记的大小为 [H/16,W/16,D],其中 D 是标记维度(在我们的实验中为 64)。然后 RC 的输出标记被展平为 RHW/256×D,与类标记连接,并通过正弦波位置编码添加。接下来,令牌被送入以下 NC,这些 NC 保持令牌的长度。最后,使用来自最后一个 NC 的类标记的线性分类层获得预测概率。
在这里插入图片描述

3.3 缩减单元

我们设计了缩减单元,将多尺度上下文和局部信息嵌入到视觉标记中,而不是直接将图像分割和展平为基于线性图像块嵌入层的视觉标记,这引入了内在的尺度不变性和局部性 IB卷积。
从技术上讲,RC 有两个并行分支分别负责建模局部性和远程依赖性,然后是一个用于特征转换的 FFN。
我们将第 i 个 RC 的输入特征表示为 fi ∈ RHi ×Wi ×Di 。第一个 RC 的输入是图像 x。

在全局依赖分支中,fi 首先被送入金字塔缩减模块 (PRM) 以提取多尺度上下文,即
在这里插入图片描述

(2) 其中Convij(·)表示PRM中的第j个卷积层(PRMi(·))。它使用来自对应于第 i 个 RC 的预定义扩张率集 Si 的扩张率 sij。请注意,我们使用步幅卷积从预定义的缩减比率集 R 中按比率 ri 缩减特征的空间维度。conv 特征沿通道维度连接,即 f ms ∈ iR(Wi/p)×(Hi/p) ×(|Si|D),其中|S|表示 S 中扩张率的数量。

然后通过 MHSA 模块 iii 处理 fms 以建模远程依赖性,即
在这里插入图片描述

(3) 其中 Img2Seq(·) 是一个简单的重塑操作,用于将特征图展平为一维序列。

通过这种方式,fig 将多尺度上下文嵌入到每个标记中。此外,我们使用并行卷积模块 (PCM) 将局部上下文嵌入标记中,这些标记与 fig 融合如下:
在这里插入图片描述

(4) 这里,PCMi(·)表示PCM,它由三个堆叠的卷积层和一个Img2Seq(·)操作组成。值得注意的是,并行卷积分支通过使用步长卷积具有与 PRM 相同的空间下采样率。这样,令牌特征可以携带局部和多尺度上下文,这意味着 RC 通过设计获得局部 IB 和尺度不变 IB。融合的标记然后由 FFN 处理,重塑回特征图,并馈送到以下 RC 或 NC,即
在这里插入图片描述

(5) 其中 Seq2Img(·)是一个简单的重塑操作,用于将标记序列重塑回特征图。 F F Ni (·) 表示第 i 个 RC 中的 FFN。在我们的 ViTAE 中,三个 RC 按顺序堆叠以分别逐渐将输入图像的空间维度减少 4×、2× 和 2×。最后一个RC生成的feature maps大小为[H/16, W/16, D],然后被压扁成visual tokens,送入后面的NCs。

3.4 Normal cell

在这里插入图片描述

如图右下部分所示如图 2 所示,除了没有 PRM 外,NC 与还原单元RC具有相似的结构。由于16RCs后feature map的空间尺寸相对较小(1×),NCs中没有必要使用PRM。

给定来自第三个 RC 的 f3,我们首先将它与类标记 tcls 连接起来,然后将它添加到位置编码中以获得后续 NC 的输入标记 t。在这里,为了清楚起见,我们忽略了下标,因为所有 NC 都具有相同的架构,但可学习的权重不同。 tcls 在训练开始时随机初始化,并在推理期间固定。

与 RC 类似,令牌被送入 MHSA 模块,即 tg = MHSA(t)。
同时,它们被重塑为 2D 特征图并输入 PCM,即 tl = Img2Seq(PCM(Seq2Img(t)))。请注意,类标记在 PCM 中被丢弃,因为它与其他视觉标记没有空间连接。为了进一步减少 NC 中的参数,我们在 PCM 中使用组卷积。

MHSA 和 PCM 的特征然后通过逐元素求和融合,即 tlg = tg + tl。
最后,将 tlg 馈入 FFN 得到 NC 的输出特征,即 tnc = F F N (tlg ) + tlg 。
与 ViT [19] 类似,我们对最后一个 NC 生成的类标记应用层归一化,并将其馈送到分类头以获得最终分类结果。

3.5 模型细节

我们在实验中使用了两种ViTAE变体,以公平地比较具有sim-ilar模型大小的其他模型。它们的详细信息总结在第一个RC的表 1.In 中,默认的convo-lution核大小为7×7,跨度为4,膨胀率为S1 = [1, 2, 3, 4]。在以下两个RC中,卷积核大小分别为3×3,步幅为2,膨胀率分别为S2 = [1, 2, 3]和S3 = [1, 2]。由于令牌的空间维度减小,因此无需使用大内核和膨胀率。RC 和 NC 中的 PCM 包括三个卷积层,内核大小为 3 × 3。
在这里插入图片描述

4 训练

4.1 Implementation details

我们在标准 ImageNet [38] 数据集上训练和测试了提议的 ViTAE 模型,该数据集包含约 130 万张图像并涵盖 1k 类。除非明确说明,否则训练期间的图像大小设置为 224 × 224。我们使用 AdamW [48] 优化器与余弦学习速率调度器,并使用与 T2T [93] 完全相同的数据增强策略进行公平比较,涉及训练策略和模型大小。我们使用 512 的批量大小来训练所有模型,并将初始学习率设置为 5e-4。我们的模型结果可以在表 2 中找到,其中所有模型都在 8 个 V100 GPU 上训练了 300 个 epoch。这些模型建立在 PyTorch [57] 和 TIMM [82

4.2 Comparison with the state-of-the-art

我们在表 2 中将我们的 ViTAE 与具有相似模型大小的 CNN 模型和视觉转换器进行了比较。报告了 ImageNet 验证集上的 Top-1/5 准确度和实际 Top-1 准确度。我们将这些方法分为 CNN 模型、具有学习 IB 的视觉转换器和具有引入的固有 IB 的视觉转换器。与 CNN 模型相比,我们的 ViTAE-T 达到了 75.3% 的 Top-1 准确率,优于参数更多的 ResNet-18。 ViTAE 模型的真实 Top-1 精度为 82.9%,与参数比我们多四倍的 ResNet-50 相当。同样,我们的 ViTAE-S 使用 ResNet-101 和 ResNet-152 一半的参数实现了 82.0% 的 Top-1 精度,显示了通过设计从具有相应内在 IB 的特定结构学习局部和远程特征的优越性。
将 ViTAE-T 与 MobileNetV1 [31] 和 MobileNetV2 [65] 进行比较时也可以观察到类似的现象,其中 ViTAE 使用更少的参数获得更好的性能。与根据 NAS [73] 搜索的较大模型相比,我们的 ViTAE-S 在使用 384 × 384 图像作为输入时实现了相似的性能,这进一步显示了具有固有 IB 的视觉转换器的潜力。此外,在转换器中通过学习 IB,ViT 是第一个用于视觉识别的纯 transformer 模型。 DeiT 与 ViT 具有相同的结构,但使用不同的数据增强和训练策略来促进 transformer 的学习。 DeiT⚗ 表示使用现成的 CNN 模型作为教师模型来训练 DeiT,它以知识蒸馏的方式隐式地将 CNN 的固有 IB 引入到 transformer,在 ImageNet 数据集上表现出比 vanilla ViT 更好的性能。令人兴奋的是,我们的 ViTAE-T 参数更少,甚至优于蒸馏模型 DeiT⚗,证明了通过设计在变压器中引入本征 IB 的功效。此外,与其他具有显式固有 IB 的变压器相比,我们的参数较少的 ViTAE 也实现了相当或更好的性能。例如,ViTAE-T 实现了与 LocalVit-T 相当的性能,但参数减少了 1M,证明了所提出的 RC 和 NC 在引入内在 IB 方面的优越性。

5 局限性与讨论

在本文中,我们探索了两种类型的 IB,并通过建议的还原和正常单元将它们合并到变压器中。通过这两个单元的协作,我们的 ViTAE 模型在 ImageNet 上以快速收敛和高数据效率实现了令人印象深刻的性能。然而,由于计算资源的限制,我们没有缩放 ViTAE 模型并在大型数据集上训练它,例如 ImageNet-21K [38] 和 JFT-300M [30]。虽然目前还不清楚,但从以下初步证据来看,我们对其规模属性持乐观态度。如图 2 所示,由于跳跃连接和并行结构,我们的 ViTAE 模型可以看作是互补变换层和卷积层的单元内集成。根据图 3 所示的注意力距离分析,集成特性使 transformer 层和卷积层能够专注于它们擅长的领域,即建模远程依赖性和局部性。因此,ViTAE 很有可能从大规模数据中学习到更好的特征表示。此外,我们在本文中只研究了两个典型的 IB。在未来的研究中可以探索更多种类的 IB,例如构成视点不变性 [64]。

6 总结

在本文中,我们重新设计了变压器模块,
提出了两个基本单元(还原单元和普通单元),
将两种类型的固有电感偏置(IB)集成到变压器中,即局部性和尺度不变性,
从而产生了一种简单而有效的视觉变压器架构ViTAE。

大量实验表明,ViTAE在分类精度、数据效率、训练效率和下游任务的泛化能力等多方面都优于代表性视觉变压器。

我们计划将ViTAE扩展到大型或巨大的模型大小,并在未来的研究中在大型数据集上进行训练。
此外,还将调查其他类型的IB。我们希望这项研究将为以下将内在IB引入视觉转换器以及了解内在和习得IB的影响的研究提供有价值的见解。

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

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

相关文章

云原生Service Mesh服务网格简单介绍

serviceMesh是什么 Service Mesh是一个用于处理服务间通信的基础设施层,旨在实现云原生应用复杂服务拓扑中的可靠请求传递。其基本构成是一组与应用一起部署的轻量级网络代理,这些代理对应用来说是透明的。Service Mesh通过统一的方式来控制和处理服务间…

EasyCVR视频汇聚平台无法自动播放视频的原因排查与解决

国标GB28181协议EasyCVR安防视频监控平台可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力,平台支持7*24小时实时高清视频监控,能同时播放多路监控视频流…

Canopen的cia402协议下通过SDO报文控制步进电机

Canopen的cia402协议控制步进电机 硬件搭建软件使用发送写SDO报文格式如下对于0x27、0x22、0x23、0x27、0x2B、0x2F解释简单的驱动器相关参数通常速度模式控制步骤如下 发送数据和驱动器返回数据如下图发送读SDO报文格式如下 硬件搭建 在某宝上随便买个支持CANopen协议的驱动&…

Redis入门到通关之数据结构解析-SkipList

文章目录 ☃️概述☃️总结 欢迎来到 请回答1024 的博客 🍓🍓🍓欢迎来到 请回答1024的博客 关于博主: 我是 请回答1024,一个追求数学与计算的边界、时间与空间的平衡,0与1的延伸的后端开发者。 博客特色&…

网站被SmartScreen标记为不安全怎么办?

在互联网时代,网站的安全性和可信度是用户选择是否继续访问的重要因素之一,然而,网站运营者偶尔会发现使用Edge浏览器访问网站时,会出现Microsoft Defender SmartScreen(以下简称SmartScreen)提示网站不安全…

文化旅游3D数字孪生可视化管理平台推动文旅产业迈向更加美好的未来

随着数字化、智能化管理成为文旅产业发展的必然趋势,数字孪生公司深圳华锐视点创新性地推出了景区三维可视化数字孪生平台,将线下的实体景区与线上的虚拟世界完美融合,引领智慧文旅新潮流。 我们运用先进的数字孪生、web3D开发和三维可视化等…

免费实用在线小工具

免费在线工具 https://orcc.online/ pdf在线免费转word文档 https://orcc.online/pdf 时间戳转换 https://orcc.online/timestamp Base64 编码解码 https://orcc.online/base64 URL 编码解码 https://orcc.online/url Hash(MD5/SHA1/SHA256…) 计算 https://orcc.online/ha…

论文笔记:Time-LLM: Time Series Forecasting by Reprogramming Large Language Models

iclr 2024 reviewer 评分 3888 1 方法 提出了 Time-LLM, 是一个通用的大模型重编程(LLM Reprogramming)框架将 LLM 轻松用于一般时间序列预测,而无需对大语言模型本身做任何训练 为什么需要时序数据和文本数据对齐:时…

重生之我是Nginx服务专家

nginx服务访问页面白色 问题描述 访问一个域名服务返回页面空白,非响应404。报错如下图。 排查问题 域名解析正常,网络通讯正常,绕过解析地址访问源站IP地址端口访问正常,nginx无异常报错。 在打开文件时,发现无法…

Spring Cloud Alibaba 项目搭建步骤和注意事项

Spring Cloud Alibaba 是一个基于 Spring Cloud 的微服务架构解决方案,它整合了阿里巴巴的多款开源组件,如 Nacos、Sentinel、RocketMQ 等,用于构建分布式微服务系统。 以下是使用 Spring Cloud Alibaba 搭建项目的基本步骤和注意事项&#x…

每日OJ题_DFS回溯剪枝⑦_力扣77. 组合

目录 力扣77. 组合 解析代码 力扣77. 组合 77. 组合 难度 中等 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1: 输入:n 4, k 2 输出: [[2,4],[3,4],[2,3],[1,…

Stable Diffusion中的embedding

Stable Diffusion中的embedding 嵌入,也称为文本反转,是在 Stable Diffusion 中控制图像样式的另一种方法。在这篇文章中,我们将学习什么是嵌入,在哪里可以找到它们,以及如何使用它们。 什么是嵌入embedding&#xf…

数据分析:生存分析原理和应用实例

介绍 生存分析的目的是分析某个时间点的“生存概率”是多少。基于这样的研究目的,需要提供生存数据,它是一种由不同的开始时间和结束时间组成的事件-时间的数据,比如在癌症研究领域,研究手术到死亡的过程、治疗到疾病进展等等。 在开展生存分析前,需要了解什么是删失(c…

知网怎么查重 知网查重的详细步骤

知网查重八个步骤:1. 访问官网,注册账号。2. 上传待查文档。3. 选择查重规则。4. 选择相似来源库。5. 提交查重任务。6. 等待查重结果。7. 获取查重报告。8. 下载查重报告。 知网查重的详细步骤 第一步:进入知网查重系统 打开浏览器&#x…

FPGA秋招-笔记整理(1)

一、关键路径 关键路径通常是指同步逻辑电路中,组合逻辑时延最大的路径(这里我认为还需要加上布线的延迟),也就是说关键路径是对设计性能起决定性影响的时序路径。也就是静态时序报告中WNS(Worst Nagative Slack&…

后端端口也可以直接在浏览器访问

比如在浏览器输入http://localhost:8078/hello/helloword访问的是后端的 RestController RequestMapping("/hello") public class HelloWord {RequestMapping("/helloword")public String helloWord(){return "hello word";} }浏览器将会返回

viewerjs在vue中实现点击图片预览、切换、缩放、拖拽、旋转等功能

1、下载依赖&#xff1a; npm i viewerjs 2、定义html结构 <template> <div><ul class"artBody"><li><img src"picture-1.jpg" alt"Picture 1"></li><li><img src"picture-2.jpg" alt&…

计算机找不到vcruntime140_1.dll,无法继续执行代码快速解决方法

vcruntime140_1.dll是一个重要的Windows操作系统中的动态链接库&#xff08;DLL&#xff09;文件&#xff0c;它是微软Visual C Redistributable软件包的组成部分。以下是该文件的详细介绍&#xff1a; 名称含义&#xff1a;“vcruntime”代表Visual C Runtime&#xff0c;表明…

主播美颜工具与视频美颜SDK:技术革新与实践探索

在直播行业&#xff0c;主播们对于自身形象的呈现越来越注重&#xff0c;而主播美颜工具和视频美颜SDK的问世&#xff0c;为他们提供了更多实现完美自我形象的可能性。接下来&#xff0c;我将为您讲解这些技术的技术革新和实践应用。 一、主播美颜工具&#xff1a;技术原理与特…

通过阿里云OOS实现定时备份redis实例转储到OSS

功能背景 随着企业业务数据的快速增长&#xff0c;Redis 作为高性能的内存数据存储方案&#xff0c;在多种应用场景下承担着重要的角色。为确保数据安全&#xff0c;定时备份成为了不可或缺的一环。Redis 实例定时备份是关键数据库管理任务的一个重要组成部分&#xff0c;它主…