技术新讯 > 计算推算,计数设备的制造及其应用技术 > 基于大模型的软件创新需求的生成方法与系统  >  正文

基于大模型的软件创新需求的生成方法与系统

  • 国知局
  • 2024-09-11 14:16:42

本发明涉及软件需求工程,涉及一种需求生成方法与系统,特别涉及一种基于大模型的软件创新需求的生成方法与系统。

背景技术:

1、软件的需求工程是软件工程的基础环节之一,它在软件生命周期的每一个阶段都发挥了重要的作用,通常使用自然语言来描述软件系统所被期望的服务,以帮助开发人员理解客户的需求功能和愿望效果。在现代互联网环境中,软件市场的竞争正变得越来越激烈化,软件需求的质量和需求生成的效率备受关注。然而,传统的软件需求获取方法主要由需求工程师挖掘、筛选、评估,需求的获取需要大量的人工成本和时间成本。随着计算机信息技术的迅速发展,需求文档的自动生成方法为需求工程存在的上述问题提供了全新的解决途径。如:

2、中国专利文献cn115081447a公开一种软件开发的需求文档构建方法、装置、设备及存储介质,该发明对客户提供的需求方案进行分词处理得到分词集合,然后使用预训练的模型对分词集合进行向量化编码得到向量化矩阵,接着使用功能实体识别模型对向量化矩阵进行特征提取操作,得到特征序列,最后对特征序列进行功能实体识别,得到功能集合,生成客户需求。该方案通过分词处理、向量化编码和功能实体识别模型自动生成需求,能够提升需求生成的速度及软件开发的效率。然而,该方案生成的需求是从用户提供的需求方案中经过分词处理和特征提取得到的子集,无法生成创新需求文本。

3、中国专利文献cn115630146a公开一种基于人机交互的需求文档自动生成方法、装置和存储介质,该方案首先基于预设标准构建与软件需求文档规范对应的对话模板;然后系统根据对话模板向用户进行提问,并采集反馈信息;接着根据反馈信息提取用户消息中的需求信息,并预测响应动作;最后在响应动作中向对话模板填充需求信息,根据获取到的信息生成思维导图和符合预设标准的软件需求文档。该方案通过对话模板、用户提问和反馈信息来生成需求文档,能够降低需求获取的人力成本和时间成本。然而,该方案生成的需求依赖于用户提供的反馈信息,缺乏生成创新需求文本的能力。

4、中国专利文献cn117291190a公开一种基于情感词典和lda主题模型的用户需求计算方法,该方案根据产品评论进行基于情感分析和属性抽取的用户需求分析,提出了文本向量融合不同模型表示的情感特征向量进行用户评论的情感极性分析方法;首先对用户评论进行预处理,筛选情感特征词,然后融合文本向量和情感特征向量,接着使用逻辑回归分类模型对融合后的向量进行评论情感极性的分类;最后使用lda主题模型对词语进行主题抽取,得到用户的产品需求。该方案通过对产品评论进行情感分析,使用lda主题模型进行主题抽取,进而获取需求。然而,该方案生成的需求基于用户的评论,并且没有对其创新性进行检验,无法稳定生成具有创新性的需求文本。

5、因此亟待研发一种能自动稳定生成具有创新性的需求文本的软件需求生成方法。

技术实现思路

1、本发明要解决的技术问题是:提供一种基于大模型的软件创新需求的生成方法与系统,其目的在于通过大模型自动稳定地生成可理解且有创意的需求文本,解决现有软件需求工程难以生成自动稳定生成创新需求文本的问题,并解决现有需求工程难以克服的创新性检测以及可理解性检测的问题。

2、为了解决上述技术问题,本发明采用以下技术方案:

3、第一方面,本发明提供一种基于大模型的软件创新需求的生成方法,具体包括如下步骤:

4、s1、分级提炼采样:提取软件应用描述长文本,对其进行独立性文本提炼以及核心信息提炼后得到短文本数据集,并划分为训练集和应用数据集;

