论文阅读-Causality Guided Disentanglement for Cross-PlatformHate Speech Detection

embedded/2024/10/24 2:18:21/

 https://arxiv.org/pdf/2308.02080

GitHub - paras2612/CATCH

目录

摘要

1 INTRODUCTION

3 PROPOSED METHOD

3.1 Preliminaries

3.2 Disentangling Causal and Target Representations

 3.3 Model Training

 4 EXPERIMENTS

4.1 Datasets and Evaluation Metrics

 4.3 Performance Comparisons (RQ.1)

4.4 Are the Disentangled Causal Representations Invariant? (RQ.2)

4.5 Contribution of the Components (RQ.3)

5 ARE LLMS GENERALIZABLE WHEN IT COMES TO HATE SPEECH? – A CASE STUDY


摘要

        目前检测方法往往过于狭隘地关注特定的语言信号或某些词类的使用

        当某一平台缺乏用于训练的高质量注释数据时,就会出现另一个重大挑战,需要能适应不同传播变化的跨平台模型。

        研究引入了一种跨平台仇恨言论检测模型,该模型能够在一个平台的数据上进行训练,并在多个未见过的平台上进行泛化

        实现良好跨平台泛化的方法之一是将输入表征分解为不变特征和平台相关特征

        学习在不同环境中保持不变的因果关系,可以极大地帮助理解仇恨言论中的不变表征。

        通过将输入信息分解为与平台相关的特征(用于预测仇恨目标)和与平台无关的特征(用于预测仇恨的存在),可以学习到不受分布变化影响的不变表征。

        然后,这些特征可以被用于预测未见平台上的仇恨言论。

1 INTRODUCTION

挑战1:

        主要挑战是某些平台的标注数据有限。近年来,新的社交媒体平台频频出现[17]。并非所有这些平台都能获得高质量的标注数据。

        因此,要在这些平台上使用仇恨言论检测模型,一种明智的方法是利用其他平台(源平台)的可用高质量训练数据。但是,如果模型不对源平台训练数据中存在的偏差进行调整,模型最终可能无法检测到目标平台上的仇恨言论[25]。

挑战2:

        阻碍现有模型发挥效能的另一个关键挑战是过度依赖通过语言线索和特定类别的词语(如亵渎性词语)来检测仇恨言论。一系列研究[34, 44]表明,目前最先进的模型过度依赖身份词(如 “犹太人”)来预测仇恨内容。此外,一些研究[7, 13]强调了现有模型是如何将含有亵渎性词语的内容视为仇恨性内容的。这种偏差的复制会严重影响模型在不同平台上的良好表现

跨平台仇恨言论检测介绍:

        跨平台仇恨言论检测模型是在一个源域或平台的数据上进行训练,然后应用于未见过的目标域

        这些跨平台模型旨在识别仇恨言论中的隐藏模式,而不是标记与某一平台上的内容相关的特定单词或短语。

        这种方法的优势在于它能适应不同人群使用语言方式的变化,避免过度依赖特定词语[34],并能帮助缺乏高质量标记数据的社交媒体平台。

相关工作:

        近期的研究旨在建立这种可通用的去仇恨化模型。例如,[ 19 ]的作者利用辅助信息和对比学习来判断一个帖子是否隐含仇恨。然而,辅助信息可能无法用于大型数据集或不同平台,从而限制了该框架的适用性。

        另一种方法[27, 30]考虑使用 POS 标记和情绪来训练可推广的仇恨言论模型。这类方法往往会与某些标签(如副词)或某些类型的词(如亵渎词)形成虚假的相关性,从而降低其泛化能力。

        文献[38]的作者确定了两个可量化的不变线索,即文本中存在的攻击性和整体情绪,以引导代表对仇恨言论检测进行归纳。这种方法是人工识别线索,但可能还有更多线索有助于指导表征。BERT 等预训练语言模型也在大型仇恨言论数据集上进行了微调,以创建专门的仇恨检测模型,如 HateBERT [6] 和 HateXplain [29]。然而,这些模型往往会复制其微调数据集中存在的任何偏差,这可能会限制其应用于新的或不同语境时的有效性。

