BvSP_ Broad-view Soft Prompting for Few-Shot Aspect Sentiment Quad Prediction

news2024/11/16 5:34:40

中文题目:
英文题目: BvSP: Broad-view Soft Prompting for Few-Shot Aspect Sentiment Quad Prediction
论文地址: aclanthology.org/2024.acl-long.460.pdf
代码地址: https://github.com/byinhao/BvSP
论文级别, 单位: (2024 ACL long paper) 南开大学,天津科技大学

摘要

方面情感四元组预测(ASQP)旨在预测基于方面的四个元素,包括方面词、观点词、方面类别和情感极性。在实际应用中,由于数据分布的差异,未见过的方面会给已训练的神经模型带来许多挑战。受此启发,本研究将 ASQP 任务引入少样本场景,旨在实际应用中实现快速适应。因此,我们首先构建了一个少样本 ASQP 数据集(FSQP),该数据集包含更丰富的类别,并且在少样本研究中更加平衡。此外,近期的方法通过生成范式提取四元组,这涉及将输入句子转换为模板化的目标序列。然而,它们主要集中在单一模板的使用或不同模板顺序的考虑上忽视了不同模板之间的关联性。为了解决这个问题,我们进一步提出了一种广视角软提示(BvSP)方法,通过考虑不同模板之间的关联性来聚合多个模板。具体而言,BvSP 使用预训练的语言模型,通过 Jensen-Shannon 散度选择最相关的 k 个模板。BvSP 进一步引入软提示,利用选择的模板引导预训练语言模型。然后,我们通过投票机制聚合多模板的结果。实验证明,在四种少样本设置和其他公共数据集上,BvSP 显著优于当前最先进的方法。我们的代码和数据集可以在 https://github.com/byinhao/BvSP 获得。

1. 介绍

分析用户评论、社交媒体帖子、产品评估以及其他网络内容,提取与特定方面相关的情感信息,有助于理解用户对不同方面的观点和情感。为了监测公众舆论并支持决策制定,情感分析和观点挖掘这一研究领域应运而生。方面情感四元组预测(ASQP)任务旨在从评论句子中提取方面四元组,以全面理解用户在方面级别上的意见。近年来,ASQP任务引起了广泛关注,因为它涉及预测四个基本的方面级别元素:

  • 方面术语,即给定文本中的具体方面描述;
  • 意见术语,描述针对某一方面的具体意见表达;
  • 方面类别,表示方面类型,指的是一个预定义的集合;
  • 情感极性,表示方面的情感类别。

例如,给定句子“The room is clean.”其方面元素分别为"room",“clean”,“room_overall"和"positive”。因此,ASQP描述为一个四元组 (room, clean, room_overall, positive).
然而,在实际情况下,方面类别并非一成不变的(Zhou 和 Law, 2022)。随着人们通过社交媒体、新闻文章及其他互联网渠道讨论新兴现象、趋势和产品等内容,新的方面会不断涌现。正如图 1 中餐馆领域的例子所示,初始的方面类别集是预定义的。然而,随着基础设施的升级,诸如“WiFi”这样的新方面逐渐出现。句子的类别,例如“互联网”,并不在预定义的类别中。这给模型全面准确地理解句子带来了挑战。此外,未见过的方面通常会发生分布偏移,使得训练后的模型难以准确适应。(方面类别不一定是一个预定义的类别)
image.png

图1:展示了一个未见过的方面案例。新出现的类别“互联网”未包含在预定义的方面类别集合中。

因此,研究少样本 ASQP 任务,即通过少量标注样本快速适应未见过的方面,变得至关重要,因为这更符合现实应用场景的需求。然而,之前的 ASQP 数据集要么类别数量有限(Zhang 等,2021a),要么存在长尾分布(Cai 等,2021;Zhang 等,2021a),因此该任务缺乏合适的基准数据集。为此,我们标注了一个名为 FSQP 的少样本 ASQP 数据集。该数据集旨在提供更平衡的表示,并涵盖更广泛的类别范围,为评估少样本 ASQP 提供一个全面的基准。(指出ASQP, ACOS的数据集的缺点, 提出了一个新数据集 FSQP )

