System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于大语言模型的中文超长文本的分类方法技术_技高网

一种基于大语言模型的中文超长文本的分类方法技术

技术编号:41987230 阅读:19 留言:0更新日期:2024-07-12 12:15
本发明专利技术公开了一种基于大语言模型的中文超长文本的分类方法,涉及超长文本处理技术领域,包括以下步骤:(1)获取中文超长文本分类数据以及对应的分类标签;(2)对中文超长文本数据预处理;(3)定义大语言模型的下游任务模型;(4)对中文长文本使用大语言模型BERT进行微调;(5)用训练好的模型权重对中文超长文本预测类别。本发明专利技术的基于大语言模型的中文超长文本的分类方法在工程应用中可显著提高中文超长文本分类的准确率。

【技术实现步骤摘要】

本专利技术涉及超长文本处理,具体是涉及一种基于大语言模型的中文超长文本的分类方法


技术介绍

1、随着互联网的发展,人们在日常生活中产生的文本数据量越来越大,网络上的文本数据日益增长,采用文本分类技术对海量数据进行科学地组织和管理显得尤为重要。文本分类常用于数字化图书馆、邮件过滤等领域,为文本资源的查询、检索提供了有力支撑,是当前的主要研究热点之一。如何高效地对这些文本进行分类成为了一个重要的问题。目前,已有一些研究者提出了一些基于传统机器学习、深度学习等方法的文本分类技术,但这些方法存在一些问题,如对超长文本的处理能力不足、对文本语义理解能力不足等。

2、许多基于传统的机器学习和深度学习的文本分类方法只在特定的、清洗较为干净的数据集上效果较好,但在实际工程应用中分类的准确率较低。

3、现有技术中,具体存在以下两个缺点:

4、(1)中文文本长度过长,若每行文本长度为几千,但是大语言模型bert的最大长度较短,模型加载数据时会直接删除大部分数据,丢弃了大部分数据特征,留下的数据特征量较少,可能删去的数据才是文本的关键内容,大大降低的文本分类的准确率。

5、(2)部分模型在学术上对超长中文文本的鲁棒性较好,但是在实际工程应用中效果较差,达不到应用标准。


技术实现思路

1、本专利技术为了解决现有模型处理中文超长文本分类准确率较低的问题,提出了一种基于大语言模型的中文超长文本分类的方法,旨在工程应用中提高中文超长文本分类的准确率。

>2、为了实现上述目的,本专利技术所述的方法包括以下步骤:

3、(1)获取中文超长文本分类数据以及对应的分类标签;

4、(2)对中文超长文本数据预处理;

5、(3)定义大语言模型的下游任务模型;

6、(4)对中文长文本使用大语言模型bert进行微调;

7、(5)用训练好的模型权重对中文超长文本预测类别。

8、进一步地,所述步骤(1)中,具体还包括:

9、获取所有的文本分类的中文数据,再将所有分类的数据打好标签,放在规定的文件夹内,清洗好数据。

10、进一步地,所述步骤(2)中,具体还包括:

11、将分类好的每份pdf文件转换成图片并提高图片的分辨率,最后再通过ocr识别成文字;

12、在加载数据时,将每行数据截成小于等于最大长度的文本并赋予与原文本相同的标签,每行文本与上下文重叠的长度设为截断文本长度的一半;随后对截断后的每个片段进行tokenize,生成以下三个输入:

13、片段中每个字对应词表中的唯一标识;

14、第一个句子和特殊符号的位置是0,第二个句子的位置是1;

15、不足每行最大长度的位置为0,其他位置为1,为1的参与注意力计算。

16、进一步地,所述步骤(3)中,具体还包括:

17、在下游任务模型中定义一个全连接层,将bert输出的向量维度转为类别数;

18、对长文本中截断后的多个子句的embedding做循环,用bert语言模型对每个子句提取特征,获取cls,所述cls为输入文本中第一个词的词向量,加入到长文本的截断后子句特征cls的集合,再对长文本所有子句cls集合取均值,作为该长文本最终cls输出;

19、所有子句cls集合取均值的公式如下:

20、

21、式中:

22、clsi表示每个长句中每个子句的第一个词的词向量;

23、l为所有子句的长度;

24、将长文本最开始的cls标识符输出对应的特征向量输入到一个二分类或n分类输出层中做softmax进行分类;

25、所述softmax进行分类公式如下:

26、p(c|h)=softmax(wh)

27、式中:

28、c为标签;

29、h为cls的最终隐藏状态表示;

30、w是分类任务的参数矩阵;

31、通过softmax函数将多分类的输出值转换为范围在[0,1]和为1的概率分布。

32、进一步地,所述步骤(4)中,具体还包括:

33、加载大语言模型的权重,输入预处理后的数据集,在每个epoch中,一个所述epoch指的是所有数据训练一次,对每次迭代中长文本的子句cls集合取均值,作为该长文本最终cls输出,然后将每个长文本的最开始的cls标识符输出对应的特征向量输入到一个二分类或n分类输出层中做softmax进行分类;

34、在分类任务中,额外全连接层的参数训练时是从零开始学习的,预训练bert模型中的所有参数都是微调的;

35、计算每个epoch训练数据和验证数据的损失函数值和准确率,多个epoch结束后保存损失函数值最小的模型权重,预测时可直接使用该最优模型权重。

36、进一步地,所述步骤(5)中,具体还包括:

37、获取步骤(4)中训练完成的分类模型的权重,对预处理好的预测集进行分类,并计算数据集的平均准确率,准确率的公式如下:

38、sum(t′=tl)/l

39、式中:

40、t’表示预测出的数据标签;

41、tl为数据初始标签;

42、l则为预测数据的总标签数。

43、与现有技术相比,本专利技术具有如下的有益效果:

44、1、超长文本数据使用大语言模型训练加载数据时,将每行数据截成小于模型最大长度的文本并赋予与原文本相同的标签,bert提取长文本所有子句提取特征,相比之前的模型可以挖掘出长文本数据的所有特征,而不是丢弃许多重要的特征,大大提升了超长中文文本分类的准确率;

45、2、文本输入到大语言模型bert中,将句子开始的cls标识符输出对应的特征向量,然后将这个特征向量输入到一个二分类(或者是n分类)输出层中做softmax进行分类。分类任务中全连接的参数是从零开始学习的,而预训练bert模型中的所有参数都是微调的。

本文档来自技高网...

【技术保护点】

1.一种基于大语言模型的中文超长文本的分类方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的方法,其特征在于,所述步骤(1)中,包括:获取所有的文本分类的中文数据,再将所有分类的数据打好标签,放在规定的文件夹内,清洗好数据。

3.根据权利要求1所述的方法,其特征在于,所述步骤(2)中,包括:

4.根据权利要求1所述的方法,其特征在于,所述步骤(3)中,包括:

5.根据权利要求1所述的方法,其特征在于,所述步骤(4)中,包括:

6.根据权利要求1所述的方法,其特征在于,所述步骤(5)中,包括:

【技术特征摘要】

1.一种基于大语言模型的中文超长文本的分类方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的方法,其特征在于,所述步骤(1)中,包括:获取所有的文本分类的中文数据,再将所有分类的数据打好标签,放在规定的文件夹内,清洗好数据。

3.根据权利要求1所述的...

【专利技术属性】
技术研发人员:蒋舜陈广强司家慧李书云
申请(专利权)人:中徽建技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1