HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力 原创

发布于 2025-5-12 09:12
浏览
0收藏

摘要

大型语言模型(LLMs)的快速发展催化了视觉-语言模型(VLMs)的发展。整体VLMs避免了模态特定的编码器,提供了一种有希望的替代方案,但面临着性能较差的挑战。大多数现有的整体VLMs需要调整预训练的LLMs以获得视觉能力,这可能会降低它们处理语言的能力。为了解决这一困境,本文提出了一种新的高性能整体VLM,名为HoVLE。我们注意到,当图像嵌入与文本嵌入对齐时,LLMs已被证明能够解释图像。当前整体VLMs的挑战实际上在于缺乏一个全面的嵌入模块来处理视觉和语言输入。因此,HoVLE引入了一个全面的嵌入模块,将视觉和文本输入转换为共享空间,允许LLMs像处理文本一样处理图像。此外,还精心设计了一个多阶段训练策略来增强整体嵌入模块。首先,它被训练以从预训练的视觉编码器和LLM的文本嵌入中提取视觉特征,实现大规模训练,使用未配对的随机图像和文本令牌。整个模型进一步在多模态数据上进行下一个令牌预测,以对齐嵌入。最后,加入了指令调整阶段。我们的实验表明,HoVLE在各种基准测试中的表现接近领先的组合模型,大幅度超越了以前的整体模型。


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区

图 1. 在不同基准测试上的性能比较:组合型 VLMs(虚线)与整体型 VLMs(实线)。以往的整体型 VLMs 相较于组合型 VLMs 存在显著的性能差距,而我们的 HoVLE 展示出与最新的组合型 VLMs 相当的竞争能力。

1. 引言

大型语言模型(LLMs)[2, 5, 11, 107, 132]的快速发展显著加速了视觉-语言模型(VLMs)[70, 113, 135]的发展,这些模型展示了强大的视觉-文本处理能力。组合VLMs目前是构建高性能VLMs的主要方法[21, 71, 110],它们将预训练的视觉编码器与LLMs集成在一起,如图2(a)所示。通过结合预训练的视觉理解能力与语言建模能力,组合VLMs实现了令人印象深刻的多模态性能。另一方面,对开发没有模态特定编码器的VLMs的兴趣日益增长,本文中称为整体VLMs。这些模型将图像和文本输入作为一个统一的整体处理,直接将它们输入LLM,如图2(b)所示。由于它们的整体设计,这些VLMs具有更简单的架构,为多模态任务提供了更大的潜力,例如统一生成和识别[105, 115, 134]。整体VLMs越来越受到关注,并已在许多研究中展示了它们的潜力[6, 18, 26]。然而,整体VLMs在性能上仍然落后于组合VLMs。一些研究[6, 8, 105, 134]探索了从头开始训练整体VLMs,使用多模态和纯文本数据的组合。这种做法无法利用现有的预训练模型,导致训练需要大量的计算需求。另一个研究方向[18, 26]提出了通过持续预训练[33]将视觉理解能力注入预训练的LLMs,使用大规模和高质量的多模态数据。然而,这种持续调整方法可能会干扰预训练LLMs已经获得的语言知识,可能限制它们的多模态性能[26]。


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区

图 2. VLM架构比较。          
(a) 组合型VLMs将预训练的视觉编码器与LLMs结合,使用额外的连接器对齐图像和文本的嵌入。(b) 现有的整体型VLMs直接将图像和文本输入到LLMs中,这需要持续的预训练以获得视觉能力。(c) HoVLE使用整体嵌入模块将图像和文本输入投射到统一的嵌入空间,使LLMs能够以类文本的方式解释图像。同色块表示具有相同的Transformer层架构。

当前整体VLMs的性能限制主要源于需要调整预训练的LLMs。然而,组合VLMs的成功表明,只要图像嵌入与文本嵌入正确对齐,预训练的LLMs就可以在不需要进一步预训练的情况下解释视觉信息。因此,当前整体VLMs调整困境的原因在于缺乏一个能够协调不同模态的整体嵌入模块。

为此,我们开发了一个模态共享的整体嵌入模块,如图2(c)所示,该模块将混合的视觉和语言输入映射到共享的嵌入空间。它可以使预训练的LLMs像处理文本一样解释视觉输入。与组合VLMs类似,这不仅避免了调整预训练的LLMs,还保留了它们的语言能力,同时成功集成了视觉能力。我们的实验表明,这样一个整体嵌入模块确实可以实现高性能的整体VLMs。在这项工作中,我们介绍了HoVLE,这是一种新型的整体视觉-语言模型,它学习了一个整体视觉-语言嵌入模块来扩展LLMs的视觉能力。整体嵌入模块由与LLM相同的因果Transformer层组成。它接受图像和文本作为输入,并将它们投影到统一的嵌入空间中。这些嵌入随后被输入到LLM中,构成了一个整体VLM。为了赋予整体嵌入模块视觉和语言编码能力,提出了一个多阶段训练策略。首先,该模块被训练以从预训练的视觉编码器和LLM的文本嵌入中提取视觉特征。提取阶段不需要图像-文本对,而是使用大规模未配对的随机图像和文本令牌作为输入。提取后,整体嵌入模块与LLM结合,在多模态数据上执行下一个令牌预测,以便输出嵌入可以进一步对齐到统一空间中。最后,整个模型通过指令调整阶段进行增强。对齐和指令调整阶段与组合VLMs中使用的阶段类似,不需要额外的监督数据。广泛的实验表明,我们的HoVLE能够与这些领先的组合VLMs在17个多模态基准测试中实现接近的性能。它还大幅度超越了以前的整体VLMs,例如在MMBench[74]上大约15个百分点,显示了HoVLE的有效性。

 贡献总结

- 提出了HoVLE作为一种新型的整体VLM,通过将视觉和语言输入投影到共享的嵌入空间,扩展了LLMs的视觉能力,而不影响语言能力。

- 提出了一种新颖的多阶段训练策略,赋予整体嵌入模块视觉和语言编码能力。我们的训练程序使HoVLE能够在不需要额外监督数据的情况下,与组合VLMs相比发展出强大的视觉和语言能力。

- HoVLE在性能上与组合VLMs相当,并大幅度超越了以前的整体VLMs。

2. 相关工作

 组合视觉-语言模型

大型语言模型(LLMs)的快速发展和成功激发了研究人员对多模态模型的兴趣,视觉-语言模型(VLMs)成为了一个突出的焦点[21, 26, 57, 70, 72, 102]。组合VLMs已成为该领域的主导范式,其中图像令牌通常通过视觉编码器生成,并且使用额外的连接器(例如,MLP投影)。许多著名的商业模型,包括GPT4V[121]、Gemini系列[106]、Claude-3V[4]、Grok1.5V[119]和MM1[88],在各种多模态任务中展示了令人印象深刻的性能。在开源领域,像LLaVA[70, 72]、BLIP[57]、Emu2[102]、InternVL[21]和Qwen-VL[5]这样的模型脱颖而出。然而,组合VLMs面临几个挑战,例如由于它们的异构架构导致的部署和优化复杂性,图像和文本处理之间网络容量设计的权衡,以及跨模态理解能力的潜在限制[8, 18, 26, 105]。

整体视觉-语言模型

与组合VLMs相比,整体VLMs不依赖于特定的视觉编码器。一些工作探索了从头开始训练一个整体VLM。Fuyu-8B[6]直接将图像像素块输入到主干网络中,使用简单的线性投影,而Chameleon[105]、Transfusion[134]和Emu3[115]采用图像分词器将图像映射到离散的令牌作为输入。然而,这些方法需要收集大量的纯文本和配对的图像-文本数据,以及密集的训练计算资源才能获得良好的性能。其他方法提出了扩展现有的预训练LLMs到VLMs。SOLO[18]使用简单的线性投影处理原始图像像素,并微调预训练的LLM以发展视觉能力。EVE[26]采用了一个补丁嵌入层与交叉注意力来增强图像表示,以及一个补丁对齐层,与预训练的视觉编码器一起提供细粒度的视觉监督。然而,这些方法需要持续预训练LLMs,这可能会减少它们处理语言的能力。当前的整体VLMs在图像-文本理解任务上的表现仍然落后于它们的组合对应物。

相比之下,通过引入一个整体嵌入模块,HoVLE能够与最先进的组合VLMs实现相当的性能,大幅度超越其他整体VLMs。

知识蒸馏

知识蒸馏是一种有效的技术,用于将教师模型的知识和能力转移到学生模型。在VLMs领域,知识蒸馏也已成功地应用于各种任务。DistillVLM[27]和EfficientVLM[111]使用知识蒸馏来压缩模型大小并加速推理速度。VPD[39]和LSKD[90]利用工具或LLMs合成多模态数据,以便VLMs可以被训练以提取专家模型和LLMs中的技能。我们的工作使用知识蒸馏来赋予整体嵌入模块通用的视觉和语言编码能力。由于蒸馏目标可以独立计算,我们可以使用未配对的随机图像和文本数据,消除了收集额外多模态数据的需求。

3. 方法

在本节中,我们介绍了HoVLE,一个具有良好视觉和语言能力的整体视觉-语言模型。在接下来的部分中,我们介绍了实现这样一个统一模型的网络架构和训练程序。详细信息如图3所示。


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区

图 3.(a) HoVLE 的架构。HoVLE 首先动态地将输入图像分割为图像块,并对输入文本进行标记化处理。整体嵌入模块随后将这些输入投射到统一的嵌入空间中。最后,LLM 处理这些统一的嵌入以生成最终输出。(b) HoVLE 的训练策略。蒸馏阶段训练整体嵌入模块,通过未配对的随机图像和文本,从预训练的视觉编码器和LLM的文本嵌入中提取知识。对齐阶段将整体嵌入模块与冻结的LLM结合,通过自回归训练对视觉-语言嵌入进行对齐。指令微调阶段通过微调整个模型进一步增强HoVLE的整体能力。

3.1 网络架构

组合VLMs的成功表明,当图像嵌入与文本嵌入正确对齐时,LLMs能够理解视觉信息。受此启发,HoVLE提出可以使用一个整体嵌入模块来构建整体VLM。该模块将混合的原始图像和文本作为输入,并将其投影到共享的嵌入空间中。这样,LLMs就可以像处理文本一样解释图像,从而形成整体VLM。

整体嵌入模块

我们首先介绍整体嵌入模块,将视觉和语言输入投影到共享的嵌入空间中。具体来说,给定输入图像 I 和文本 T ,我们首先通过简单的标记化和线性投影将它们转换为向量形式:

xI = PatchEmbed(DynProcess(I)) + PE

xT = TextEmbed(Tokenizer(T))

其中 DynProcess(·) 是来自InternVL[21]的动态高分辨率策略。该过程将图像分割成448×448的瓦片,并附加一个全局缩略图以提供整体上下文。类似的操作已被许多组合和整体VLMs[26, 41, 120]采用,并被证明对模型性能有益。 PatchEmbed(·) 指的是一个步长为 s 的补丁嵌入层,将图像瓦片转换为序列 xI 的 nI 个图像令牌,维度为 c 。 PE∈RnI×c 是可学习的位置嵌入。 Tokenizer(·) 将原始文本转换为令牌索引, TextEmbed(·) 是一个词汇量为 v 、维度为 c 的词嵌入层。 xT 是一个序列,包含 nT 个文本令牌。之后,这些图像令牌和文本令牌被合并作为输入令牌 x∈Rn×c整体嵌入模块使用一系列因果Transformer层将这些令牌投影到共享的嵌入空间中:

X^ = CausalTransformer(x)

其中 x^ 表示输入的最终嵌入。每个Transformer层的架构与LLM的相同,为了简单和统一。类似于LLMs,这些Transformer层对图像和文本令牌使用因果注意力。这种架构的有效性表明,对于多模态任务中的图像,1D因果建模与非因果建模同样有效,与[104]中的最新发现一致。

整体视觉-语言模型

通过将整体嵌入模块与预训练的LLM结合,可以自然地构建整体VLM。在整体嵌入模块生成输入嵌入后,LLM将它们作为输入并执行下一个令牌预测:

 pn+1 = LLM(x^; θLLM), 

其中 θLLM 指的是LLM的参数, pn+1∈Rv 是下一个令牌的概率。通过这种方式,我们用整体嵌入模块替换了组合VLMs中的模态特定编码器。该模块与LLM具有相同的Transformer层,因此整个模型呈现出简单的架构,导致我们的整体VLM。

3.2 训练程序

为了赋予整体嵌入模块良好的视觉和语言编码能力,我们精心设计了一个多阶段训练程序。第一阶段训练整体嵌入模块以从预训练的视觉编码器和LLM中提取图像特征和文本嵌入,提供通用编码能力。第二阶段将整体嵌入模块与LLM结合,执行自回归训练,将不同模态对齐到共享的嵌入空间。

蒸馏阶段

本阶段的目标是使用整体嵌入模块提供基本的视觉和语言编码能力。我们从整体嵌入模块的输出中提取图像和文本嵌入,分别表示为 x^I 和 x^T 。使用预训练的视觉编码器和LLM嵌入层计算目标图像特征 z_I 和文本特征 z_T 。训练目标是


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区

其中 Ldistill 是两个特征之间的负余弦相似度,θEmbed 指的是整体嵌入模块的参数。

未配对随机图像和文本用于蒸馏

蒸馏阶段对输入图像和文本没有任何要求,因为它们的目标特征是独立计算的。因此,我们提出将随机图像与随机文本作为输入结合起来。实际上,这种策略比使用配对的图像-文本输入更有效,可能因为在蒸馏期间更好地覆盖了词汇表,如第4.3节所示。

在实践中,我们从LAION-2B[94]数据集中随机抽取了5亿张图像,并为每个图像随机抽取100个文本令牌作为训练数据。每个样本由用户查询和模型响应组成。我们将图像放在查询的开头,然后是查询和响应的文本内容,每个都有50个随机文本令牌。与以前的整体VLMs不同,HoVLE可以受益于大规模视觉预训练,释放整体VLM的全部潜力。

对齐阶段

为了对齐图像和文本嵌入,整体嵌入模块进一步与LLM结合,执行自回归训练。训练目标是


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区

其中 Lalign 是交叉熵损失, pi 和 yi 分别表示第 i 个文本令牌的输出概率和目标索引。在训练期间,LLM被冻结,只优化整体嵌入模块。

这个阶段类似于组合VLMs中使用的对齐阶段,但我们没有额外的MLP连接器。在对齐过程中,模型在4500万多模态数据上进行训练,涵盖诸如字幕、检测和OCR数据等多个领域。请参考附录A了解更多细节。

3.3 指令调整

现在整体嵌入模块已经具备了强大的视觉和语言编码能力。为了进一步加强整个VLM遵循指令的能力,加入了一个视觉指令调整阶段。

在这个阶段,整个模型使用与对齐阶段相同的自回归训练目标进行优化。训练数据包含大约500万条数据,涵盖视觉问题回答、数学、世界知识等。请参考附录A了解更多细节。

4. 实验

4.1 实施细节

网络架构

HoVLE采用InternLM21.8B[11]作为LLM主干。整体嵌入由8个因果Transformer层组成,隐藏尺寸为2048,注意力头数为16,与InternLM2-1.8B中的配置相同。图像补丁嵌入层的步长为 s = 28 ,输出维度为 c = 2048 。文本嵌入的词汇量为92553。为了展示我们模型处理高分辨率图像的能力,像其他工作[6, 26, 62]一样,我们还提供了HoVLE (HD)。它使用步长为 s = 14 的补丁嵌入,并在整体嵌入后应用像素洗牌[21]以将视觉令牌数量减少1/4。所有其他细节保持不变。

训练程序

在蒸馏阶段,我们从LAION-2B[94]中随机抽取了5亿张图像,并为每个图像随机抽取100个文本索引作为训练数据。我们使用InternViT300M[19, 21]和InternLM21.8B的文本嵌入作为图像和文本令牌的教师模型。对于对齐,使用了包含5000万个样本的数据集集合,如附录A所示。对于指令调整,使用了包含500万个样本的数据集集合,如附录A所示。我们在所有三个阶段都使用AdamW作为优化器,学习率分别为3e-4,5e-5 和 4e-5 。所有阶段的批量大小都设置为4096。请参考附录A了解更多超参数。