方法思路:

        建议探索一种可通用的仇恨言论检测模型,以克服这些局限性。构建可通用模型的一种普遍且行之有效的技术是利用 “分离 ”概念

        首次尝试将分离技术应用于跨平台仇恨言论检测

        解离技术将输入表征分离为平台依赖部分(包含平台特定信息)和平台内部分(包含不同平台共享信息)

        因果关系最近被用来捕捉不同平台间的不变性[24, 39]。因果特征表示特定现象背后的因果关系或机制。当推断一个变量导致另一个变量时,就意味着存在一种普遍一致的关系。

        对这些因素进行识别和分离,可以了解数据的真正内在结构。

        此外,众所周知,因果关系一般是不变的,因此可以增强机器学习模型的遗传能力[4]。因此,在仇恨言论检测问题上,因果关系引导的解纠模型需要识别与平台相关的特征。

仇恨言论的目标成为平台相关特征的潜在候选者:

        研究最近的实证分析[3]发现,仇恨言论的目标在不同平台上的分布各不相同,这使得仇恨言论的目标成为平台相关特征的潜在候选者

        为了验证这一发现,考虑了来自 Gab、YouTube、Twitter 和 Reddit 四个平台的仇恨言论数据集。

        目标类别在各平台的分布情况见图 1。很明显,平台会影响仇恨言论目标的选择。

        这与之前的研究结果一致,研究人员发现 YouTube 和 Reddit 等平台更容易受到基于性别的仇恨言论的影响 [9 , 11 ],而 Twitter 和 GAB 等平台更容易受到基于种族的仇恨言论的影响 [28 , 40 ]。

        因此,将目标作为一个与平台相关的变量可以促进解离过程

        为此,建议使用图 2 所示的因果图来表述仇恨言论问题的数据生成机制。因果图符合这样一种直觉,即仇恨的核心属性在仇恨目标发生变化时保持不变;随着仇恨目标的变化而变化的是这些属性的强度。例如,一个人可能会对某人的种族造成更大的伤害,而对宗教的伤害则较小。因此,将与平台相关的部分(目标)从文本表征中分离出来,有助于学习可通用的表征。

(代表仇恨言论检测数据生成机制的因果关系图,X_c代表有助于预测上下文 是否具有仇恨性的因果关系表征,Y代表仇恨标签、X_t仇恨言论的目标、X是输入和P_l影响目标的潜在平台变量。)

        基于上述意见,提出一种新颖的因果关系的解纠框架的跨平台仇恨言论检测,即,CATCH,充分利用的因果关系的曲线图2所示为中解脱出来的输入表示为两个部分:

        (i)目标表示(指示依赖于平台的功能)

        和(ii)因果关系表示(指示平台的不变特征),以促进学习的可归纳的仇恨言论,表示在不同平台。

        提出了一个因果图,显示了仇恨言论检测问题的数据生成机制

        提出了一种新颖的因果关系感知分解框架 CATCH,该框架遵循因果图,将内容的整体表征分解为两部分,一部分是平台相关特征,另一部分是平台不变特征,从而在不同平台上学习可通用的表征。

        在四个平台上的实验结果表明,CATCH 的性能优于最先进的基线。

3 PROPOSED METHOD

3.1 Preliminaries

        用一系列文本输入(推文或帖子)X= {x_1,...,x_n}、一系列表示帖子是否具有仇恨性的相应标签Y= {y_1,...,y_n}和一系列表示帖子目标群体的标签T= {t_1,...t_n}来表示一个源语料库。在可泛化的仇恨言论检测中,主要目标是学习一个映射函数f:X→Y,该函数能够从D_{source}中确定一个可泛化的表征。  这样的表示能够在以前未见过的目标域D_{target}中准确预测仇恨标签。

        将输入表征分解为(1) 包含与仇恨目标相关的内容形成的组件(X_t);(2) 包含决定内容是否具有仇恨性的关键因果关系的组件(X_c)。这种分离为利用从一个平台(或领域)中学习到的泛化仇恨表征铺平了道路,能够将这些洞察力应用到以前从未见过的领域中。

3.2 Disentangling Causal and Target Representations

        仇恨的表达包括两个部分:仇恨的目标和使帖子具有仇恨性的内容

        研究提出了一个因果图和假设,表明仇恨的目标和强度在不同平台上有所不同

        另一方面,仇恨的基本属性,无论是抽象的还是可量化的,都保持不变,可视为因果因素。

        提出的 CATCH 采用变异自动编码器(VAE)框架来捕捉这些因果表征。该模型由编码器、解纠模块和解码器组成