近期研究通过生成方法将输入句子转换为模板化的目标序列,从而提取四元组。接着,通过解析模板的格式可以提取出四元组。然而,这些研究主要集中在使用单一模板,或通过考虑不同四元组顺序来结合多种模板,因此忽略了不同模板之间的关联性。为克服这一局限性,我们提出了一种创新方法,称为广视角软提示(BvSP)。BvSP 利用预训练语言模型,并通过 Jensen-Shannon(JS)散度选择多个模板,从而提供更和谐的模板视角。 我们进一步引入软提示,使用这些选择的模板对预训练语言模型进行微调。最终的预测结果通过多模板投票机制获得。

1.1 论文贡献

总结来说,本文的主要贡献如下:(数据集、方法、效果)

  1. 我们构建了一个新的少样本 ASQP 数据集 FSQP,该数据集涵盖了更丰富的类别,并在少样本研究中更加平衡。据我们所知,这是首个在 ASQP 任务中标注少样本数据集的工作。
  2. 我们提出了 BvSP 方法,这是一种基于多样化模板的软提示学习方法,通过考虑不同模板之间的关联性来提升四元组预测的准确性。
  3. 在四种少样本设置(即 one-shot, two-shot, five-shot 和 ten-shot)下的实验结果表明,BvSP 超越了强基线方法,并在其他公共数据集中取得了显著的提升。

2. 数据集

为了构建一个更能代表现实场景的数据集,本文手动标注了一个新数据集,命名为few-Shot ASQP(FSQP)。在本节中,我们将首先介绍数据收集和标注的过程。随后,我们将通过关键统计数据和特征的比较,来证明 FSQP 相较于之前的数据集的优势。

2.1 数据收集

本研究的数据来源是一组涵盖六年间来自美国各大城市的 Yelp 评论。这些评论涵盖了各种场所,包括餐馆、酒店和美容水疗中心。最初,这些评论由 Bauman 等人(2017)标注了方面类别和情感极性。FSQP 数据集是在此 Yelp 评论数据基础上的扩展,增加了更多的标注和精细化处理。

2.2 标注

2.2.1 标注规则

我们整合了三个领域的评估结果,将其与先前研究中使用的相同类别对齐。这些类别包括方面类别和情感极性,最初由 Opinion Parser (OP) 系统识别。系统生成的标注经过人工双重检查以确保准确性和完整性。随后,我们对分类体系进行了全面检查,并合并了具有相似性的方面类别。在双重检查后的方面类别和情感极性的基础上,我们进一步丰富了方面术语和观点术语的标注。
此外,按照 Cai 等人和 Poria 等人提出的方法,我们还考虑了隐含方面术语和隐含观点术语的标注。

2.2.2 标注过程

对于方面类别的选择,决策由一组专业标注人员完成,他们逐一检查每个类别及其相似性。对于其他元素的标注,我们选择了两名熟悉基于方面的情感分析的硕士研究生作为标注员,分别进行独立标注。两名标注员之间严格四元组匹配的 F1 得分为 78.63%,表明他们之间有较高的一致性。如果其中一名标注员对四元组的任何内容有异议,他们会讨论以达成共识。同时,硕士生的负责人会帮助做出最终决定。在为期六个月的标注期间,尽管标注员们可以相互交流,但他们的标注操作仍然保持相对独立。此后,还有两个月专门用于验证标注的准确性,我们在此期间严格执行一致性。基于上述措施,新的数据集标注经过了仔细的审查和讨论,表明其具有较高的可信度。

2.3 统计和分析

FSQP 的统计数据见附录 §D。FSQP 包含 12,551 个句子,共生成 16,383 个四元组。值得注意的是,FSQP 还涵盖了隐含信息,具体来说包括句子中未明确提及的隐含方面术语和隐含观点术语。通过比较这两类隐含信息,可以明显看出隐含观点术语的数量多于隐含方面术语。
image.png

表11:展示了一个未见过的方面案例。新出现的类别“互联网”未包含在预定义的方面类别集合中。
对于我们的数据集 FSQP,我们在表 11 中展示了训练集、开发集和测试集中的完整类别集合。我们还从这些集合中每个类别中选择了两条评论。采样的评论展示在表 12、13 和 14 中。第一列显示了评论句子,第二列展示了提取的四元组(方面术语、方面类别、情感极性、观点术语)。

