CN113313184B - 一种异质集成的自承认技术债务自动检测方法 - Google Patents
一种异质集成的自承认技术债务自动检测方法 Download PDFInfo
- Publication number
- CN113313184B CN113313184B CN202110632822.1A CN202110632822A CN113313184B CN 113313184 B CN113313184 B CN 113313184B CN 202110632822 A CN202110632822 A CN 202110632822A CN 113313184 B CN113313184 B CN 113313184B
- Authority
- CN
- China
- Prior art keywords
- training
- satd
- component
- annotation
- learners
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000005516 engineering process Methods 0.000 title claims abstract description 15
- 238000001514 detection method Methods 0.000 title claims abstract description 8
- 238000000034 method Methods 0.000 claims abstract description 63
- 238000012549 training Methods 0.000 claims abstract description 51
- 238000007781 pre-processing Methods 0.000 claims abstract description 6
- 238000003066 decision tree Methods 0.000 claims description 21
- 239000002131 composite material Substances 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 6
- 230000010354 integration Effects 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 4
- 241000272203 Columba Species 0.000 claims description 3
- 241000555745 Sciuridae Species 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 2
- 238000003058 natural language processing Methods 0.000 description 10
- 238000005065 mining Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种异质集成的自承认技术债务自动检测方法,分为两个阶段,包括模型的训练阶段和预测阶段。在训练阶段,进行数据集的预处理、特征提取后基于GBDT、SGD和DT三种学习算法对SATD训练样本进行学习以训练组件学习器,三种学习算法一共训练了3个组件学习器。在预测阶段,使用训练好的组件学习器进行预测,根据3个组件学习器以“少数服从多数”进行投票,如果是自承认技术债务会被标记为“positive”,否则标记为“negative”;最终根据每个组件学习器的投票结果进行判断,以投票多者为最终的结果。本发明的异质集成学习方法,比现有技术方法在查准率,查全率以及F1得分等指标都有着明显提高。
Description
技术领域
本发明属于软件技术领域,具体涉及一种自承认技术债务自动检测方法。
背景技术
技术债务作为一种隐喻,指的是在软件开发过程中开发人员采用了非最优的解决方案,从而导致的将来昂贵的维护问题。在短期内可能会获得收益,但从长远来看,由于各种原因引入的技术债务,例如截止日期压力、低质量代码、不良的软件过程等,在维护阶段要花费巨大的精力来处理它所带来的问题。目前,技术债务的研究主要聚焦于识别、分析和管理。其中,技术债务识别是至关重要的问题。
早期技术债务识别是基于模式的识别,例如代码气味。紧接着出现了自承认技术债务识别。自承认技术债务(SATD)是开发人员使用源代码注释进行记录,并有意引入的技术债务。研究人员已经手动提取了62种模式用于识别自承认技术债务,然而基于62种模式的识别对于海量的数据集需耗费巨大的人力,并且使用62种模式识别SATD时会产生误判,并且研究显示误判率高达20%以上,此外基于模式的方法会耗费很大的人力物力,并且很难自动化。为了解决这一问题,自然语言处理和集成文本挖掘为自动识别自承认技术债务提供了可能。
Maldonado提出了运用自然语言处理进行自动识别SATD,重点关注了设计债务和需求债务的识别,通过建立一个NLP的最大熵分类器,提取大量注释来训练最大熵分类器,因此没有进行特征选择,从而使得训练分类器时比较耗时,且SATD识别的准确度不高,并且只能自动识别出部分自承认技术债务,如设计和需求自承认技术债务。
自承认技术债务还包括了缺陷债务、文件债务和测试债务。采用集成文本挖掘将文本挖掘和复合分类器结合起来用于识别SATD,能够比自然语言处理的方法识别出更多种类的自承认技术债务,并且可以提高分类器效率和SATD识别的准确度。但是现有研究中的集成学习多为同质集成学习,相比于异质集成学习,泛化能力较弱,分类性能一般。且存在三个问题,一是进行特征选择虽然可以降低维度,但是容易过滤掉重要特征。二是进行的是同质集成方法,也即组件学习器使用的是同一种算法,在泛化能力上弱于异质集成方法。三是在训练组件学习器时,每一个组件学习器学习的是一个项目的数据,而任务中项目之间有着较大的差异性,这就造成难以预测测试项目的真实标签。
发明内容
为了克服现有技术的不足,本发明提供了一种异质集成的自承认技术债务自动检测方法,分为两个阶段,包括模型的训练阶段和预测阶段。在训练阶段,进行数据集的预处理、特征提取后基于GBDT、SGD和DT三种学习算法对SATD训练样本进行学习以训练组件学习器,三种学习算法一共训练了3个组件学习器。在预测阶段,使用训练好的组件学习器进行预测,根据3个组件学习器以“少数服从多数”进行投票,如果是自承认技术债务会被标记为“positive”,否则标记为“negative”;最终根据每个组件学习器的投票结果进行判断,以投票多者为最终的结果。本发明的异质集成学习方法,比现有技术方法在查准率,查全率以及F1得分等指标都有着明显提高。
本发明解决其技术问题所采用的技术方案包括如下步骤:
步骤1:数据集预处理;
采用公开的源代码注释数据集,将源代码注释数据集中的每一条注释过滤掉非英文字符,只保留英文字母并且将所有英文字母转换成小写字母并移除停止词;
步骤2:特征提取;
使用基于词袋模型的BoW特征提取和能够提取语义信息的N-gram模型同时获取经过步骤1处理过的注释的文本特征,构成训练数据集;
步骤3:训练组件学习器;
将训练数据集分别输入三个并行的组件学习器;
第一个组件学习器由梯度提升决策树GBDT构成;
第二个组件学习器由随机梯度下降SGD构成;
第三个组件学习基于Bagging算法训练50棵决策树,每棵决策树都随机从原始样本中做有放回的采样,然后基于这些采样后的样本训练分类器,形成新的决策树模型DT;
分别对三个组件学习器进行训练,训练完成后,每个组件学习器输出当前输入分类为SATD或Non-SATD的结果,如果是SATD则标记为“positive”,否则标记为“negative”;
步骤4:使用Voting算法对三个组件学习器的输出结果进行投票,选择三个组件学习器输出结果占多数的类别作为最后预测结果;
步骤5:由步骤1到步骤4的处理过程构成最终用于预测的复合分类器;
步骤6:将待分类注释输入复合分类器,输出结果为该待分类注释数据是否为SATD的结果。
优选地,所述公开的源代码注释数据集为GitHub的8个项目,包括ArgoUML、Columba、Hibernate、JEdit、JFreeChart、JMeter、JRuby以及SQuirrel,该数据集为Maldonado和Shihab所整理的数据集。
本发明的有益效果如下:
本发明的异质集成学习方法,相比基于模式的方法需要人工总结模式以及低的识别效率,可以自动完成项目内预测和跨项目预测。此外,针对文发明挖掘方法进行特征选择可能会过滤重要特征以及基于单个项目使用一种学习算法训练一个分类器弱化了泛化能力。本发明所提出的方法在训练时不仅基于异质的集成提高了泛化能力,而且每种学习算法不再仅仅学习一个项目,而是学习整个训练项目。此外,本发明方法还可以用于项目内预测且预测的性能优于三层卷积池化叠加的CNN。
附图说明
图1为本发明方法框图。
图2为本发明实施例GitHub的8个项目的跨项目和项目内的ROC曲线,其中(a)跨项目,(b)项目内。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
如图1所示,一种异质集成的自承认技术债务自动检测方法,包括以下步骤:
1.数据集预处理;
实验数据集来源于GitHub的8个项目,包括ArgoUML、Columba、Hibernate、JEdit、JFreeChart、JMeter、JRuby以及SQuirrel,该数据集为Maldonado和Shihab等人整理的数据集,已被公开并广泛使用。因数据集注释句子存在许多无用字符,为此进行如下预处理:对于数据集的每一条注释,将非英文字母字符过滤掉,只保留英文字母并且将所有英文字母转换成小写字母,进行统一,以方便进行处理,然后移除了停止词。在处理数据集时,遇到类似于“a”,“can”等对文本分析是无助的,所以要移除。这样不仅可以有效减少数据文件的大小,而且可以提高运算效率。
2.特征提取
本实验特征提取使用的是BoW结合N-gram。
BoW(Bag of words model)假定对于一个文本,忽略其词序和语法、句法,将其仅仅看做是一个词集合,文本中每个词的出现都是独立的,不依赖于其他词是否出现,例如注释句子“//XXX should throw an exception instead”和注释句子“//XXX addexception”使用BoW模型会表示为向量“[2,1,1,2,1,1]”和“[2,0,0,2,0,1]”。因此,仅用BoW提取注释文本特征会忽略注释句子中词的前后关系,使得分类器无法学习句子级语义。而N-gram是一种基于统计语言模型的算法。它的基本思想是将文本里面的内容按照字节进行大小为N的滑动窗口操作,形成了长度是N的字节片段序列,每一个字节片段称为gram。这种方式提取特征能够提取连续的N个词,从而可以表示语义信息,例如上述的注释句子“//XXX should throw an exception instead”使用N-gram可以获取“XXX should”,“shouldthrow”,“throw a exception”等。因此,在特征提取时,同时使用BoW和N-gram来获取带有语义的注释句子文本特征,例如注释“//XXX add exception”可以获取诸如“XXX”,“add”,“exception”,“XXX add”,“add exception”这些特征。
3.训练组件学习器
梯度提升决策树(GBDT)是基于多棵决策树构成的一种同质集成模型,它通过梯度提升和回归决策树的组合方法,GBDT每轮的训练都建立在上一轮的训练的残差基础之上进行的,通过这种迭代构建多个弱学习器发挥集成性能。GBDT在训练时会根据注释的类别分别训练一个分类回归树。如在本发明任务中,存在SATD和Non-SATD两个类,在本实施例中标记SATD注释标签为1,Non-SATD注释标签为0。假设有一条标记为SATD的注释x,GBDT在第一轮训练中会训练两棵树,第一颗树的输入为(x,1),第二颗树的输入为(x,0),两棵树输出的预测值记为f1(x),f2(x)。则经过第一轮训练,注释x属于SATD和Non-SATD的概率以及残差分别如式(1)到式(4)所示:
y11(x)=0-P1(x) (3)
y22(x)=1-P2(x) (4)其中,y11(x)和y22(x)分别为表示训练后所计算的注释x属于SATD和Non-SATD的残差。
接着进行第二轮的训练,此时SATD输入为(x,y11(x)),Non-SATD输入为(x,y22(x))再次训练产生两棵树。一直迭代M轮使得残差最小化,且每一轮构建两棵树。当训练结束后,对一个待预测注释x*,GBDT会产生两个值f1(x),f2(x)根据他们给出该注释属于类别y的概率如式(5)所示。目前GBDT已广泛用于机器学习任务且效果显著,此外,根据在验证集上的测试,GBDT能够显著提高分类的准确度,为此使用GBDT训练一个组件学习器。
梯度下降法是先随机给出参数的一组值,然后更新参数,使每次更新后的结构都能够让损失函数变小,最终达到最小即可。但是传统梯度下降算法在更新回归系数时要遍历整个数据集,它在训练数据特别庞大时,可能出现收敛过程非常慢,同时,如果误差曲面上有多个局极小值,那么不能保证这个过程会找到全局最小值。本发明使用梯度下降的一种变体被称为随机梯度下降SGD,成功应用于文本分类和自然语言处理。为此,引入了SGD分类器训练一个组件学习器。
决策树学习的算法通常是一个递归地选择最优特征,并根据该特征对训练数据进行分割,使得对各个子数据集有一个最好的分类的过程。但基于单一学习器很难发挥决策树的性能,而Bagging算法可以通过迭代训练数据集产生多棵决策树提升分类性能。因此我们基于Bagging算法训练50棵决策树,每棵决策树都随机从原始样本中做有放回的采样,然后基于这些采样后的样本训练分类器,通过这种方式形成了新的决策树模型DT,提高了原单一分类器的分类效果。我们将这一新的决策树模型作为一个组件学习器。
4.SATD预测阶段
根据各个组件学习器的结果复合成最终用于预测的复合分类器,通过各个组件学习器对标签的结果使用Voting算法进行投票。预测结果将由这些分类器投票决定,选择分类器投票结果中最多的类别作为最后预测结果。例如,若有2个组件学习器投票为SATD,而其他1个投票为非SATD,那么最终预测结果即为SATD。此外,为了广泛验证的方法的有效性,分别进行了项目内预测和跨项目预测,在项目内预测时,训练集为每个项目的90%的数据,剩下10%作为测试集。跨项目预测的训练集为7个项目,剩余的1个项目为测试集。
接下来进行查准率,查全率以及F1得分等指标的计算。表1展示了不同方法在查准率、查全率以及F1的结果,表格中加粗显示的为最优值,下划线的为最低值。基于模式的方法、NLP方法、TM方法以及本发明异质集成方法在8个项目上的查准率平均值分别为0.847,0.542,0.734以及0.892,从中可以看出本发明方法分类查准率有了很大提高,相比于其他三种方法分别提高了5.31%,64.58%,21.53%。在查全率上,基于模式,文本挖掘,自然语言处理以及本发明方法平均值分别为0.184,0.626,0.721和0.672。与基于模式和NLP方法相比本发明方法分别提高了265.22%和7.35%,然而,相比于TM方法本发明方法的查全率平均值降低了7.6%,但本发明方法仍然是有效的,第一这主要是因为在JEdit项目上本发明方法有着极低的查全率造成的,并且本发明方法的查准率远高于TM,提高了21.53%。第二,现有的所有方法没有任何一种可以兼顾查准率和查全率,而F1作为Precision和Recall的调和平均数能够真实的衡量出方法的有效性,因此以F1来度量方法的优异是客观的。在F1上,基于模式的方法F1得分的平均值为0.275,自然语言处理方法F1得分的平均值为0.576,使用文本挖掘方法F1得分的平均值为0.720,而本发明方法F1平均值为0.747,相比于前三种方法,本发明方法分别提高了171.64%,29.69%和3.75%,并且本发明方法在8个项目中的6个优于文本挖掘的方法。此外,还进行了项目内的比较,注意的是,基于模式的方法、NLP以及TM的方法无法进行项目内的预测,因为基于模式的方法是通过手动总结的62个模式进行的,难以进行项目内预测,NLP的方法需要足够的数据训练最大熵分类器,而项目内的数据量不足以训练一个分类器,TM的方法需要根据7项目训练7个子分类器,因而无法进行项目内预测。因此在项目内预测时选择了一种深度学***均值提高了5.27%。
表1 四种方法跨项目预测的比较
表2 本发明方法与CNN方法项目内预测的比较
本发明方法的8个项目的TPR、TNR、FPR和FNR结果及其平均值如表3所示。本发明方法的TPR平均值为0.672,表明在注释中的SATD被正确预测为SATD的8个项目的平均概率为67.2%,即正类预测正确的平均概率。TNR的平均值高达0.992,非SATD正确预测为非SATD的平均概率为99.2%,也就是说对于非SATD本发明方法能很准确的预测到,即反类预测正确。FPR的平均值为0.008,表明非SATD被预测为SATD(误报)的平均概率为0.8%,即反类预测错误。同时FNR的平均值为0.328,表明有些是SATD的被预测为非SATD的平均概率为32.8%,即正类预测错误,这是不足的地方,同时这也可能与本发明方法的查全率不高有着直接关系。本发明方法8个项目的跨项目和项目内的ROC曲线如图2所示,跨项目预测的AUC平均值为0.83,项目内预测的AUC平均值为0.892。项目内预测因为不存在项目的唯一性问题也即同一个项目内注释差别不大,因此项目内预测的难度要小于跨项目预测。所有的测试项目的AUC值都在0.5以上且多个项目的AUC值在高于0.8。
表3 本发明方法的TPR,TNR,FPR和FNR
Claims (2)
1.一种异质集成的自承认技术债务自动检测方法,其特征在于,包括以下步骤:
步骤1:数据集预处理;
采用公开的源代码注释数据集,将源代码注释数据集中的每一条注释过滤掉非英文字符,只保留英文字母并且将所有英文字母转换成小写字母并移除停止词;
步骤2:特征提取;
使用基于词袋模型的BoW特征提取和能够提取语义信息的N-gram模型同时获取经过步骤1处理过的注释的文本特征,构成训练数据集;
步骤3:训练组件学习器;
将训练数据集分别输入三个并行的组件学习器;
第一个组件学习器由梯度提升决策树GBDT构成;
所述梯度提升决策树GBDT是基于多棵决策树构成的一种同质集成模型,通过梯度提升和回归决策树的组合方法,GBDT每轮的训练都建立在上一轮的训练的残差基础之上进行,通过迭代构建多个弱学习器发挥集成性能;GBDT在训练时根据注释的类别分别训练一个分类回归树;本发明任务中,存在SATD和Non-SATD两个类,标记SATD注释标签为1,Non-SATD注释标签为0;假设有一条标记为SATD的注释x,GBDT在第一轮训练中训练两棵树,第一颗树的输入为(x,1),第二颗树的输入为(x,0),两棵树输出的预测值记为f1(x),f2(x);则经过第一轮训练,注释x属于SATD和Non-SATD的概率以及残差分别如式(1)到式(4)所示:
y11(x)=0-P1(x)(3)
y22(x)=1-P2(x)(4)
其中,y11(x)和y22(x)分别为表示训练后所计算的注释x属于SATD和Non-SATD的残差;
接着进行第二轮的训练,此时SATD输入为(x,y11(x)),Non-SATD输入为(x,y22(x))再次训练产生两棵树;一直迭代M轮使得残差最小化,且每一轮构建两棵树;当训练结束后,对一个待预测注释x*,GBDT会产生两个值f1(x),f2(x)根据他们给出该注释属于类别y的概率如式(5)所示:
第二个组件学习器由随机梯度下降SGD构成;
第三个组件学习基于Bagging算法训练50棵决策树,每棵决策树都随机从原始样本中做有放回的采样,然后基于这些采样后的样本训练分类器,形成新的决策树模型DT;
分别对三个组件学习器进行训练,训练完成后,每个组件学习器输出当前输入分类为SATD或Non-SATD的结果,如果是SATD则标记为“positive”,否则标记为“negative”;
步骤4:使用Voting算法对三个组件学习器的输出结果进行投票,选择三个组件学习器输出结果占多数的类别作为最后预测结果;
步骤5:由步骤1到步骤4的处理过程构成最终用于预测的复合分类器;
步骤6:将待分类注释输入复合分类器,输出结果为该待分类注释数据是否为SATD的结果。
2.根据权利要求1所述的一种异质集成的自承认技术债务自动检测方法,其特征在于,所述公开的源代码注释数据集为GitHub的8个项目,包括ArgoUML、Columba、Hibernate、JEdit、JFreeChart、JMeter、JRuby以及SQuirrel,该数据集为Maldonado和Shihab所整理的数据集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110632822.1A CN113313184B (zh) | 2021-06-07 | 2021-06-07 | 一种异质集成的自承认技术债务自动检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110632822.1A CN113313184B (zh) | 2021-06-07 | 2021-06-07 | 一种异质集成的自承认技术债务自动检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113313184A CN113313184A (zh) | 2021-08-27 |
CN113313184B true CN113313184B (zh) | 2024-05-24 |
Family
ID=77377861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110632822.1A Active CN113313184B (zh) | 2021-06-07 | 2021-06-07 | 一种异质集成的自承认技术债务自动检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113313184B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2001248153B2 (en) * | 2000-04-11 | 2006-08-17 | Telstra Corporation Limited | A gradient based training method for a support vector machine |
CN110069252A (zh) * | 2019-04-11 | 2019-07-30 | 浙江网新恒天软件有限公司 | 一种源代码文件多业务标签自动化分类方法 |
CN111273911A (zh) * | 2020-01-14 | 2020-06-12 | 杭州电子科技大学 | 基于双向lstm和注意力机制的软件技术债务识别方法 |
CN111782807A (zh) * | 2020-06-19 | 2020-10-16 | 西北工业大学 | 一种基于多方法集成学习的自承认技术债务检测分类方法 |
-
2021
- 2021-06-07 CN CN202110632822.1A patent/CN113313184B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2001248153B2 (en) * | 2000-04-11 | 2006-08-17 | Telstra Corporation Limited | A gradient based training method for a support vector machine |
CN110069252A (zh) * | 2019-04-11 | 2019-07-30 | 浙江网新恒天软件有限公司 | 一种源代码文件多业务标签自动化分类方法 |
CN111273911A (zh) * | 2020-01-14 | 2020-06-12 | 杭州电子科技大学 | 基于双向lstm和注意力机制的软件技术债务识别方法 |
CN111782807A (zh) * | 2020-06-19 | 2020-10-16 | 西北工业大学 | 一种基于多方法集成学习的自承认技术债务检测分类方法 |
Non-Patent Citations (2)
Title |
---|
"Detecting and Classifying Self-Admitted of Technical Debt with CNN-BiLSTM";Kuiyu Zhu et al.;《Meeting2021 4th International Symposium on Big Data and Applied Statistics (ISBDAS 2021)》;全文 * |
基于随机森林的多阶段集成学习方法;徐慧丽;;高师理科学刊;20180228(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113313184A (zh) | 2021-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112732934B (zh) | 电网设备分词词典和故障案例库构建方法 | |
CN113011533A (zh) | 文本分类方法、装置、计算机设备和存储介质 | |
CN113191148B (zh) | 一种基于半监督学习和聚类的轨道交通实体识别方法 | |
CN113127339B (zh) | 一种Github开源平台数据的获取方法及源代码缺陷修复*** | |
CN113138920B (zh) | 基于知识图谱与语义角色标注的软件缺陷报告分派方法及装置 | |
CN111274817A (zh) | 一种基于自然语言处理技术的智能化软件成本度量方法 | |
CN111966825A (zh) | 一种基于机器学习的电网设备缺陷文本分类方法 | |
CN116432655B (zh) | 基于语用知识学习的少样本命名实体识别方法和装置 | |
CN117520561A (zh) | 直升机装配领域知识图谱构建的实体关系抽取方法及*** | |
CN112307741A (zh) | 保险行业文档智能化解析方法和装置 | |
CN113742733A (zh) | 阅读理解漏洞事件触发词抽取和漏洞类型识别方法及装置 | |
CN110765781A (zh) | 一种领域术语语义知识库人机协同构建方法 | |
CN115713072A (zh) | 一种基于提示学习和上下文感知的关系类别推断***及方法 | |
CN111435375A (zh) | 一种基于FastText的威胁情报自动化标注方法 | |
CN113448843A (zh) | 基于缺陷分析的图像识别软件测试数据增强方法及装置 | |
CN115953123A (zh) | 机器人自动化流程的生成方法、装置、设备及存储介质 | |
CN115146062A (zh) | 融合专家推荐与文本聚类的智能事件分析方法和*** | |
CN114065749A (zh) | 一种面向文本的粤语识别模型及***的训练、识别方法 | |
CN113313184B (zh) | 一种异质集成的自承认技术债务自动检测方法 | |
CN113609864B (zh) | 一种基于工业控制***的文本语义识别处理***及方法 | |
CN115827871A (zh) | 互联网企业分类的方法、装置和*** | |
CN115293133A (zh) | 一种基于抽取文本因子增强的车险欺诈行为识别方法 | |
CN114298041A (zh) | 网络安全命名实体的识别方法及识别装置 | |
CN111797612A (zh) | 一种自动化数据功能项抽取的方法 | |
CN112287072A (zh) | 一种多维互联网文本风险数据识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |