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

《AudioCLIP: Extending CLIP to Image, Text and Audio》中文校对版

文章汉化系列目录


文章目录

  • 文章汉化系列目录
  • 摘要
  • 引言
  • 2 相关工作
  • 3 模型
    • 3.1 CLIP
    • 3.2 ESResNeXt
    • 3.3 混合模型 – AudioCLIP
  • 4 实验设置
    • 4.1 数据集
    • 4.2 数据增强
    • 4.3 训练
    • 4.4 超参数
    • 4.5 性能评估
  • 5 结果
    • 5.1 分类
    • 5.2 查询
  • 6 结论


摘要

 摘要:在过去,快速发展的声音分类领域极大地受益于其他领域方法的应用。如今,我们观察到将特定领域的任务和方法融合在一起的趋势,这为研究社区带来了新的卓越模型。在本研究中,我们提出了一个扩展版的 CLIP 模型,该模型除了处理文本和图像外,还可以处理音频。我们将 ESResNeXt 音频模型与 CLIP 框架结合,使用 AudioSet 数据集进行训练。这样的组合使得该模型能够进行双模态和单模态的分类和查询,同时保留 CLIP 在零样本推理中对未见数据集进行泛化的能力。AudioCLIP 在环境声音分类(ESC)任务中达到了新的最先进成果,在 UrbanSound8K 数据集上达到了 90.07% 的准确率,在 ESC-50 数据集上达到了 97.15% 的准确率,超过了其他方法。此外,它还在相同数据集上的零样本 ESC 任务中建立了新的基准(分别为 68.78% 和 69.40%)。最后,我们还评估了所提出模型的跨模态查询性能,以及完全训练和部分训练对结果的影响。为了确保可重复性,我们公开了代码。

引言

 声音分类领域的最新进展提供了许多功能强大的音频模型,并展示了令人印象深刻的效果。广泛知名的数据集(如 AudioSet [7]、UrbanSound8K [25] 和 ESC-50 [19])的结合,以及特定领域和跨领域技术的应用,促成了专注于音频的研究方法和技术的快速发展 [15,10,30]。以往,研究人员主要集中于仅利用可听模态的分类任务。然而,近年来,多模态方法在音频相关任务中的应用越来越受欢迎 [14,2,34]。在应用于特定音频任务时,这种方法通常会结合文本或视觉模态一起使用音频。尽管音频与额外模态的结合并不罕见,但在音频领域中,三种以上模态的组合仍较为少见。

 然而,质量标注数据的数量有限,限制了该领域在单模态和多模态方向的发展。这种数据缺乏为研究带来了挑战,并引发了对基于文本描述的对比学习方法的零样本和小样本学习方法的兴趣 [13,32,33]。在我们的工作中,我们提出了一种将高性能音频模型(ESResNeXt [10])与一个对比文本-图像模型(即 CLIP [21])相结合的方法,从而获得了一个三模态的混合架构。基础的 CLIP 模型在原始论文 [21] 中被称为具有“零样本推理”能力,展示了出色的性能和强大的领域适应能力。为了与 CLIP 的术语保持一致,我们在此使用“零样本”一词按照 [21] 中定义的意义进行说明。

 如我们将看到的,在训练过程中联合使用三种模态,不仅在环境声音分类任务中超越了之前的模型,还将基础架构的零样本能力扩展到了音频模态,并引入了使用文本、图像和音频任意组合进行跨模态查询的能力。本文的剩余部分安排如下:第2节讨论当前处理音频的单独方法以及与额外模态的联合方法。然后,我们在第3节描述构成我们所提混合架构基础的模型,在第4节介绍其训练和评估方法,并在第5节呈现获得的结果。最后,在第6节中,我们总结了我们的工作并指出了后续的研究方向。