编码器q_\phi代表一个语言模型,如 Roberta,它接收输入文本并生成如下嵌入:

 \gamma (x)表示语言模型的token化函数。利用位于位置 0 的句首标记([CLS])的嵌入(表示为 z^{[CLS]} \in R^{h_d}穹顶)作为输入表征 .

分解因果成分

        为了分解z并获得因果对应关系X_c,采用了 VAE 架构。

        分解表示法指的是一种因子化表示法,其中每个潜变量对应一个负责生成数据的解释变量

        VAE 非常适合实现这一任务,因为它在潜变量空间上施加了标准高斯先验分布,并使用参数化神经网络逼近后验。

        两个前馈神经网络FC_\muFC_\Sigma被用来映射仇恨z的高斯分布参数。

        潜表征X_c \in R^{h_causal}是利用重参数化技巧[20]从相应的高斯分布(\mu _z, \Sigma _z)中采样得到的,其中h_{causal}代表隐藏维度的大小:

         

分解仇恨目标成分

        除了因果成分外,还包括与平台有关的特征,其中之一就是仇恨目标。最近的研究揭示了不同平台上仇恨言论的差异。例如,YouTube 的评论主要表现为基于性别歧视的仇恨[9],而 Twitter 则更多地受到基于种族主义的仇恨的影响[40]。

        然而,与因果不变的仇恨特征不同,与目标相关的平台依赖特征是离散的。仇恨言论目标可分为八大类: 种族、宗教、性别、性偏好、国籍、移民、残疾和阶级 [3]。因此,目标的潜在表示不太可能是高斯的,而更可能是分类或离散性质的[12]。

        为了有效地建立离散潜变量模型、采用的 VAE 利用了 “Gumbel-Softmax ”技巧[ 16 ]。这样就能在 VAE 框架内对离散变量进行重新参数化,从而便于使用反向传播进行优化和学习分解表示[16]。

        首先,使用前馈神经网络FC_\pi映射z离散变量的潜在表示z_\pi \in R^{h_{disc}},其中h_{disc}表示隐藏维度。

        用类别概率 {\pi _1, ..., \pi_{h_{disc}}} 来表示分类变量。然后,对每个概率应用对数函数,并添加 Gumbel 噪声,噪声取样于均匀分布的两个对数。

        让g_i代表从 Gumbel (0,1) [16] 中抽取的 i.i.d. 样本。为了确保连续、可变的近似值,并生成 h_{disc}维度的样本向量,进一步利用 Softmax 函数得到 X_t

        

从分离的成分中重建输入信息

        为了方便训练,目标是通过获得的成分X_cX_t和来重构输入

        首先将它们合并为 [X_c|X_t],其中 [|] 是连接操作。

        然后,将其传递给另一个前馈神经网络,即 FC_{\hat{z}}。连接后得到的表示为\hat{z} = FC_{\hat{z}}([X_c|X_t])

        为了重新创建输入,通过语言模型(LM)解码器p(x|\hat{z})输入\hat{z}

        使用 BART-base 解码器[42]作为 LM 解码器,因为它与 RoBERTa [42] 实现共享词汇,并且在许多生成任务中被证明非常强大。得到的词库如下:

        其中是LMHead前馈层,用于将解码器(p_{\theta })的嵌入映射为token。重构损失是在输入标记 ID 和重构标记 ID 之间计算的,计算公式如下:

         其中 L 代表交叉熵损失,S是序列长度。

        为了确保两个解缠潜空间的后验接近其先验分布,对两个潜空间进一步强制执行 KL损失。解缠模块的证据下限(ELBO)表述如下:

         其中,\alpha _t表示控制目标 KL 损失贡献的系数,\alpha _c表示控制因果 KL 损失贡献的系数。为了便于从目标标签中学习,遵循 [ 20 ] 的方法,在目标的 KL 损失中加入了交叉熵损失。KLD 的计算公式为