5、s2、模型微调训练:对训练集进行关系抽取,并输入多种大模型竞争训练,对比各个参数及规模的大模型的效果,选择最优大模型;

6、s3、文本分类组合:将应用数据集的原始需求文本进行聚类,随机重组获取新的结构化信息,然后输入步骤s2的最优大模型,生成创新需求文本;

7、s4、创意评估检验:对步骤s3生成的创新需求文本进行可理解性检验及创意性检验。

8、进一步地,步骤s1的分级提炼采样过程具体如下:

9、提取应用描述文本数据集,对两个及以上不同领域的长文本进行独立性文本提炼以及核心信息提炼,先将不同领域的长文本分别使用langid库去除其他语言文本(例如:去除非英文文本或保留英文文本);然后使用simhash算法去除重复数据,并对长文本进行清洗,去除特殊符号和表情、数字符号、换行符、缩写词还原;再使用textrank算法查找文本词语间的共现信息抽取关键词,将长文本数据集切片为短文本数据集,并划分为训练集和应用数据集。

10、本发明中的大模型一般是指模型具有庞大的参数规模和复杂程度的机器学习模型。在深度学习领域,大模型通常是指具有数百万到数十亿参数的神经网络模型。步骤s2中的大模型包括gpt,bert等大模型。gpt模型又包括gpt-1、gpt-2、gpt-3等模型。

11、进一步的,步骤s2中模型微调训练过程具体如下:

12、使用spacy库对训练集的结构和组成进行分析,标记主谓宾文本块,获取主谓宾结构的三元组,将编码后的结构化信息及句子分别输入多种大模型并进行微调,使用simcse框架将输出文本与原始文本向量化,比较向量的欧氏距离,选择文本还原能力最优秀的大模型作为最终的创新需求生成大模型。

13、进一步地,步骤s3的文本分类组合过程具体如下:

14、先将应用数据集的需求文本进行聚类,划分为不同的簇;然后针对每种领域进行主题搜索,划分相关簇与无关簇,在相关簇和无关簇中分别提取相关项及无关项,对相关项进行改写得到突变项,随机组合相关项、无关项、突变项,输入步骤s2的最优大模型,生成创新需求文本。

15、本发明通过采用两个及以上领域的文本,可以把数据分成不同类别,然后选择一个类别进行搜索,这样就能得到两类数据,一类是相关数据,一类是无关数据,然后对相关的进行改写,把得到的数据叫突变数据,之后从相关数据、无关数据、突变数据,这三类数据中分别抽取主谓宾结构,进行重组,得到需要的输入数据。

16、进一步地,步骤s3中的文本分类过程具体如下:

17、使用bertopic主题模型将应用数据集划分为不同的主题,使用bert模型将文本转化成掩码数据,使用umap技术降低掩码数据的维度,通过hdbscan方法聚类低维数据并创建语义相似的文档集群,使用c-tf-idf提取并减少主题数目,利用最大边际关联提高词汇的连贯性和多样性,得到不同的簇;

18、其中,bertopic主题模型聚类的大小由模型的实际效果决定,模型的实际效果由模型对所有的数据聚类后噪声点的比例和模型完成主题聚类后的搜索的两个及以上对应的比例和原数据输入的比例的差值决定;

19、模型对所有的数据聚类后噪声点的比例的计算公式为:

20、

21、其中,clusterpercent表示模型对所有的数据聚类后噪声点的比例,numcluster表示非噪声点的数量,numall表示所有输入数据的数量;

22、模型完成主题聚类后的搜索的两个及以上领域对应的比例和原数据输入的比例的差值的计算公式为:

23、clusteraccuracy=h1percent+h2percent+......+hnpercent

24、其中,clusteraccuracy表示模型完成主题聚类后的搜索三个领域对应的比例和原数据输入的比例的差值,h1、h2和hn分别表示不同的领域,h1percent、h2percent、hnpercent分别表示搜索h1、h2、hn每个领域对应的比例和原数据输入的比例的差值。

