System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及文本分析,具体而言,涉及一种基于高效微调开源大语言模型的文本立场检测方法。
技术介绍
1、目前,常用的立场检测方法有基于机器学习的立场检测、基于深度学习的立场检测和基于预训练语言模型的立场检测。其中基于预训练大语言模型的立场检测方法因为能够利用大规模数据学习到的深层语言理解能力,表现效果最优,代表模型有生成式gpt(generative pre-trained,一种基于互联网的、可用数据来训练的、文本生成的深度学习模型)等。但是gpt-4(美国人工智能研究实验室openai发布的语言模型)、文心一言等模型未开源、需要付费,而且存在隐私泄露和高延迟等问题。除此之外,虽然现有预训练大语言模型在大规模数据集上进行了预训练,但是缺乏专业领域立场检测相关的先验知识,因此在专业领域(例如社交媒体分析、对事件的态度等)立场检测应用中准确性较低。通常需要通过微调使其学习专业领域的先验知识,从而提高大语言模型在下游任务中的准确性。然而,传统的微调方法通常需要更新模型的所有参数,耗费的计算资源极大,导致实际应用成本较高。
技术实现思路
1、本专利技术旨在提供一种基于高效微调开源大语言模型的文本立场检测方法,以解决以下两个问题:
2、(1)解决常见未开源大语言模型如gpt-4需要付费使用、存在隐私泄露和高延迟的问题。
3、(2)解决现有预训练大语言模型缺乏立场检测相关的先验知识而导致准确率低的问题和解决传统微调方法训练难度较大、训练成本高和效率低的问题。
5、步骤1,通过提示词工程构建提示词句;
6、步骤2,构建并训练得到微调开源大语言模型;
7、步骤3,将提示词句输入微调开源大语言模型进行文本立场检测。
8、进一步地,步骤1中,将需要立场检测的文本和需要立场检测的目标自动填入提示词中形成一个提示词句。
9、进一步地,步骤2包括如下子步骤:
10、步骤2.1,模型初始化,包括:
11、选择开源大语言模型,并识别注意力模块中的可训练层;
12、冻结除可训练层之外所有层的参数,得到参数冻结模型;
13、在参数冻结模型的可训练层添加lora适配层,并对lora适配层中的两个低秩分解矩阵a、b进行初始化处理,得到适配层初始化模型;
14、步骤2.2,微调文本预处理,包括:
15、首先将专业领域微调文本集t输入文本预处理模块,经过数据格式转换处理,得到支持lora微调的json数据集d;
16、然后将json数据集d输入文本划分模块,经过划分数据集处理,得到n个批次的数据集,每个批次数据集包含h个批次输入数据和批次对应标签;
17、步骤2.3,lora微调,包括:
18、将数据集中批次输入数据循环输入适配层初始化模型与lora微调模块构成的lora高效微调开源大语言模块,经过前向网络传播,得到批次预测数据;
19、将批次预测数据和批次对应标签输入多分类交叉熵损失计算模块,经过损失函数计算,得到损失函数值;
20、将损失函数值和优化器输入反向传播和梯度更新模块,经过计算梯度和反向传播更新lora适配层中的两个低秩分解矩阵a、b,循环迭代n次后得到微调开源大语言模型。
21、进一步地,步骤2.1中对lora适配层中的两个低秩分解矩阵a、b进行初始化处理的方法表示为:
22、
23、其中,,表示行列的实数矩阵空间,分别表示行列的实数矩阵空间,是权重更新过程中一个假设的本征秩, z是注意力模块的输入特征维度,是注意力模块的输出特征维度,是原始注意力模块的输出向量,是添加lora适配层后的注意力模块的输出向量。
24、进一步地,步骤2.3中损失函数值的计算方式如下:
25、
26、其中,是批次对应标签第个样本的one-hot编码向量,是批次预测数据第个样本的one-hot编码向量。
27、进一步地,步骤3包括如下子步骤:
28、步骤3.1,输入处理,包括:
29、根据预定义词表对提示词句进行分词,得到词组列表;
30、对词组列表中每一个id向量进行词嵌入映射,得到词嵌入向量;
31、步骤3.2,微调开源大语言模型处理,包括:
32、将词嵌入向量输入微调开源大语言模型,经过均方根归一化处理,得到归一化向量;
33、将归一化向量输入微调注意力模块,经过映射处理,得到查询向量、关键向量和数值向量;
34、将查询向量、关键向量和数值向量输入核心注意力运算模块,经过注意力运算处理,得到加权向量;
35、将加权向量输入多层感知机模块,经过多层感知机运算处理,得到特征向量;
36、步骤3.3,输出处理,包括:
37、将特征向量输入输出处理模块,经过均方根归一化处理,得到归一化向量;
38、将输入词嵌入逆操作模块,经过解码器还原处理,得到概率分数向量,概率分数向量表示每一个id向量的概率分数;
39、将概率分数向量输入索引预测模块,经过操作,选择概率分布中概率最大的id向量作为输出,得到字符索引向量;
40、将字符索引向量输入词汇表转换模块,经过与预定义词表的匹配操作,得到模型预测的下一个字符;
41、字符会与原输入的提示语句合并为下一个循环的输入,继续输入微调开源大语言模型进行处理,重复操作直到生成立场检测结果为止。
42、进一步地,步骤3.1中,词嵌入映射公式表示为:
43、
44、其中,是词嵌入向量,是词嵌入矩阵,是词组列表中的id向量。
45、进一步地,步骤3.2中,查询向量、关键向量和数值向量的计算方式如下:
46、
47、其中,为对应查询向量的映射处理的权重矩阵,为对应查询向量的映射处理的偏置矩阵;为对应关键向量的映射处理的权重矩阵,为对应关键向量的映射处理的偏置矩阵;为对应数值向量的映射处理的权重矩阵,为对应数值向量的映射处理的偏置矩阵。
48、进一步地,步骤3.2中,加权向量的计算方式如下:
49、
50、其中,是注意力运算处理,是概率权重分配处理,是关键向量的转置,是关键向量的维度。
51、进一步地,步骤3.2中,特征向量的计算方式如下:
52、
53、其中,其中,是将向量维度扩展四倍的线性变换参数中的线性映射矩阵,是将向量维度扩展四倍的线性变换参数中的偏置矩阵,是将向量维度缩小四倍的线性变换参数中的线性映射矩阵,是将向量维度缩小四倍的线性变换参数中的偏置矩阵,为非线性激活函数。
54、综本文档来自技高网...
【技术保护点】
1.一种基于高效微调开源大语言模型的文本立场检测方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤1中,将需要立场检测的文本和需要立场检测的目标自动填入提示词中形成一个提示词句。
3.根据权利要求1所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤2包括如下子步骤:
4.根据权利要求3所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤2.1中对LoRA适配层中的两个低秩分解矩阵A、B进行初始化处理的方法表示为:
5.根据权利要求3所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤2.3中损失函数值的计算方式如下:
6.根据权利要求3所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤3包括如下子步骤:
7.根据权利要求6所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤3.1中,词嵌入映射公式表示为:
8.根据权利要求6所述的基于高效微调开源
9.根据权利要求6所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤3.2中,加权向量的计算方式如下:
10.根据权利要求6所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤3.2中,特征向量的计算方式如下:
...【技术特征摘要】
1.一种基于高效微调开源大语言模型的文本立场检测方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤1中,将需要立场检测的文本和需要立场检测的目标自动填入提示词中形成一个提示词句。
3.根据权利要求1所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤2包括如下子步骤:
4.根据权利要求3所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤2.1中对lora适配层中的两个低秩分解矩阵a、b进行初始化处理的方法表示为:
5.根据权利要求3所述的基于高效微调开源大语言模型的文本立场检测方法,其特征在于,步骤2.3中损失函数值的计算方...
【专利技术属性】
技术研发人员:韩霄龙,曾曦,刘锟,尚钰,陈秋益,
申请(专利权)人:中国电子科技集团公司第三十研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。