其中, t是真实目标标签,arg max( X_t)是预测的目标标签,D_{KL} 代表 KL 发散,L_{CE}是交叉熵损失,\alpha _{tc}是控制熵值的系数。

 3.3 Model Training

        在仇恨言论检测中,利用分解的潜在因果关系X_c代表来计算分类概率:

        其中, FC_h代表用于仇恨分类的全连接层。然后,使用标准交叉熵计算总体损失 L:

        其中,y_i表示真实的仇恨标签,\hat{y}_i表示预测的仇恨标签。最后,将所有提议的模块结合起来,以多任务学习的方式进行训练:

 4 EXPERIMENTS

        在本节中,进行了一系列实验,旨在验证 CATCH 学习可泛化表征的有效性,以便通过因果关系感知解纠缠来检测仇恨言论

        利用从各种在线平台获取的多个数据集对方法进行了全面评估。

        此外,还进行了广泛的分析,包括消融测试和可解释性分析,以剖析模型的内部运作。

        此外,还进行了一项案例研究,比较 CATCH 与 Falcon [32] 和 GPT-4 [ 33] 等大型语言模型的性能。这些实验分析的目的是回答以下一系列相关的研究问题:

问题 1 将输入表征分解为因果成分和平台相关成分(目标)是否有助于学习不变的因果表征,从而提高仇恨言论检测的普适性?

问题 2 学习到的分离表征在不同平台上是否不变?

问题 3 CATCH 组件在帮助表征泛化方面有何贡献?

4.1 Datasets and Evaluation Metrics

        在广泛使用的基准仇恨数据集上对仇恨言论检测进行二元分类。由于目标是验证跨平台泛化,因此使用了来自四个不同平台的数据进行跨平台评估: GAB、Reddit、Twitter 和 YouTube。所有数据集均为英文。

        GAB [ 29 ] 是 GAB 网站的注释帖子集。它由二进制标签组成,表明帖子是否具有仇恨性。这些实例都标注了相应的解释,人群工作者在解释中说明了特定帖子或内容被视为仇恨的原因。

        Reddit [18] 是一个帖子集合,显示帖子是否具有仇恨性。它包含十个顺序标签(情绪、(不)尊重、侮辱、羞辱、低等地位、暴力、非人化、种族灭绝、攻击/防御、仇恨言论),这些标签经过去重后汇总成一个连续的仇恨言论严重性得分(仇恨言论得分)。对这些数据进行二值化处理,将仇恨言论得分小于 0.5 的数据视为非仇恨数据。

        Twitter [29 ] 包含从 Twitter 平台上的推文中收集的仇恨言论实例。与 Gab 数据集类似,这些实例也与人群工作者撰写的解释相匹配,旨在解释相应推文中存在的仇恨性。

        最后,YouTube [ 36 ] 收集了 YouTube 平台上发布的仇恨言论和评论。所有这些数据集都包含仇恨标签和目标标签。

数据集摘要见表 2。使用宏 F1 度量进行验证。

 4.3 Performance Comparisons (RQ.1)

        研究中,使用各种真实世界数据集,在四个不同平台上将各种基线模型与 CATCH 进行了比较。每个数据集分为训练集和测试集,以评估这些模型的可移植性。然后,使用从单一平台获取的数据对每个模型进行训练,并根据从所有平台获取的测试集进行评估。表 1 以宏-F1 指标为基准,比较了几个测试集的性能。

        目标平台 "列中列出了用于模型的平台评估,而源平台栏则提供用于模型训练的平台。记录了跨平台和平台内情况下每个源数据集的每个模型的性能。对 RQ.1 的跨平台性能观察到以下几点:

        在跨平台场景中,CATCH 的性能效率最高。平均而言,该模型在 GAB、Reddit、Twitter 和 YouTube 上的跨域效率分别提高了约 3%、5%、3% 和 3%。将这一改进归功于应用了因果感知解纠缠技术,该技术可初步区分与平台相关的目标和与平台无关的因果表征只利用因果表征进行仇恨预测。此外,这些结果进一步证实了仇恨强度随目标而变,而基本仇恨属性保持一致的假设。

        PEACE 的表现优于包括 HateBERT 在内的其他模型,这主要是由于它使用了情感和攻击性等不变因果指标进行表征,从而促进了更好的泛化。此外,在仇恨言论数据集上微调 BERT 模型(如 HateBERT 和 HateXplain)也能提高性能。不过,PEACE 并不完全具有优势,因为并非所有仇恨言论都包含情感和攻击性/citeperez2017racism,而且它只考虑了两个属性,忽略了其他一些同样重要的属性,如语境和社会政治因素/citegarg2022handling。

        在某些情况下,EasyMix 基线在概括方面遇到了挑战。它采用了数据增强技术,并将仇恨言论任务视为一个蕴含问题。不过,推测它之所以难以超越其他模型,是因为它依赖于源域中样本的不同组合,例如将非仇恨样本与其他非仇恨样本混合。这种方法可能会增强对偶然相关性的依赖,从而有利于域内性能,但对域外性能产生负面影响。

        基于语言特征(POS + EMO)的基准线并不能很好地概括这些数据集。推测这是由于这些数据集中的帖子具有高度非结构化和语法错误的特点。即使经过预处理,推断出的 POS 标记和情感词也可能无法准确反映仇恨内容。因此,依赖这些特征会影响泛化性能。