2 相关工作

 本节概述了我们研究中涉及的音频相关任务和方法。首先介绍环境声音分类任务,然后通过描述现有的多模态处理方法,将其与零样本分类联系起来。环境声音分类任务的目标是为日常生活中常见的声音类别(例如“闹钟”、“汽车喇叭”、“风镐”、“鼠标点击”、“猫”)分配正确的标签。为成功解决这一任务,提出了多种方法,包括在静态 [18,24,32,9,15,17,33,8,30] 或可训练的时间-频率转换 [23,10] 上使用一维或二维卷积神经网络(CNN)来处理原始音频。最早的研究依赖于任务特定的模型设计,而后来的研究结果则表明从视觉领域进行领域适应是有益的 [9,17,10]。

 然而,视觉模态最初是以顺序的方式使用的,即每次只处理一种模态。多模态的联合使用首先出现在视频相关任务 [14,34,6] 中,之后才被应用于声音分类任务 [13,31]。尽管这些方法具有多模态设计,但最多只同时使用了两种模态,而最新研究表明,更多模态的使用是有利的 [2,1]。上述的多模态方法的共同关键思想是对比学习。这一技术属于自监督学习范畴,具有克服标注质量数据不足的优势,使得可以将基于对比学习的训练应用于零样本分类任务 [13,32,33]。

 总而言之,我们提出的模型使用对比学习来对文本、视觉和听觉模态进行训练,能够执行特定模态的分类,或更为广泛的查询,并能够在零样本推理环境中泛化到未见的数据集。

3 模型

 本节描述了构成所提出模型的关键组件及其处理输入的方式。从宏观角度来看,我们的混合架构结合了用于视觉和文本模态的基于 ResNet 的 CLIP 模型 [21],以及用于听觉模态的 ESResNeXt 模型 [10],如图1所示。
在这里插入图片描述

图1. 所提出的 AudioCLIP 模型概述:左侧显示了文本-图像模型 CLIP 的工作流程。通过对文本和图像头的联合训练,CLIP 学会在共享的多模态嵌入空间中对齐相同概念的表示。右侧显示了音频模型 ESResNeXT。这里加入了听觉模态,使该模型可以同时处理三种模态,实现多模态的交互。

3.1 CLIP

 在概念上,CLIP 模型由两个子网络组成:文本编码头和图像编码头。CLIP 模型的两个部分在自然语言监督下进行了联合预训练 [21]。这样的训练设置使得模型能够将分类能力泛化到属于先前未见数据集的图像样本,而无需额外的微调。对于文本编码部分,使用了略微修改的 Transformer [29] 架构 [21,22]。在所选的 12 层模型中,输入文本采用小写字节对编码表示,词汇量为 49,408 [21]。由于计算限制,最大序列长度被裁剪至 76 [21]。

 在 CLIP 模型的图像编码部分,考虑了两种不同的架构。一种是 Vision Transformer (ViT) [5,21],其架构使其与文本头相似。另一种选择是经过修改的 ResNet-50 [11],其中的全局平均池化层被替换为 QKV 注意力层 [21]。如我们在 3.1 节中所提到的,由于 ResNet 架构相比 ViT 架构具有较低的计算复杂度,我们在所提出的混合模型中选择了基于 ResNet 的 CLIP 变体。

 对于大小为 N N N 的输入批次(文本-图像对),CLIP 的两个子网络分别生成对应的嵌入,并将其线性映射到大小为 1,024 的多模态嵌入空间 [21]。在这种设置下,CLIP 学会最大化匹配的文本和视觉表示之间的余弦相似度,同时最小化错误配对之间的相似度。这是通过在相似度度量上使用对称交叉熵损失实现的 [21]。

3.2 ESResNeXt

 在音频编码部分,我们选择应用基于 ResNeXt-50 [3] 架构的 ESResNeXt 模型 [10],该模型包含基于复杂频率 B 样条小波 [26] 的可训练时频变换。所选模型包含适量的参数(约 3000 万),在大型音频数据集 AudioSet [7] 上表现优异,并在 UrbanSound8K [25] 和 ESC-50 [19] 数据集上提供了最先进的分类效果。此外,ESResNeXt 模型支持多通道音频输入的隐式处理,并在抗加性白高斯噪声和采样率降低方面提供了更高的鲁棒性 [10]。

3.3 混合模型 – AudioCLIP

 在本研究中,我们在新的 CLIP 框架中引入了额外的“听觉”模态,从而自然地扩展了现有模型。我们将新加入的模态视为与原有模态同等重要。这样的修改成为可能,部分原因在于我们选择了适合此任务的 AudioSet 数据集(详见 4.1 节)。因此,提出的 AudioCLIP 模型包含三个子网络:文本、图像和音频头。在现有的文本-图像相似度损失项的基础上,引入了两个新的损失项:文本-音频和图像-音频。该模型能够同时处理三种模态,也可以仅处理其中任意两种模态的组合。

4 实验设置

 本节描述了所使用的数据集、应用的数据增强方法、训练过程及其对应的超参数,并最终说明了性能评估方法。