image.png

表1:数据统计与比较。#S、#W、#Q 和 #C 分别表示句子数量、词语数量、四元组数量和类别数量。EA、EO、IA 和 IO 分别表示显性方面、显性观点、隐性方面和隐性观点。#M(C) 表示每个类别中的平均实例数量。
在表1中,我们对FSQP与现有的ASQP数据集在分布上的差异进行了更详细的比较。显而易见,FSQP在规模和四元组数量上都超越了当前最大的基准数据集Laptop。因此,FSQP在实例和四元组的数量上更为丰富,成为一个更为全面的数据集。此外,根据类别的统计可以发现,现有的基准数据集中类别和每个类别中的实例数量都不足,而我们的数据集有效地解决了这些问题。FSQP的类别数量多于餐馆领域的数据集,并且相比于Laptop,其每个类别的平均实例数量更高。**(数据更多,更丰富)** 类别分布还根据实例数量在特定区间内进行了统计。如图2所示,可以看到,在以往的基准数据集中,仅包含1-50个实例的类别占据了大多数。尤其是在Laptop数据集中,这类类别占比高达80.2%。相比之下,FSQP几乎没有这种尾部类别。因此,FSQP能够实现更稳定的训练和更可靠的测试。综上所述,FSQP为识别ASQP方法在现实场景中的能力提供了一个合适的测试平台。值得注意的是,FSQP的设计借鉴了FewRel数据集(Han等人,2018),该数据集是为小样本关系分类任务提出的。FewRel涵盖了广泛的关系类别,并且分布均衡,包含100个关系,每个关系类别包含700个实例。**(类别不均衡问题)**

image.png

图2:类别分布根据实例数量进行展示。例如,绿色部分表示实例数量在1到50之间的类别所占的比例。

3 方法

3.1 方法和概述

给定一个句子及其方面情感四元组 。参考之前的生成式方法,我们定义了投影函数,将四元组) 映射为语义值。例如,我们将情感极性的"POS”、“NEU"和"NEG"标签映射为"great”、“ok"和"bad”,并将方面术语的"NULL"标签映射为"it"。基于上述规则,我们使用了多个模板,如图7所示,将方面情感四元组转换为语言模型可以理解的目标序列。如果一个句子包含多个四元组,则将这些目标序列用特殊标记 [SSEP] 连接,得到最终的目标序列。

image.png

图7:各种方法的模板细节。
如图3所示,我们首先使用预训练语言模型和**JS散度**来选择合适的模板子集,以平衡优化的效率和效果。有关更详细的解释,请参见第4.6节。基于不同模板的软提示,这些模板可以从多个角度生成多个四元组。在推理阶段,不同模板从不同角度生成结果,因此我们通过投票的方式对这些模板进行汇总,以准确提取四元组。接下来,我们将详细描述每个部分。

image.png

图3:提出的广视角软提示(BvSP)概览。单一模板预测采用了Paraphrase方法(Zhang et al., 2021b),多阶预测方法采用了DLO(Hu et al., 2022)。BvSP将这些模板组合为候选项,并提出了一种基于相关性的模板选择策略。

3.2 相关性引导的模板选择

在这里插入图片描述

图4:解码器输出序列中的四元组元素(彩色部分)经过筛选后用于计算模板的相关性。