4.4 Are the Disentangled Causal Representations Invariant? (RQ.2)

        CATCH 的基本特征之一是能够将输入表征分解为因果表征和平台依赖(目标)表征。由于因果表征被用于预测仇恨标签,因此它们会表现出不变性。

        为了验证这种不变性的存在,进行了额外的实验。在实验中,在作为源平台的 GAB 上训练 CATCH。然后,随机抽取 1000 个仇恨和非仇恨帖子实例,检查从不同平台获取的因果表征的 t-SNE 图。这些表征之间的重叠程度表明了模型提取不变特征的能力,而不变特征对于泛化至关重要[24]。

        为了公平比较,将此实验扩展到前三个基线模型 HateBERT、PEACE 和 HateXplain,结果如图 4 所示。

        从图中可以看出,CATCH 生成的因果关系表征与 HateBERT、HateXplain 和 PEACE 生成的因果关系表征相比,具有高度的重叠性。这表明 CATCH 擅长学习各领域普遍共享的不变特征。此外,PEACE 的表征比 HateBERT 和 HateXplain 的表征有更多的重叠。这与 PEACE 识别出两个不同平台共有的内在因果线索这一事实是一致的。尽管如此,PEACE 的表现并不优于 CATCH。这可能是因为 PEACE 手动识别了两个线索,但可能还有其他未识别的线索(如上下文)可以提供更多关于内容是否具有仇恨性的信息。虽然 Hate- BERT 和 HateXplain 有一定的重叠,但在某些平台组合中重叠很少。例如,这两个模型对 GAB 和 YouTube 的表征几乎没有重叠,而对 Reddit 和 Twitter 则有很高的重叠度。

4.5 Contribution of the Components (RQ.3)

        CATCH 架构是由各种集成模块和损耗组成的复杂结构。为了评估这些单个元素对累积性能的影响,对 CATCH 的四个不同变体进行了实验。这些变体包括 (i) CATCH w/o Hate & Target Loss,不包含仇恨和目标损失;(ii) CATCH w/o finetuning,不包含 LM 编码器和解码器的微调;(iii) CATCH w/o finetuning,不包含 LM 编码器和解码器的微调。不含仇恨损失,即放弃仇恨损失,以及 (iv) CATCH 不含目标损失,即忽略目标损失。

         在跨平台实验中使用 Reddit 和 Twitter 数据集对这些变体进行了训练。图 5(a) 是 Reddit 数据集,图 5(b) 是 Twitter 数据集。结果表明,当微调过程和各种损失成分都被纳入时,CATCH 可提供最佳性能。忽略这些成分会导致性能下降 10-18%。

        在各种变化中,CATCH 模型最显著的性能优势来自于目标损失和仇恨损失。加入目标损失和仇恨损失后,CATCH 模型的性能得到了显著提升,因为它可以引导成分的分离,从而捕捉到独特的、可概括的信息。如果没有这些损失,或者语言模型编码器和解码器没有针对仇恨内容进行微调,性能就会明显下降。