4.1 数据集

 在本研究中,直接或间接使用了五个图像、音频和混合数据集。以下是这些数据集的描述及其在训练和评估过程中的作用定义。

  • 复合 CLIP 数据集:为训练 CLIP,作者构建了一个新的数据集。该数据集包含约 4 亿对文本-图像对,基于约 50 万个文本查询构建,每个查询至少涵盖约 2 万对 [21]。在本研究中,CLIP 数据集被间接用作文本和图像头的权重初始化(CLIP 模型)。

  • ImageNet:ImageNet 是一个大型视觉数据集,包含超过 100 万张跨越 1,000 类的图像 [4]。在本研究中,ImageNet 数据集用于 ESResNeXt 模型的权重初始化,并作为零样本推理任务的目标数据集。

  • AudioSet:AudioSet 数据集 [7] 提供了一个大规模音频集合(约 180 万个样本,2 万个评估集样本),按 527 类非排他性组织。每个样本为一个 YouTube 视频片段(最长 10 秒),由对应的 ID 和时间戳定义。为本研究,我们在获取音频的同时还获得了视频帧。因此,AudioSet 成为基础 CLIP 框架与我们三模态扩展的连接纽带。具体来说,音频及其对应的类别标签用于对 ESResNeXt 模型进行图像到音频的迁移学习,之后,将音频、类别名称以及提取的帧作为混合 AudioCLIP 模型的输入。在训练期间,从视频中等距提取十帧,随机选择其中一帧(服从均匀分布 ∼ U \sim U U)传递给 AudioCLIP 模型。在评估阶段,使用相同的提取方法,但只向模型提供中心帧。性能指标基于 AudioSet 数据集的评估集报告。

  • UrbanSound8K:UrbanSound8K 数据集提供了 8,732 个单声道和双声道音频片段,采样频率在 16-48 kHz 范围内,每个片段不超过 4 秒。音频按十个类别组织:“空调”、“汽车喇叭”、“儿童玩耍”、“狗叫”、“钻孔”、“发动机怠速”、“枪声”、“风镐”、“警笛”和“街头音乐”。为确保评估过程的准确性,UrbanSound8K 数据集被其作者分为 10 个不重叠的折叠 [25],本研究也使用了该划分。在该数据集上,使用基于 AudioSet 训练的 AudioCLIP 模型进行了零样本推理。此外,还对音频编码头在 UrbanSound8K 数据集上进行了独立和协同方式的微调,并评估了两种设置下的分类性能。

  • ESC-50:ESC-50 数据集包含 2,000 个单通道、5 秒长的音频片段,采样率为 44.1 kHz。顾名思义,该数据集由 50 个类别组成,可分为 5 大类:动物、自然与水声、非语言人声、室内音和室外音。为确保评估过程的准确性,ESC-50 数据集被其作者分为 5 个不重叠的折叠 [19],本研究也采用了该划分。在该数据集上,使用基于 AudioSet 训练的 AudioCLIP 模型进行了零样本推理。此外,还对音频编码头在 ESC-50 数据集上进行了独立和协同方式的微调,并评估了两种设置下的分类性能。

4.2 数据增强

 相比复合 CLIP 数据集(详见 4.1 节),音频数据集的训练样本量少了两个数量级,这导致了过拟合问题,特别是在 UrbanSound8K 和 ESC-50 数据集上。为解决此问题,应用了几种数据增强技术,具体如下。

  • 时间缩放:通过沿时间轴的随机缩放来实现轨道持续时间和音高的同时变化。这种增强结合了两种计算开销较大的技术,即时间拉伸和音高移位。作为上述技术组合的更快速替代方案,时间缩放在随机因子范围 [ − 1.5 , 1.5 ] [-1.5, 1.5] [1.5,1.5] 内(服从均匀分布 ∼ U \sim U U)提供了一种轻量但有效的抗过拟合方法 [9]。

  • 时间反转:沿时间轴反转音轨类似于图像的随机翻转,这是一种在视觉领域广泛使用的增强技术。本研究中,对训练样本应用了 0.5 概率的随机时间反转,与 [10] 类似。

  • 随机裁剪和填充:由于在模型处理前需要对轨道持续时间进行对齐,因此对于比未增强数据集中最长轨道长或短的样本,分别应用了随机裁剪或填充。在评估阶段,随机操作替换为中心裁剪或填充。

  • 随机噪声:在视觉相关任务中,添加随机噪声被证明有助于克服过拟合 [12]。此外,对 ESResNeXt 模型的鲁棒性评估表明,该音频编码模型在添加白高斯噪声(AWGN)方面表现出较强的抗性 [10]。本研究中,利用 AWGN 扩展了数据增强技术集合,其中信噪比在 10.0 dB 到 120 dB 范围内随机变化(服从均匀分布 ∼ U \sim U U),噪声存在的概率设为 0.25。