尽管有多种可用的模板,但同时使用它们效率较低。因此,我们通过评估它们与预训练语言模型(LM)的相关性来选择模板,详细的预训练过程在§4.1中描述。通过这种方式,选择的模板更适合LM的特性。具体而言,两个模板之间的相关性基于整个支持集D进行计算。我们计算这两个模板在所有实例上的平均得分。具体来说,给定输入、其四元组以及若干可用模板(其中为模板数量),我们用和表示在任意两个模板和下的目标序列。目标序列通常由四元组元素和连接符号组成。如图4所示,对于这两个模板,“room”、“room_overall”、“great”、“clean"表示四元组元素,”,"、"is"和"because"表示连接四元组的符号。(什么是支持集D)
因此,我们可以从每个目标序列中选择四元组部分。这个过程可以用以下方程表示。
image.png
其中,是从目标序列中选取的表示集,作为教师强制输入到解码器中。然后,我们通过使用JS散度来计算两个目标序列的相关性。
image.png
其中, 表示词汇集的大小, 表示选取的四元组标记的数量。 表示两个概率分布之间的KL散度的计算。
对于整个支持集 ,通过构建模板我们为每个实例得到 。然后,在支持集上计算模板的平均得分:
image.png
其中,表示模板和之间的所有实例的平均相关性。
然后,基于每两个模板之间的相关性,我们可以得到一个相关性矩阵 。接着,我们遍历整个矩阵,找到具有最小值的 个矩阵点。这些点对应的模板是最相关的个模板,也就是我们最终微调后的模板。我们通过考虑模板之间共享的四元组来整合多个模板。当模板之间差异较大时,会产生冲突,导致不一致的四元组或空的预测。相反,当模板之间的相关性较强时,它们更为和谐,有助于为四元组提供一致的支持。

3.3 使用选定模板进行软提示

接下来,我们旨在结合各种选定的模板。然而,区分它们是一个难点。因此,我们为每个模板设计了一个特定的前缀,作为其标识符。给定输入 、目标序列 以及模板 的前缀参数 ,我们通过最小化如下定义的交叉熵损失来进行微调:
image.png
其中是目标序列的长度。

多模板聚合

在推理阶段,遵循(Gou et al., 2023)Gou等人的做法,BvSP将所有选定模板生成的四元组结果进行汇总。随后,我们采用投票机制来确定出现频率最高的四元组,并将其指定为最终预测结果。通过设定一个阈值 ,当某个四元组的投票数量超过该阈值时,该四元组将被纳入最终预测。
image.png
其中, 表示在模板 中获得的四元组, 是最终预测的四元组集合。

4. 实验

4.1 实现细节

在实验中,所有报告的结果均为5次运行的平均值。我们采用作为预训练生成模型。对于所有基线方法和我们的方法,首先在训练集上进行预训练,然后在支持集上进行微调。我们的工作遵循常见的小样本设定,无论样本数量多少,训练集中的所有样本都会用于训练模型。"k-shot"概念指的是在小样本任务中为每个类别提供的标注实例数量。例如,在1-shot设定中,支持集中每个类别仅有一个标注实例,而在2-shot设定中,每个类别有两个标注实例。在我们的实验中,对于k-shot,我们会随机从测试集中抽取k个实例作为支持集,剩余的实例作为查询集。特别地,BvSP使用所有模板在训练集上预训练前缀参数。值得注意的是,在BvSP中,我们冻结了LLM的参数,仅微调前缀的参数。(支持集合是怎么来的)
此外,我们还描述了每个基线方法的模板细节,更多关于模板的详细信息见附录§B。在预训练阶段,除了DLO、ILO和MvP的学习率设定为1e-4外,我们将训练的轮次数设为20,批量大小设为16,学习率设为3e-4。在微调阶段的支持集中,训练轮次仍然保持在20,批量大小选择为8,学习率为3e-4。在推理阶段,所有方法的束搜索大小均设为1,唯独DLO和ILO的方法使用束搜索大小为5。

4.2 数据集

原始数据集FSQP首先根据方面类别划分为训练集、验证集和测试集。关于数据集的更多详细信息,请参见附录§A。小样本学习旨在模拟模型在现实场景中遇到训练数据集中未包含的新类别的情况。因此,这三个数据集中的方面类别数量各不相同,且没有重叠。我们进一步在四种小样本设置下对FSQP数据集进行了实验。(三个数据集中样本不重叠)

4.3 比较方法(基线)

我们选择了强大的生成基线方法,包括当前最流行的大型语言模型(LLMs),如ChatGPT(Brown et al., 2020),以及近年来情感分析领域的最新技术(SOTA)方法,即GAS(Zhang et al., 2021b)、Paraphrase(Zhang et al., 2021a)、DLO、ILO(Hu et al., 2022)和MvP(Gou et al., 2023)。

4.4 实验结果