25、进一步地,步骤s3的文本组合过程具体如下:

26、将不同的簇作为样本输入bertopic主题模型,分别对每个不同领域进行主题搜索,划分出相关簇和无关簇,从相关簇和无关簇中分别随机提取相关项和无关项,对相关簇提取对象中的部分进行随机改写,成为突变项,随机重组相关项、无关项、突变项,成为一个新的结构化信息,将结构化信息输入创新需求生成大模型,获得创新需求文本。

27、进一步地,步骤s4的创意评估检验过程如下:

28、使用gruen模型评估生成的创新需求文本的语言学得分,检验文本的可理解性;过滤得分低于阈值的文本,将应用数据集的生成需求文本与原始文本比较,通过自动化指标进行数字化的衡量,检验文本的创意性。

29、进一步地,步骤s4的可理解性检验过程具体如下:

30、使用gruen模型对创新需求文本依次计算语言学得分,得到平均样本语言学得分阈值,利用阈值对创新需求文本的句子进行提炼和过滤,筛除语言得分低于阈值的生成样本;

31、语言学得分是语法质量、冗余度、清晰度和准确性、结构和连贯性四个方面的语言质量分数的线性组合;

32、语言学得分的计算公式为:

33、ys=yg+yr+yf+yc

34、其中,ys表示语言学总得分,yg表示语法质量得分,yf表示冗余度得分,yf表示清晰度和准确性得分,yc表示结构和连贯性得分。

35、进一步地,步骤s4的创意性检验过程具体如下:

36、将创新需求文本与其组合三元组中的相关项、无关项、突变项进行相似度比较,使用simcse框架将文本内容向量化比较欧氏距离,取三个指标的最高值作为创意性检验结果,并根据语法质量及创意性检验的结果设定优秀项标准,当优秀项数目达到阈值,停止算法;

37、原始文本和生成文本之间的相似度计算公式为:

38、

39、其中,y表示原始文本与生成文本的欧氏距离,vg表示矢量化的生成文本内容,voi表示矢量化的原始文本内容。

40、第二方面,本发明还提供一种基于大模型的软件创新需求的生成系统,采用上述的基于大模型的软件创新需求的生成方法,具体包括:分级提炼采样模块、模型微调训练模块、文本分类组合模块、创意评估检验模块;其中,

41、所述分级提炼采样模块,用于提取软件应用描述长文本,对其进行独立性文本提炼以及核心信息提炼后得到短文本数据集,并划分为训练集和应用数据集;

42、模型微调训练模块,用于对训练集进行关系抽取,并输入多种大模型竞争训练,对比各个参数及规模的大模型的效果,得到最优大模型;

43、文本分类组合模块,用于将应用数据集的原始需求文本进行聚类,随机重组获取新的结构化信息,然后输入最优大模型,生成创新需求文本;

44、创意评估检验模块,用于检验创新需求文本的可理解性及创意性。

45、进一步地,所述分级提炼采样模块具体包括独立性文本提炼单元和核心信息提炼单元,分别用于对提取的软件应用描述长文本进行独立性文本提炼、核心信息提炼。

46、进一步地,所述模型微调训练模块,具体包括主谓宾结构三元组组合单元和最优大模型选择单元;所述主谓宾结构三元组组合单元用于对训练集的结构和组成进行分析,标记主谓宾文本块,获取主谓宾结构的三元组;所述最优大模型选择单元用于将获取的主谓宾结构的三元组输入多种大模型并进行微调得到最优大模型。

47、进一步地,文本分类组合模块具体包括文本分类单元和文本组合单元;所述文本分类单元用于将应用数据集的需求文本进行聚类,划分为不同的簇;所述文本组合单元用于将不同的簇划分出相关簇和无关簇,从相关簇和无关簇中分别随机提取相关项和无关项,对相关簇提取对象中的部分进行随机改写,成为突变项,随机重组相关项、无关项、突变项,成为一个新的结构化信息,将结构化信息输入最优大模型,获得创新需求文本。