4.3 训练

 整个训练过程被分为几个连续步骤,以确保最终的 AudioCLIP 模型的可靠性和高性能。如在 3.1 节所述,我们选择了基于 ResNet 的 CLIP 文本-图像模型,该模型已经在其自有数据集上进行了预训练(详见 4.1 节)[21],并将其与使用 ImageNet 权重初始化、然后在 AudioSet 数据集上预训练的 ESResNeXt 音频模型相结合 [10]。尽管 CLIP 模型已经在文本-图像对上进行了预训练,但我们决定首先对音频头进行扩展的 AudioSet 预训练,因为这样可以提升基础 ESResNeXt 模型的性能(见表 1),然后在三模态设置中继续训练,将其与其他两个头一起组合。

 在此阶段,整个 AudioCLIP 模型在 AudioSet 数据集上进行联合训练,使用音频片段、相应的视频帧和分配的文本标签。最后,训练好的 AudioCLIP 模型的音频头在 UrbanSound8K 和 ESC-50 数据集上以双模态方式(音频和文本)进行微调,使用声音记录及相应的文本标签。训练后的 AudioCLIP 模型及其音频编码头分别在 ImageNet 数据集以及三个音频数据集(AudioSet、UrbanSound8K 和 ESC-50)上进行了评估。

音频头预训练:音频头参数的初始化分为两个步骤。首先,ImageNet 初始化的 ESResNeXt 模型在 AudioSet 数据集上独立训练。然后,将预训练的音频头整合进 AudioCLIP 模型,并在文本和图像头的协同监督下继续训练。

  • 独立训练:第一步预训练使用 AudioSet 数据集作为权重初始化。此时,ESResNeXt 模型的训练配置与 [10] 中描述的设置相同,唯一区别在于训练轮数。在本研究中,我们延长了训练时间,从而在 AudioSet 数据集及后续下游任务中获得了更好的评估性能,具体描述见 5.1 节并量化验证。

  • 协同训练:音频头的进一步预训练与文本头和图像头一起进行。在此,独立预训练的音频头稍作调整,将其分类层替换为随机初始化的新层,新层的输出神经元数等于 CLIP 嵌入空间的大小。在这种设置下,音频头作为 AudioCLIP 模型的一部分进行训练,使其输出与基础 CLIP 模型的嵌入兼容。在音频编码头的协同预训练过程中,文本和图像头的参数被冻结,作为多模态知识蒸馏设置中的教师。以这种方式训练的 AudioCLIP 模型的性能进行了评估,详细内容见第 5 节。
    AudioCLIP 训练:音频头的联合训练使其与基础 CLIP 模型兼容。然而,AudioSet 数据集中的图像和文本描述的分布不同于 CLIP 数据集,这可能会导致生成的 AudioCLIP 模型在目标数据集和下游任务上的性能不理想。为了解决这一问题,我们决定在 AudioSet 数据集上训练整个三模态模型。在此过程中,所有三种模态专用的头部被共同调优,使生成的模型不仅考虑音频样本的分布,还考虑了图像和文本描述(视频帧和对应 AudioSet 类别名称)的分布。相比于仅训练音频头,整个模型训练对网络性能的影响详见第 5 节。

音频头微调:训练好的 AudioCLIP 模型提供了通用的多模态分类和查询功能。然而,在某些条件下,需要获得一个更具领域特定性的模型,以便区分细微差异的概念。为满足这一需求,我们对音频编码头进行了在 UrbanSound8K 和 ESC-50 数据集上的微调实验。

  • 独立微调:作为音频头的 ESResNeXt 模型在选定的下游任务中表现出强大的分类能力 [10]。我们在执行 AudioSet 预训练步骤后,对其在 UrbanSound8K 和 ESC-50 数据集上进行了微调,以评估分类准确率的变化。微调步骤与 [10] 中的方法相同,即将分类层替换为一个随机初始化的新层,输出数由下游任务的目标类别数决定。微调后的 ESResNeXt 模型性能详见 5.1 节。

  • 协同微调:在将 AudioCLIP 模型微调至下游任务时,仅更新了音频头的参数,文本和图像头在此步骤中保持冻结。与多标签设置的 AudioSet 训练相比,来自 UrbanSound8K 和 ESC-50 数据集的文本类别标签在此处由每个音频样本对应的单个类别表示。我们对微调后的 AudioCLIP 模型进行了下游分类性能以及查询性能的评估,详见 5.2 节。