ASQP任务在小样本设置下的实验结果如表2所示。为了公平比较,我们遵循Hu等人(2022)的设置,将默认选定的模板数量设为前三个。我们的方法BvSP在性能上仍有提升空间(见§4.6)。
可以看出,BvSP在四种小样本设置下都取得了最佳性能。尤其是在one-shot设置下,与基线方法GAS相比,BvSP的F1得分绝对提升了11.45%。此外,在相同的小样本设置和相同数量的选定模板下,BvSP的表现优于DLO和ILO。同样地,BvSP在相同的小样本设置下也优于MvP。这些结果验证了BvSP在提供更广泛的模板视角方面的有效性。
image.png

表二:在精确度(Pre,%)、召回率(Rec,%)和F1得分(F1,%)方面,对少镜头ASQP任务的评价结果与基线方法进行比较。在每一列下,最佳结果用粗体标记,最佳基线结果用下划线标记。

4.5 消融实验

为了验证BvSP在模板选择和聚合方法方面的有效性,我们进行了消融实验,结果如表3所示。按照BvSP的默认设置,模型变体同样选择前三个模板。模型变体首先研究了(I)模板选择策略,包括最大和最小熵、最大JS散度(即BvSP (JS Max))以及随机抽样(即BvSP (random))。在推理过程中,我们进一步研究了(II)聚合策略,包括BvSP (rank)和BvSP (rand)。前者通过考虑生成序列的困惑度来选择排名靠前的序列,而后者则随机选择一个序列。
image.png

表3:消融研究的评价结果。

首先观察到,使用最小JS散度的策略始终优于其他策略。具体而言,与BvSP (JS Max)、BvSP (Entropy Min)、BvSP (Entropy Max)和BvSP (random)相比,BvSP的F1得分分别绝对提升了1.52%、2.55%、2.34%和1.43%。这些结果强调了我们策略的有效性。选择相关性高的模板能够使它们更为和谐地协同工作。
此外,BvSP相较于BvSP (rank)和BvSP (rand)分别在F1得分上提升了1.52%和1.75%。我们的投票聚合方法优于其余两种策略。实际上,这两种策略的输出仅来自单一模板,可能是随机选择或基于排名选择的结果。与这些方法相比,我们通过考虑多个模板之间的共性来选择最终的预测结果,从而展现出更好的性能。

4.6 超参数研究

该研究包括检查两个超参数的影响:和τ。表示所选模板的数量,而τ是指从多个模板获得最终四边形的阈值。图5显示了结果曲线。
image.png

图5: one-shot设置下超参数对FSQP的影响。

选择模板的数量 k:这个超参数影响模板视图的广度。在这里,我们设置了不同的 k 值,并相应地将阈值 τ 设置为 。所有其他超参数保持不变。分析图 5 的左侧图表,可以看出 BvSP 在大多数情况下都优于基线 GAS,这在一定程度上表明了这个超参数的鲁棒性。尽管较大的 k 值会增加时间消耗,但选择较小的值会导致性能下降。图表清楚地展示了,当同时考虑 BvSP 的性能和消耗的时间时,最优选择是 k = 3。
阈值 :这个超参数决定了最终预测 中四元组的置信水平。较高的阈值意味着模型预测的四元组更频繁地被多个模板匹配,从而增强了对最终四元组预测正确性的信心。在图5的右图中,我们观察到,随着 的增加,BvSP的准确率不断上升,而召回率则逐渐下降,并在 设定在5到7的范围内时产生最佳的F1得分。这表明,将 设定为较大值会筛选出更少的四元组,但每个选定四元组的证据更加充分。

4.7 对其他数据集的评估

我们在 Rest15 和 Rest16 数据集上使用基线方法和提出的 BvSP 在full-shot设置中执行 ASQP 任务。结果呈现在表 4 中。BvSP 在全镜头设置中继续超越所有基线。值得注意的是,BvSP 在 top-3 和 top-15 的排名中都优于 MvP。这强调了 BvSP 不仅在少镜头场景中表现出色,而且在全镜头场景中也证明是有益的。
image.png

表4:数据集Rest15和Rest16中ASQP任务的完整结果。

4.8 案例研究