48、进一步地,创意评估检验模块具体包括可理解性检验单元和创意性检验单元;所述可理解性检验单元用于检验生成的创新需求文本的可理解性;所述创意性检验单元用于检验生成的创新需求文本的创意性。

49、本发明中的部分专业名词解释如下:

50、spacy库:spacy是一个流行的python自然语言处理库,它旨在提供快速、高效和易于使用的api,具有一些内置的语言模型,可以用于处理多种语言的文本数据。

51、gruen模型:gruen是一种文本评估模型,用来评估生成文本的语法性、非冗余性、清晰度和准确性、结构和连贯性,gruen利用基于bert的模型和一系列语法、语义和上下文特征来检查系统输出。

52、langid库:langid是一个用于语言识别的python库,可以根据文本的特征来判断文本所属的语言。

53、simhash算法:是一种用于检测文本或其他数据的相似性或近似重复的算法。它被广泛用于去重、相似性搜索和快速比较文本内容等应用场景。

54、textrank算法:textrank算法是一种基于图的排序算法,由谷歌的网页重要性排序算法pagerank算法改进而来,主要应用有关键词提取、文本摘要抽取等。

55、simcse框架:simcse(simple contrastive sentence embedding framework),是一种用于生成高质量句子嵌入(sentence embedding)的框架。在自然语言处理(nlp)中,句子嵌入是将整个句子或文本块转换为固定维度的向量,以便在各种下游任务中进行比较、检索和分类。

56、bertopic主题模型:一种主题模型技术,bertopic是一种基于bert等transformer模型的主题建模方法,用于从文本数据中提取主题。bertopic利用预训练的bert或其他transformer模型来生成文本嵌入,然后使用聚类技术来发现文本中的主题。

57、bert模型:一种语言表示模型,全称为bidirectional encoder representationfrom transformers,即双向transformer的encoder。

58、umap技术:全称为uniform manifold approximation and projection,是一种先进的非线性降维技术,用于将高维数据集转换为低维空间中的表示,同时尽可能保留原始数据的复杂结构和拓扑特性。

59、hdbscan方法:全称为hierarchical density-based spatial clustering ofapplications withnoise,是一种聚类算法。

60、c-tf-idf:(class-based term frequency-inverse document frequency),是一种变体的tf-idf方法,主要用于文本数据的主题建模和文本分类任务。

61、本发明具有如下有益效果:

62、本发明提供的基于大模型的软件创新需求的生成方法,具体包括:提取软件应用描述文本,经独立性提炼及核心信息提炼后得到短文本数据集,并划分训练集和应用数据集;将训练集进行关系抽取,输入大模型进行微调,并对各个参数及规模的大模型微调训练,得到最优创新需求生成大模型;将应用数据集进行文本分类组合得到新的结构化信息并输入最优创新需求生成大模型;对输出的需求文本进行可理解性及创意性检验,筛选可理解并具有创意性的需求文本。

63、与已有的软件需求生成方法及系统相比,本发明具有以下优点:

64、(1)本发明提出通过提取软件应用描述文本,并将关系抽取得到的结构化信息输入微调后的大模型自动生成需求文本,能够从大规模的历史需求中通过大模型自动发掘产生新颖的创新需求,能够提升需求生成的效率,极大地减少人力成本。

65、(2)本发明提出通过bertopic主题模型分别将两个及以上互补相关的领域的文本分为不同的簇,并提取相关项、无关项、突变项,重组为新的结构化信息输入创新需求生成大模型得到创新需求文本,利用不同领域间的碰撞来传递创造力,促使生成模型产生创新需求文本,解决了需求工程难以生成创新性需求文本的问题。

66、(3)本发明提出使用gruen模型及simcse框架对生成的创新需求文本进行可理解性检验及创意性检验,计算语言学得分及输出文本与原始文本的相似度,解决了需求工程难以克服的创新性检测以及可理解性检测问题。

本文地址:https://www.jishuxx.com/zhuanli/20240911/289963.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。