4.4 超参数

 在本研究中,我们在 AudioSet、UrbanSound8K 和 ESC-50 数据集上对模型进行了训练。本节报告了所需的超参数。在所有训练阶段,模型参数均使用带有 Nesterov 动量 [16] 的随机梯度下降(SGD)优化器 [20] 进行优化,动量为 0.9,权重衰减为 5 × 1 0 − 4 5 \times 10^{-4} 5×104,批量大小为 64。

 学习率采用指数衰减方式,独立预训练音频头时学习率初始值为 η = 1 0 − 4 \eta = 10^{-4} η=104,衰减因子 γ = 0.95 \gamma = 0.95 γ=0.95;在微调 AudioCLIP 模型以适应下游任务时,学习率和衰减因子分别调整为 5 × 1 0 − 5 5 \times 10^{-5} 5×105 和 0.98。AudioSet 数据集的训练设置为 30 个训练周期,下游任务的微调则设置为 50 个训练周期。

4.5 性能评估

 模型性能基于两个任务进行评估:分类和查询。分类任务的评估适用于音频头(即 ESResNeXt)和完整的 AudioCLIP 模型,而查询任务的性能仅针对多模态网络进行评估。

  • 分类:分类性能评估使用了 AudioCLIP 模型及其音频头(ESResNeXt)。对于 ESResNeXt,类别标签的预测是直接完成的,因为其输出数等于数据集中的目标数。对于 AudioCLIP 模型,分类任务包括一个中间步骤,即从文本标签构建目标 [21]。在本研究中,对所提出模型的性能评估是在 AudioSet 数据集上训练后完成的,输入可以是音频和/或图像。对于 UrbanSound8K 和 ESC-50 数据集,评估了两个下游任务:在目标数据集上训练后的分类和未经训练的分类。相应的准确率见第 5.1 节。

  • 查询:AudioCLIP 的多模态特性和对称性允许使用其他模态表示的样本进行查询。在此情况下,分类可以视为查询的子任务,其中查询由图像和/或音频组成,结果以文本表示。在本研究中,我们评估了训练后的 AudioCLIP 模型在 ImageNet、AudioSet、UrbanSound8K 和 ESC-50 数据集上的查询性能。结果包括 Top-1 精度/召回率(P@1/R@1)和平均精度均值(mAP),详见第 5.2 节。

5 结果

5.1 分类

  • 仅音频头:在 AudioSet 数据集上的扩展预训练(30 个训练周期代替 5 个)提高了音频编码头的性能,相较于最初训练的模型,其平均精度(mAP)从 28.17% 提升至 34.14%。此提升对下游任务也同样有益,使得新训练的音频头在 UrbanSound8K 和 ESC-50 数据集上表现优于其基础版本,分别实现了 89.49% 和 95.90% 的准确率(见表 1)。
    在这里插入图片描述

表1.ESResNeXt模型在AudioSet数据集上训练更多时间点的评价结果。与原始训练相比,性能有所提高。

  • AudioCLIP:我们的三模态训练设置——通过使用视频帧——增加了音频头目标分布的多样性,从而缓解了过拟合问题,并在音频分类任务中进一步提高了性能,与仅使用音频的 ESResNeXt 模型相比,效果更佳。此外,三个头的联合训练提供了额外的性能提升以及使用多模态进行分类的能力,同时具备在未见数据集上的零样本推理能力(见表 2)。
    在这里插入图片描述

表2.在AudioSet上进行部分(音频头端)和完整培训后,对AudioCLIP进行评估。一般而言,后者改善了下游任务的结果。

  • 部分训练:在文本头和图像头的监督下训练音频头,已经使其在 UrbanSound8K 和 ESC-50 数据集上超越了当前的最先进结果,分别达到了 89.95% 和 96.65% 的准确率。此外,即使是部分训练的 AudioCLIP 模型,在 ESC-50 数据集上也创造了新的最高零样本分类准确率(69.40%,见表 3),并且超过了常用基准 CNN 的性能(64.50%,见表 3)。
    在这里插入图片描述

  • 完整训练:相较于部分训练,AudioCLIP 模型的联合训练提供了进一步的性能提升。经完整训练的 AudioCLIP 模型在 UrbanSound8K 和 ESC-50 数据集上达到了新的最先进分类准确率(分别为 90.07% 和 97.15%)。此外,在完整模型训练设置下,UrbanSound8K 数据集的零样本分类基准也被重新设定为 68.78%(见表 3)。