为了全面理解BvSP的优势和劣势,我们进行了一项案例研究。我们展示了一个例子,它说明了我们方法的成功预测,另一个例子则展示了我们方法做出的错误预测。这两个案例在图6中进行了描述。
image.png

图6:在单次设置下,BvSP从FSQP数据集的测试集中预测的两个案例

在案例1中,我们可以发现三个模板中有两处预测错误(用红色标记)。然而,通过我们的投票机制后,最终预测被纠正。这清楚地表明BvSP显示出了显著的能力,能够成功地从多个模板中聚合精确预测的四元组,同时通过考虑模板之间的共性,过滤掉它们之间的错误预测。此外,在案例2中,三个模板中有两处被错误预测(用红色标记),随后导致了错误的最终预测。这个案例表明我们方法的准确性仍然依赖于模板的合理性。如果多个模板包含相同类型的错误,这几乎无法通过投票机制消除错误。因此,这一观察突出了我们的聚合策略仍然具有提升的潜力。

5. 相关工作

6. 总结

本研究从小样本的角度探讨了ASQP任务,旨在仅通过少量支持样本处理未见过的方面。因此,我们首先构建了一个名为FSQP的新数据集,该数据集专门为小样本ASQP任务进行了标注。与现有的ASQP数据集不同,FSQP提供了更为平衡的表示,并涵盖了更广泛的类别,从而成为评估小样本ASQP的全面基准。此外,基于生成的范式已成为ASQP的最新技术。然而,以往的方法忽略了不同模板之间的相关性。在本研究中,我们提出了一种广视角软提示(BvSP)方法来解决这一局限性。BvSP利用JS散度分析模板之间的相关性,并选择相关模板。然后,基于这些选定的模板,通过软提示引导预训练语言模型。最终,结果通过投票进行聚合。在小样本设置下进行的大量实验表明,BvSP在显性和隐性信息处理方面都表现出普遍的有效性,并带来了显著的提升。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

写给大数据开发:如何解决拖延

你是否曾面对一个复杂的Spark任务,明知它对项目至关重要,却总是找各种理由推迟动手?或者,你有没有在面对一堆待优化的Hive查询时,选择先去重构那个"并不那么紧急"的Python脚本? 如果你点头了&am…

faceswap安装

目录 简介下载地址安装clone代码安装conda配置和安装 启动其他 简介 Faceswap 是领先的免费开源多平台 Deepfakes 软件。由 Tensorflow、Keras 和 Python 提供支持;Faceswap 将在 Windows、macOS 和 Linux 上运行。支持CPU运行,无独显也能跑。 下载地址…

language model

1、language model(LM):估计token序列的可能性 2、对于HMM,固定需要P(Y)才符合公式;对于LAS,加上P(Y)能够使效果更好 P(Y|X)需要成对的数据,而P(Y)不需要成对,所以可以得到很多数据 …

Git使用教程介绍 - 1.Git 起因和背景

对于git的整体运作体系和更多的基本操作和概念并不是非常熟悉,因此恶补一番,把自己的成果和理解整理为一个git使用系列。 我也会不断更新该系列,与大家共勉,也是自我学习迭代的过程。 更多技术文章,全网首发公众号 “…

pytorch库 05 PyTorch深度学习实践笔记

文章目录 一、基本概念1、深度学习流程2、感知机结构与人工神经网络结构3、反向传播(Back Propagation)导学 二、线性模型1、线性模型计算流程2、代码实现3、小练习 三、梯度下降算法1、梯度下降计算流程2、代码实现3、随机梯度下降(SGD&…

你还纠结996吗?2024年互联网公司工作时长排行榜出炉!

2024年互联网公司工作时长排行榜新鲜出炉!在这个竞争激烈的行业中,工作时长一直是人们关注的热点话题。你还在纠结996工作制吗?也许这份排行榜会给你一些意想不到的答案。 为什么一些公司依旧推行996,而另一些公司却在努力减少员…

驾考流程不清晰?教练精心整理,学车速看!(建议收藏)

驾考流程太复杂?不知道报名之后要怎么做?看这一篇给你把驾考流程说通透! 第1步 驾校报名 建议从驾校的规模、收费、教练水平、合格率等方面综合考虑,选择一个适合自己的驾校,携带个人身份证进行缴费报名。 第2步 体检…

C++:map And set

1. 关联式容器 在初阶阶段,我们已经接触过STL中的部分容器,比如:vector、list、deque、forward_list(C11)等,这些容器统称为序列式容器,因为其底层为线性序列的数据结构,里面存储的是元素本身。那什么是关联…

深入理解Java虚拟机(内存区域)

文章收录在网站:http://hardyfish.top/ 文章收录在网站:http://hardyfish.top/ 文章收录在网站:http://hardyfish.top/ 文章收录在网站:http://hardyfish.top/ 内存区域 运行时数据区域 Java虚拟机在执行Java程序的过程中会把它…

haproxy的工具及其算法

一、socat 工具 dnf install socat -y #查看帮助文档 echo "help" | socat stdio /var/lib/haproxy/stats #查看参数 echo "show info" | socat stdio /var/lib/haproxy/stats #查看服务状态 echo "show servers state" | socat stdio /var/lib/…

【Vue3】嵌套路由

【Vue3】嵌套路由 背景简介开发环境开发步骤及源码 背景 随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日子。本文内…

智匠MindCraft AI 1.2.6版本更新啦!!

智匠MindCraft AI​​​​​​​迎来1.2.6版本更新,本次更新四大内容: 1、网页代码及python代码渲染优化。更稳定的代码渲染功能,您可以在智匠AI中,实现炫酷的网页效果,或者用python制作图表和游戏。 2、语音实验室增…

Linux 配置定时任务

Linux定时任务,通常被称为Cron Jobs,在系统管理和运维自动化领域中扮演着至关重要的角色,并且在日常的服务器维护活动中也展现出了广泛而深远的应用价值。这种强大的工具允许用户按照预定的时间周期自动执行各种任务,如数据备份、…

springboot中的工厂模式

说到工厂模式,先说说工厂模式是什么,有什么优点 平常我们在工作开发过程中,往往因为工期问题导致整体功能设计考虑的不够周到,导致后期迭代时发现需要原有功能流程基础上追加新功能时,需要耗费更多的成本,…

【HarmonyOS NEXT星河版开发学习】小型测试案例16-小米官网轮播图部分

个人主页→VON 收录专栏→鸿蒙开发小型案例总结​​​​​ 基础语法部分会发布于github 和 gitee上面(暂未发布) 前言 鸿蒙开发中的Swiper组件应用十分的广泛,像小米、淘宝、京东...众多网友都采用了轮播图的效果。不仅更加的美观&#xff0c…

AutoTiny电脑自动化操作

AutoTiny 可以自动化电脑上的一些操作,比如帮你重复鼠标点击操作(我猜可以当作外挂刷怪,可惜已经过了喜欢刷怪的年纪了)

Linux学习之路 -- 进程 -- 进程间通信 -- 管道通信

本文主要介绍进程通信中的管道通信。 前面我们学习进程的过程中,我们知道,进程是具有独立性的。这也就导致了进程不能够直接地把数据进行传递。为了实现进程之间地通信,我们就需要通过另外地方式来实现进程之间数据地传递。 1.进程通信的目…

训练 Transfomer 模型的内存消耗计算

目录 model 内存gradients 内存activates 内存 经典图打底: 训练深度模型的内存消耗主要有以下几个部分: 存储模型可训练参数存储梯度存储反向传播中间变量,例如: L ( Y − Y ^ ) 2 Y ^ X T W ∂ L ∂ W − 2 ( Y − Y ^ ) …

Transformer架构;Encoder-Decoder;Padding Mask;Sequence Mask;

目录 Transformer架构 Transformer架构的主要组成部分: 简单举例说明输入和输出: Encoder-Decoder 编码器/解码器组成 6、位置前馈网络(Position-wise Feed-Forward Networks) 7、残差连接和层归一化 10、掩码Mask 10.1 Padding Mask 10.2 Sequence Mask 为什么…

Gradio 复杂布局的实现

Gradio Interface 和 ChatInterface 布局都相对固定,只能通过参数添加组件,如果想要自定义页面布局,就需要更高级的布局方式 Block 。Gradio 中可以通过行和列进行布局,可以互相嵌套。我们先看一官方的例子: import g…