评估基准

我们在17个公共基准上评估我们的模型。MMbench[74]、MME[28]、MMMU[128]、MM-Vet[125]和SEED[56]专注于多模态感知和推理,为VLM能力提供了全面的评估。POPE[60]和HallB[31]专门针对幻觉检测。对于OCR和与OCR相关的视觉上问题回答,使用了TextVQA[100]、ChartQA[84]、InfoVQA[87]、DocVQA[86]和OCRBench[73]。GQA[43]评估视觉场景理解,而ScienceQA[78]和AI2D[50]评估科学图像理解。MathVista专注于数学推理。对于实验中显示的具体指标值,MMbench-EN结果被计算并呈现为MMB分数。POPE分数在其三个类别中平均,MME分数计算为感知和认知分数之和,SEED分数反映特定图像准确性。

4.2 主要结果

我们在表1和表2中将HoVLE与以前的组合和整体VLMs进行了比较。我们强调几个关键观察结果如下:(1)以前的整体VLMs和组合VLMs之间存在显著的性能差距,表明构建具有最先进性能的整体VLMs的挑战。(2)与现有的整体VLMs相比,我们的HoVLE在参数更少的情况下表现出显著更好的性能。例如,HoVLE在MMBench上超过了以前最好的整体VLM大约15个百分点,这是一个涵盖各种细粒度能力的全面多模态基准。这一显著改进归功于整体嵌入,它防止了持续预训练破坏存储在预训练LLMs中的语言知识。(3)通过引入更高分辨率,HoVLE (HD)在VQA基准测试中一致提高了性能,展示了我们整体嵌入在处理不同分辨率时的多功能性。(4)与以前的组合VLMs相比,HoVLE (HD)能够与这些模型中的许多模型提供竞争结果。这表明引入整体嵌入提供了一种有效的编码,允许LLM理解图像的同时保留其语言能力。尽管HoVLE (HD)仍未达到像Qwen2-VL2B[110]和Phi-3 Vision[1]这样的最先进组合VLMs,但它缩小了整体和组合VLMs之间的差距,表明了高性能整体VLMs的可行性。


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区

4.3 消融研究

在本节中,我们旨在展示和讨论影响我们HoVLE的设计选择。消融实验在蒸馏和对齐阶段分别使用300M和8M数据进行训练,除非另有说明。

整体嵌入深度

为了验证整体嵌入的有效性,我们首先在表3中比较了具有不同整体嵌入深度的模型。没有Transformer层的模型退化为没有整体嵌入的VLM,其较差的性能表明了该模块的重要性。随着深度从4增加到12,模型的性能一直更好。我们推测深层嵌入有利于提取视觉表示。HoVLE使用8层在性能和模型复杂性之间取得平衡。

训练策略

表4显示了不同训练阶段的影响。结果表明,省略任何阶段都会导致性能下降。其中,去除蒸馏阶段导致最严重的性能退化,突出了其重要性。我们观察到,经过蒸馏的模型在后续训练阶段的损失下降更快,可能是因为蒸馏提供了表示提取的通用能力,有助于加速训练。指令调整的改进大于对齐阶段。我们假设这是因为LLM有更多的可训练参数,允许整个模型很好地拟合数据。


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区

蒸馏数据扩展

图6展示了随着蒸馏数据扩展,模型性能的变化。总体而言,模型的性能随着更多的蒸馏数据而更好,暗示了全面训练的重要性。具体来说,模型在300M数据时性能提升迅速,并随着更多数据的添加以更渐进的速度继续提升。我们使用500M蒸馏数据作为默认设置。请参考附录B了解更多基准上的扩展性能。

蒸馏文本数据

表5展示了蒸馏过程中不同文本输入选择的效果。LAION[94]数据集为每个图像提供了一个简短的文本说明,因此我们也可以使用方法图像-文本对作为输入。然而,这种方法产生了相对较低的结果,并且在对齐期间模型继续显示出高损失值。我们假设LAION数据集中的文本数据缺乏足够的多样性以覆盖完整的词汇表,表明配对数据可能需要更高质量和多样性的文本。相反,我们提出使用随机文本作为输入。表5显示,这种策略优于配对文本数据。我们还观察到在对齐期间损失较低。通过利用随机文本,我们减少了收集高质量图像-文本对的需求,从而增强了大规模训练的数据利用。