5 ARE LLMS GENERALIZABLE WHEN IT COMES TO HATE SPEECH? – A CASE STUDY

        自然语言处理 (NLP) 的最新进展是由 GPT-4 等大型语言模型 [21–23] (LLM) 推动的,它们因其高容量和广泛的数据训练而在各种应用中表现出色。然而,它们在仇恨言论检测等复杂任务(依赖于理解复杂社会环境的任务)中的有效性尚未得到充分证实。为了验证这一假设,将 CATCH 与最先进的 LLM GPT4 [ 31 ] 和 Falcon [ 32 ] 进行了性能比较,如表 3 所示。对 GPT4 和 Falcon 做了如下提示,并指出了这些模型生成的标签预测结果。在每个平台上提供了一些仇恨和非仇恨内容的实例,以利用模型的能力轻松完成预测。结果显示了模型在平台间的泛化程度

        虽然 GPT-4 在某些情况下显示出很强的效果,但其表现并不一致,尤其是在 Reddit 和 YouTube 上。Falcon 的结果略逊一筹。相反,CATCH 在这些平台上的表现优于 GPT-4 和 Falcon,这表明虽然 LLMs 具有潜力,但 CATCH 的因果关系感知方法可能为特定平台的仇恨言论检测提供了一种更先进的解决方案。总之,虽然像 GPT4 和 Falcon 这样的 LLM 有潜力,但它们在仇恨言论检测这样的细微任务中可能会有不足。然而,CATCH 采用了因果关系感知解缠技术,使其在处理特定平台的仇恨差异时更加有效。


http://www.ppmy.cn/embedded/129957.html

相关文章

【Flutter】Dart:运算符

在 Dart 中,运算符是非常重要的组成部分,它们可以对变量和常量进行多种运算操作。理解和掌握 Dart 中的各种运算符不仅可以帮助你编写更加高效、简洁的代码,还能更好地理解其背后的逻辑和设计。本文将深入探讨 Dart 中的运算符,包…

OpenCV高级图形用户界面(9)更改指定窗口的位置函数moveWindow()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 将窗口移动到指定的位置。 cv::moveWindow() 函数用于更改指定窗口的位置。你可以使用这个函数来移动窗口到屏幕上的任何位置。 函数原型 void …

蓝桥算法双周赛 第 19 场 小白入门赛

打开石门 只要有相连的一样字母就可以消成一个 string s; int ans;void solve() {cin >> s;int len 0;for (int i 0;i < s.size();i ){if (s[i] L) len ;else //遇到Q{ans (len ? 1 : 0); //消除累计的Llen 0;ans ;//遇到Q}}//QLLLL时,最后遇不到Q让累计的L消…

React 进阶阶段学习计划

React 进阶阶段学习计划 目标 掌握自定义Hooks的创建和使用。深入理解上下文&#xff08;Context&#xff09;和Redux的高级用法。学会服务端渲染&#xff08;SSR&#xff09;。深入探讨性能优化技巧。 学习内容 自定义Hooks 创建和使用自定义Hooks 自定义Hooks&#xff1…

【设计模式-原型】

**原型模式&#xff08;Prototype Pattern&#xff09;**是一种创建型设计模式&#xff0c;旨在通过复制现有对象的方式来创建新对象&#xff0c;而不是通过实例化类来创建对象。该模式允许对象通过克隆&#xff08;复制&#xff09;来创建新的实例&#xff0c;因此避免了重新创…

js 基础补充3

1. 闭包 在函数内部定义的函数&#xff0c;可以访问改函数的属性和方法 私有属性 延长变量的生命周期&#xff0c;更好的避免命名冲突 缺点&#xff1a;内存消耗比较大&#xff0c;不建议频繁使用 2. js 原型 原型链 访问对像的属性方法&#xff0c;不光会在对象上查找还会在…

大厂面试真题-了解云原生吗,简单说一下docker和k8s

K8s&#xff08;Kubernetes&#xff09;和Docker都是容器化技术中的关键组件&#xff0c;但它们各自扮演着不同的角色。以下是对这两者的详细解析&#xff1a; 一、Docker Docker是一个开源的容器化平台&#xff0c;它允许开发人员将应用程序及其依赖项打包为一个独立的镜像&…

【利用Seaborn进行高级数据可视化】创建美观且信息丰富的图表!

利用Seaborn进行高级数据可视化&#xff1a;创建美观且信息丰富的图表 数据可视化是数据分析和科学研究中不可或缺的部分。通过有效的图表&#xff0c;我们可以迅速了解数据的分布、趋势和关系。在Python的数据科学生态系统中&#xff0c;Seaborn是一个基于Matplotlib的高级库…