5.2 查询

原始的 CLIP 模型引入了在文本和图像两种模态之间进行查询的能力,即可以任意方向进行查询。给定一个查询(如文本),模型会为另一种模态(视觉)中的样本提供相似性得分。因此,对于一个数据集和模态,查询集是由所选模态的唯一样本定义的。在本研究中,我们增加了音频支持,使模型能够在文本、图像和音频之间进行任意组合的查询。查询性能在 ImageNet、AudioSet、UrbanSound8K 和 ESC-50 数据集上进行了评估,结果总结于表 4。

在这里插入图片描述

表4.AudioCLIP 在 AudioSet 上进行部分训练和完整训练后的查询得分。总体而言,完整训练提升了 AudioSet 和下游任务的结果。

  • 图像通过文本查询:在此设置中,目标数据集中分配给样本的所有类别名称集合被收集并作为文本查询,而结果则以图像形式表示(适用于 ImageNet 和 AudioSet)。因此,只有拥有相同标签集合的视觉样本被视为相关结果。在 AudioSet 数据集上,完整训练有助于提升 mAP 衡量的性能分数。然而,这样的训练导致了在 ImageNet 数据集上的查询性能下降,可能是因为 ImageNet 的分布与 AudioSet 不同。

  • 音频通过文本查询:与前一设置中相同类型的查询相比,此处的结果以音频记录表示,并在标签匹配查询时被认为是正确的。在 AudioSet 和 UrbanSound8K 数据集上,完整训练提升了查询性能。而在 ESC-50 数据集上则没有明显的提升,但差距较小,几乎可以忽略。

  • 音频通过图像查询及其反向查询:对于音频通过图像和图像通过音频的查询类型,完整训练的 AudioCLIP 模型在查询性能(mAP)上表现出优势。

6 结论

 在本研究中,我们通过集成一个高效的声音分类模型 [10],将 CLIP 模型 [21] 从文本和视觉模态扩展到音频。所提出的 AudioCLIP 模型在两个数据集上达到了新的最先进分类结果:UrbanSound8K(90.07%)和 ESC-50(97.15%)。为了便于复现,我们提供了超参数和实现细节,以及已训练模型的权重。此外,在零样本推理任务中,我们的模型在 ESC-50 数据集上以较大优势(69.40%)超过了之前的方法,并在 UrbanSound8K 数据集上设定了新的基准(68.78%)。我们还评估了模型在跨模态查询任务中的表现,以及部分和完整训练在分类和查询任务中对结果的影响。

 未来,我们希望在更多样的数据集和任务上进一步探讨 AudioCLIP 模型的性能。同时,将图像和音频头的主干网络更换为更强大的网络,可能会进一步提升模型性能。


http://www.mrgr.cn/news/74759.html

相关文章:

  • java八股笔记-1-java基础
  • 【Ubuntu24.04】服务部署(基础)
  • 通俗易懂的正则表达式
  • 【优选算法篇】化繁为简,见素抱朴:从乱象中重构秩序的艺术
  • 【再谈设计模式】建造者模式~对象构建的指挥家
  • AI写作(四)预训练语言模型:开启 AI 写作新时代(4/10)
  • Android15之SparseArray、HashMap、Map用法实例(二百三十八)
  • 基于SpringBoot智慧社区管理平台
  • 丹摩征文活动|丹摩智算平台使用指南
  • 新书速览|Python数据科学加速:Dask、Ray、Xorbits、mpi4py
  • 【JAVA毕业设计】基于Vue和SpringBoot的宠物咖啡馆平台
  • 网络基础 - 网段划分篇
  • 2024年,有多少程序员被迫转行?
  • WeakHashMap原理
  • 数据结构PTA
  • 【目标检测】【Ultralytics-YOLO系列】Windows11下YOLOV5人脸目标检测
  • nginx代理后jsp如何获取http协议
  • DNS服务器Mac地址绑定与ip网路管理命令(Ubuntu24.04)
  • Oauth2.0
  • Java复习44(PTA)
  • 2024算法基础公选课练习三(DFS1)(1)
  • 全国交通安全日知识竞赛答题投票活动策划
  • 基于AX650N/AX630C部署多模态大模型InternVL2-1B
  • 华为OD机试真题---数组二叉树
  • C# 反射与动态编程
  • arcgis做buffer