4.4 分析

可视化

为了更好地理解引入的整体嵌入的效果,我们在图5中可视化了LLM的注意力图。我们发现,像EVE[26]和Emu3[115]这样的现有整体模型,在初始层显示出更密集的文本到图像的注意力,而像InternVL2[20]和我们的HoVLE模型则在整个网络层中保持稀疏的注意力模式。所有模型在后层(以最后层为例)显示出稀疏的注意力模式。请参考附录C了解更多中间层的注意力图。


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区

图 5. EVE、Emu3、InternVL2 和我们的 HoVLE 在 LLM 主干网络的第一层和最后一层的注意力图。          
Y轴表示查询(query)tokens,X轴表示键(key)tokens,其中文本模态tokens以灰色表示,图像模态tokens以黄色表示。四种模型使用相同的输入,但由于不同的图像预处理,输入tokens的序列长度有所不同。我们在每个完整注意力图的下方突出显示了文本到图像的注意力。我们的 HoVLE 与组合型的 InternVL2 类似,在整个网络层中表现出稀疏的注意力分布,而其他整体型模型 Emu3 和 EVE 在浅层中表现出更密集的注意力分布。

我们假设更稀疏的文本到图像的注意力表明视觉特征被有效地提取并与文本令牌对齐,允许文本令牌只关注最相关的视觉信息。相反,更密集的文本到图像的注意力可能表明模型仍在LLM组件内提取视觉特征的过程中。因此,通过引入整体嵌入,LLM可能更有效地处理视觉和语言输入。


HoVLE:通过整体视觉-语言嵌入释放单体视觉-语言模型的潜力-AI.x社区

表 6. HoVLE (HD) 的推理速度与性能权衡。“TTFT” 表示生成首个 token 的时间(单位:秒),“TPS” 表示每秒生成的 token 数量(吞吐量)。“Avg. Score” 表示在 17 个基准测试上的平均性能。详细结果请参阅附录。

速度-性能权衡

我们在表6中报告了HoVLE (HD)的速度-性能权衡。对于评估,我们使用一张图像和256个文本令牌作为输入,在测试期间将模型限制为输出120个令牌。InternVL2作为主要比较模型,因为它使用了相同的LLM。当DynProcess()的瓦片分辨率为336时,HoVLE (HD)实现了与InternVL2相当的性能,同时也显示出更低的计算需求。随着输入分辨率的增加,HoVLE的性能稳步提高,但代价是速度变慢。此外,我们观察到在推理期间使用KV缓存[92]可以显著减少计算时间,使内核启动成为TPS中的主要瓶颈。优化内核可以进一步提高处理速度。

5. 结论

本工作介绍了HoVLE,一个整体视觉-语言模型(VLM),它以统一的方式处理图像和文本。HoVLE引入了一个整体嵌入模块,将图像和文本输入投影到共享的嵌入空间中。这允许大型语言模型(LLM)像处理文本一样解释图像。此外,设计了一个多阶段训练程序来加强整体嵌入的编码能力。首先,蒸馏阶段提供了通用的视觉和语言编码能力,而对齐阶段对齐不同的模态。最后的指令调整阶段增强了整体能力。广泛的实验表明,HoVLE超越了以前的整体VLMs,并与组合VLMs展现出竞争性的性能。这项工作缩小了整体和组合VLMs之间的差距,为整体VLMs的发展提供了一个有希望的方向。

限制

由于计算资源有限,我们的实验在2B参数规模上进行。扩展到更大的规模可以进一步洞察我们方法的模型可扩展性,我们希望在未来的工作中探索这一点。


本文转载自公众号AIRoobt ,作者:Chenxin Tao等

原文链接:​https://mp.weixin.qq.com/s/wY0xYv4yEWZbZtHK5KLLRQ​

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
收藏
回复
举报
回复
相关推荐