CN109492106B - 一种文本代码相结合的缺陷原因自动分类方法 - Google Patents
一种文本代码相结合的缺陷原因自动分类方法 Download PDFInfo
- Publication number
- CN109492106B CN109492106B CN201811346186.0A CN201811346186A CN109492106B CN 109492106 B CN109492106 B CN 109492106B CN 201811346186 A CN201811346186 A CN 201811346186A CN 109492106 B CN109492106 B CN 109492106B
- Authority
- CN
- China
- Prior art keywords
- defect
- modification structure
- node
- diff
- reason
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种文本代码相结合的缺陷原因自动分类方法,包括以下步骤:首先提取缺陷报告中的文本内容及附录中的patch文件,之后进行数据清洗形成缺陷数据集;选取状态为VERIFIED FIXED且附有patch文件的缺陷,构建待分类缺陷集;抽取待分类缺陷集中缺陷的文本内容并进行自然语言处理,之后对其进行类别标注,构建缺陷原因分类集;从patch文件中抽取缺陷修复前、后的diff代码,获取缺陷修复中修改的diff代码对应的缺陷修改结构类别;利用深度学习方法对缺陷原因分类集进行训练,获取缺陷原因自动分类器。本发明通过深度学习模型挖掘缺陷报告的语义信息和diff结构特征,能准确预测缺陷的原因类别,明确发生缺陷的可疑代码结构,从而更准确的引导后续的缺陷定位和缺陷修复。
Description
技术领域
本发明属于软件工程缺陷检测领域,特别是一种文本代码相结合的缺陷原因自动分类方法。
背景技术
软件缺陷在软件开发维护过程中不可避免,缺陷修复也是软件工程领域研究的经典问题之一。开源软件社区,例如:源代码,缺陷报包和问答文档中均包含大量复杂,语义丰富的缺陷信息和知识,可以帮助开发人员理解错误、定位缺陷和修复缺陷。识别缺陷发生原因是制定合理修复方案的前提,但是随着软件规模扩增和复杂性提高,缺陷数据量不断膨胀,现有的缺陷搜索引擎无法帮助开发者在短时间准确查找到必要的历史缺陷信息,也无从推理缺陷发生的原因。但是目前主要的缺陷跟踪系统没有配备自动分类功能,多数都要依靠人工分类,耗时费力。而相关的理论研究工作都是孤立地从缺陷修复提交的commit数据中提取代码修改结构对缺陷进行分类,或者孤立地从缺陷报告中提取文本信息对缺陷进行分类,没有全面地分析缺陷,更忽视了文本和代码之间的关联关系。
国内外学者提出了一些有影响力的软件缺陷分类方法,如Putnam等人在“Mea-sures for Excellence:Reliable Software on Time,with in Budget”一文中为了分析软件开发周期不同阶段软件缺陷的特征,收集了174个软件缺陷,并将其分为6种原因类别,分类比较简单。Tharey等人在“Software Engineering,The Development Process”一文中按照软件测试中填写和反馈的缺陷报告将软件缺陷分为16个类别,虽然分类非常详细,但是实际操作过程十分复杂耗时,且在分类的过程中并没有考虑缺陷产生的原因。刘等人在《基于抽象语法树的软件缺陷自动分类》论文中提出了基于抽象语法树的软件缺陷自动分类方法,项目代码版本控制系统SVN和缺陷追踪系统中收集Tomcat6、Mapreduce和Solr这三个开源项目的软件缺陷相关信息,改进SZZ算法,对1174个缺陷提取diff片段的AST,识别代码变更类别为特征,分为4类。易等人在《面向自动修复的缺陷分类方法研究》论文中面向缺陷自动修复,根据代码的三种具体修复操作:缺失、错误、多余,对IBM正交缺陷分类进行更详细的划分,提出了面向软件自动修复的缺陷分类方法。类似以上刘和易两种分类均基于已知修复代码的前提,此外还有大量的基于缺陷报告的缺陷分析技术,但是缺陷原因的相关信息同时存在于缺陷报告评论和修复代码,以上分类方法只片面的分析了一部分信息,导致原因分类的准确性不是很高。此外,当前对缺陷分类模型的选择,大多采用传统的机器学习和浅层神经网络分类模型,往往需要结合对不同软件的理解来人工定义特征,不能很好地挖掘文本内容中的语义信息。
发明内容
本发明所解决的技术问题在于提供一种文本代码相结合的缺陷原因自动分类方法。
实现本发明目的的技术解决方案为:一种文本代码相结合的缺陷原因自动分类方法,包括以下步骤:
步骤1、提取缺陷报告中的文本内容以及附录中的patch文件,之后进行数据清洗形成缺陷数据集;
步骤2、从所述缺陷数据集中选取状态为VERIFIED FIXED且附有patch文件的缺陷,构建待分类缺陷集;
步骤3、抽取待分类缺陷集中缺陷的文本内容,并对其进行自然语言处理,之后根据缺陷原因分类标准对待分类缺陷集进行类别标注,构建缺陷原因分类集;
步骤4、自定义缺陷修改结构类别,并从所述patch文件中抽取缺陷修复前、后的diff代码,之后获取缺陷修复过程中修改的diff代码对应的缺陷修改结构类别;
步骤5、利用深度学习方法对缺陷原因分类集进行训练,获取缺陷原因自动分类器,新缺陷输入缺陷原因自动分类器即可完成缺陷原因的自动分类。
本发明与现有技术相比,其显著优点为:1)本发明通过对大量开源项目的历史缺陷diff文件进行分析,自定义了缺陷代码修改结构类别标准,该类别标准具有普适性,可适合不同语言的代码;2)本发明对修改节点和类别进行匹配获取缺陷修复过程中修改的diff代码对应的缺陷修改结构类别,方法简单易用,复杂性低;3)本发明通过同时分析文本和代码来预测缺陷原因,能够更全面地衡量缺陷信息,获得的结果更准确;4)本发明采用深度学习模型对缺陷进行原因分类,深度学习分类模型能够在训练过程中整合特征提取,充分挖掘缺陷报告文本数据的语义信息,获得更准确的细粒度的缺陷原因分类。
下面结合附图对本发明作进一步详细描述。
附图说明
图1(a)为缺陷数据准备过程示意图。
图1(b)为代码修改结构提取过程示意图。
图1(c)为最终缺陷原因自动分类过程示意图。
图2为本发明实施例中抽取的一个缺陷的缺陷报告截图。
图3为本发明实施例中抽取的一个缺陷的diff文件截图。
具体实施方式
结合图1,本发明一种文本代码相结合的缺陷原因自动分类方法,包括以下步骤:
步骤1、提取缺陷报告中的文本内容以及附录中的patch文件,之后进行数据清洗形成缺陷数据集。其中,文本内容包括标题、描述和评论。
步骤2、从缺陷数据集中选取状态为VERIFIED FIXED且附有patch文件的缺陷,构建待分类缺陷集。
步骤3、抽取待分类缺陷集中缺陷的文本内容,并对其进行自然语言处理,之后根据缺陷原因分类标准对待分类缺陷集进行类别标注,构建缺陷原因分类集。其中,自然语言处理包括去停用词、去符号、统计词频、分句、分词、统计缺陷文本长度;缺陷原因分类标准包括12种,分别为Compatibility、Environment、Norm、Configuration、Performance、Userinterface、Function、Interface、Logic、Computation、Assignment、Documentation。
步骤4、自定义缺陷修改结构类别,并从patch文件中抽取缺陷修复前、后的diff代码,之后获取缺陷修复过程中修改的diff代码对应的缺陷修改结构类别。
其中自定义的缺陷修改结构类别具体包括5种修改结构类别,如下表1所示:
表1缺陷修改结构类别定义表
其中,缺陷修复过程中修改的diff代码对应的缺陷修改结构类别,具体为:
步骤4-1、将缺陷修复前、后的diff代码分别转换为抽象语法树AST;
步骤4-2、通过对比两个抽象语法树AST识别出发生变化的节点;
步骤4-3、根据发生变化的节点获取修改的diff代码对应的缺陷修改结构类别,具体为:
假设C'={F,I,L,C,A}为缺陷修改结构类别的集合,c'∈C'为集合中的某一种缺陷修改结构类别;
步骤4-3-1、采用基于N-Gram模型计算字符串相似度的方法,求取发生变化的节点与缺陷修改结构类别的节点之间的相似度sim2g(v(x),v(c)):
式中,x为发生变化的节点,c为某一种缺陷修改结构类别的节点,v(x)为节点x对应的字符串,v(c)为节点c对应的字符串,2-grams(v(x))为按照字符长度2对v(x)字符串匹配,2-grams(v(c))为按照字符长度2对v(c)字符串匹配;
步骤4-3-2、重复执行步骤4-3-1遍历所有发生变化的节点,并对相似度进行降序排列;
步骤4-3-3、按照相似度降序的顺序,获取每个发生变化的节点对应的缺陷修改结构类别,即获得修改的diff代码对应的缺陷修改结构类别;
其中,获取每个发生变化的节点对应的缺陷修改结构类别所用公式为:
若match(x,c')=1,则c'为发生变化的节点x对应的缺陷修改结构类别;
式中,match(x,c')为节点与缺陷修改代码结构类别的匹配函数,l(x)为节点x的缺陷修改结构类别,l(c)为节点c的缺陷修改结构类别,f为设定的相似度阈值。
步骤5、利用深度学习方法对缺陷原因分类集进行训练,获取缺陷原因自动分类器,新缺陷输入缺陷原因自动分类器即可完成缺陷原因的自动分类。具体为:
步骤5-1、将缺陷原因分类集划分为训练集和测试集;
步骤5-2、利用深度学习模型对训练集进行训练;
步骤5-3、将步骤4获取的缺陷修复过程中修改的diff代码对应的缺陷修改结构类别作为特征,利用word2vec对缺陷原因分类集进行训练,获得词向量模型,并将其作为深度学习分类模型的embedding输入;
步骤5-4、对测试集进行交叉验证得缺陷原因自动分类器。
进一步地,深度学习模型为HAN。
实施例
文本代码相结合的缺陷原因自动分类方法,包括以下内容:
步骤1、收集2个开源软件项目的缺陷报告构建缺陷数据集,从每个缺陷报告中提取标题、描述、评论和patch文件,进行数据清洗,收集的报告数量分布如下表2所示。
表2 2个项目上缺陷数据数量分布表
software | Bugset | Document | Sentence | Token | Diff |
Mozilla | 200K | 1000 | 63452 | 807534 | 1000 |
Eclipse | 50K | 400 | 21380 | 249077 | 400 |
Total | 250K | 1400 | 84832 | 1056611 | 1400 |
步骤2、从缺陷数据集中选取状态为VERIFIED FIXED且附有缺陷补丁(patch)文件的缺陷,构成待分类缺陷集。状态为VERIFIED FIXED的缺陷修复方案已经通过验证测试,其修复方案是最终方案,确保唯一性。如图2所示的缺陷报告截图,标题和描述中仅包含缺陷的重现步骤、预期结果和实际结果,很难判别缺陷原因,而在评论中会给出修改方案和缺陷可能原因讨论,易于判别缺陷原因。状态为VERIFIED FIXED的缺陷评论内容丰富,且同样能确保最终讨论结果与修复方案的一致性。
步骤3、将待分类缺陷集中缺陷的文本信息转换为txt格式,一个缺陷的文本信息即为一行,标题、描述和评论间以空格间隔。使用自然语言处理工具包(NLTK)对缺陷文档进行进一步进行自然语言处理,包括去停用词、去符号、统计词频、分句、分词、统计缺陷文本长度等。每个文档都被转换为一系列的token。根据缺陷原因分类标准对待分类缺陷集进行类别标注,构成缺陷原因分类集。其中,缺陷原因分类标准包括12种,分别为Compatibility、Environment、Norm、Configuration、Performance、User interface、Function、Interface、Logic、Computation、Assignment、Documentation,如下表3所示:
表3缺陷原因分类标准
步骤4、从缺陷原因分类集所属缺陷的patch文件中取得源码文件具体行的增删改信息如图3所示,同时显示缺陷版本源码(Buggy version)和修复版本源码(Fixedversion),抽取diff代码,识别器发生变化的节点并转化为抽象语法树AST T,使用树差分法比较关键节点x∈T的信息来分析其修改代码结构的类型。定义5种修改结构类别,如下表4所示,优先级别由上到下。
表4修改代码结构类别定义表
假设C'={F,I,L,C,A}为缺陷修改结构类别的集合,c'∈C'为集合中的某一种缺陷修改结构类别;采用基于N-Gram模型计算字符串相似度的方法,求取发生变化的节点与缺陷修改结构类别的节点之间的相似度sim2g(v(x),v(c)):
式中,x为发生变化的节点,c为某一种缺陷修改结构类别的节点,v(x)为节点x对应的字符串,v(c)为节点c对应的字符串,2-grams(v(x))为按照字符长度2对v(x)字符串匹配,2-grams(v(c))为按照字符长度2对v(c)字符串匹配;
遍历所有发生变化的节点,并对相似度进行降序排列;按照相似度降序的顺序,获取每个发生变化的节点对应的缺陷修改结构类别,即获得修改的diff代码对应的缺陷修改结构类别。其中获取每个发生变化的节点对应的缺陷修改结构类别所用公式为:
若match(x,c')=1,则c'为发生变化的节点x对应的缺陷修改结构类别;
式中,match(x,c')为节点与缺陷修改代码结构类别的匹配函数,l(x)为节点x的缺陷修改结构类别,l(c)为节点c的缺陷修改结构类别,f为设定的相似度阈值,本实施例中取f为0.6。
根据上述过程,图3中的diff修改结构最终输出类别为C'={0,1,0,0,0},代表该缺陷代码修改结构类别为表3中的I-Interface(接口)类,只有最佳匹配类别为1,其它4种类别的匹配结果均为0。
步骤5、将缺陷原因分类集划分为训练集和测试集,利用深度学习模型HAN对训练集进行训练。将步骤4获取的缺陷修复过程中修改的diff代码对应的缺陷修改结构类别作为特征,利用word2vec对缺陷原因分类集进行训练,获得词向量模型,并将其作为深度学习分类模型的embedding输入;最后对测试集进行交叉验证得缺陷原因自动分类器。对于新缺陷和没有准确修复方案的缺陷,缺陷修改代码结构类别设为C'={0,0,0,0,0}。
缺陷原因自动分类器在输出层使用softmax作为激活函数,隐含层最终输出12个神经单元代表了12个缺陷原因类别的预测值X1×12=[x1,x2,…,x12]。通过softmax函数对预测值进行归一化处理,计算出当前缺陷文档D属于每一个原因类别i的概率:
本发明通过深度学习模型挖掘缺陷报告的语义信息和diff结构特征,能准确预测缺陷的原因类别,明确发生缺陷的可疑代码结构,从而更准确的引导后续的缺陷定位和缺陷修复。
Claims (7)
1.一种文本代码相结合的缺陷原因自动分类方法,其特征在于,包括以下步骤:
步骤1、提取缺陷报告中的文本内容以及附录中的patch文件,之后进行数据清洗形成缺陷数据集;
步骤2、从所述缺陷数据集中选取状态为VERIFIED FIXED且附有patch文件的缺陷,构建待分类缺陷集;
步骤3、抽取待分类缺陷集中缺陷的文本内容,并对其进行自然语言处理,之后根据缺陷原因分类标准对待分类缺陷集进行类别标注,构建缺陷原因分类集;
步骤4、自定义缺陷修改结构类别,并从所述patch文件中抽取缺陷修复前、后的diff代码,之后获取缺陷修复过程中修改的diff代码对应的缺陷修改结构类别;所述获取缺陷修复过程中修改的diff代码对应的缺陷修改结构类别,具体为:
步骤4-1、将缺陷修复前、后的diff代码分别转换为抽象语法树AST;
步骤4-2、通过对比两个抽象语法树AST识别出发生变化的节点;
步骤4-3、根据所述发生变化的节点获取修改的diff代码对应的缺陷修改结构类别;
步骤5、利用深度学习方法对缺陷原因分类集进行训练,获取缺陷原因自动分类器,新缺陷输入缺陷原因自动分类器即可完成缺陷原因的自动分类;所述利用深度学习方法对缺陷原因分类集进行训练,获取缺陷原因自动分类器,具体为:
步骤5-1、将缺陷原因分类集划分为训练集和测试集;
步骤5-2、利用深度学习模型对所述训练集进行训练;
步骤5-3、将步骤4获取的缺陷修复过程中修改的diff代码对应的缺陷修改结构类别作为特征,利用word2vec对缺陷原因分类集进行训练,获得词向量模型,并将词向量模型作为深度学习模型的embedding输入;
步骤5-4、对所述测试集进行交叉验证得缺陷原因自动分类器。
2.根据权利要求1所述的文本代码相结合的缺陷原因自动分类方法,其特征在于,步骤1所述文本内容包括标题、描述和评论。
3.根据权利要求1所述的文本代码相结合的缺陷原因自动分类方法,其特征在于,步骤3所述自然语言处理包括去停用词、去符号、统计词频、分句、分词、统计缺陷文本长度。
4.根据权利要求1所述的文本代码相结合的缺陷原因自动分类方法,其特征在于,步骤3所述缺陷原因分类标准包括12种,分别为Compatibility、Environment、Norm、Configuration、Performance、User interface、Function、Interface、Logic、Computation、Assignment、Documentation。
6.根据权利要求1所述的文本代码相结合的缺陷原因自动分类方法,其特征在于,步骤4-3所述根据发生变化的节点获取修改的diff代码对应的缺陷修改结构类别,具体为:
假设C'={F,I,L,C,A}为缺陷修改结构类别的集合,c'∈C'为集合中的某一种缺陷修改结构类别;
步骤4-3-1、采用基于N-Gram模型计算字符串相似度的方法,求取发生变化的节点与缺陷修改结构类别的节点之间的相似度sim2g(v(x),v(c)):
式中,x为发生变化的节点,c为某一种缺陷修改结构类别的节点,v(x)为节点x对应的字符串,v(c)为节点c对应的字符串,2-grams(v(x))为按照字符长度2对v(x)字符串匹配,2-grams(v(c))为按照字符长度2对v(c)字符串匹配;
步骤4-3-2、重复执行步骤4-3-1遍历所有发生变化的节点,并对相似度进行降序排列;
步骤4-3-3、按照相似度降序的顺序,获取每个发生变化的节点对应的缺陷修改结构类别,即获得修改的diff代码对应的缺陷修改结构类别;
其中,获取每个发生变化的节点对应的缺陷修改结构类别所用公式为:
若match(x,c')=1,则c'为发生变化的节点x对应的缺陷修改结构类别;
式中,match(x,c')为节点与缺陷修改代码结构类别的匹配函数,l(x)为节点x的缺陷修改结构类别,l(c)为节点c的缺陷修改结构类别,f为设定的相似度阈值。
7.根据权利要求1所述的文本代码相结合的缺陷原因自动分类方法,其特征在于,步骤5-2所述深度学习模型为HAN。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811346186.0A CN109492106B (zh) | 2018-11-13 | 2018-11-13 | 一种文本代码相结合的缺陷原因自动分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811346186.0A CN109492106B (zh) | 2018-11-13 | 2018-11-13 | 一种文本代码相结合的缺陷原因自动分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109492106A CN109492106A (zh) | 2019-03-19 |
CN109492106B true CN109492106B (zh) | 2022-05-13 |
Family
ID=65694351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811346186.0A Active CN109492106B (zh) | 2018-11-13 | 2018-11-13 | 一种文本代码相结合的缺陷原因自动分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109492106B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109947947B (zh) * | 2019-03-29 | 2021-11-23 | 北京泰迪熊移动科技有限公司 | 一种文本分类方法、装置及计算机可读存储介质 |
CN112749079B (zh) * | 2019-10-31 | 2023-12-26 | 中国移动通信集团浙江有限公司 | 软件测试的缺陷分类方法、装置及计算设备 |
CN111198713B (zh) * | 2020-01-02 | 2023-11-28 | 晶晨半导体(深圳)有限公司 | 基于Android的同份源代码兼容各客户需求的方法和装置 |
CN112181428B (zh) * | 2020-09-28 | 2021-10-22 | 北京航空航天大学 | 一种基于抽象语法树的开源软件缺陷数据分类方法及系统 |
CN114462735A (zh) * | 2020-11-09 | 2022-05-10 | 中核核电运行管理有限公司 | 一种核电厂质量缺陷报告的智能推送方法 |
CN114780685A (zh) * | 2022-04-28 | 2022-07-22 | 贵州电网有限责任公司 | 一种自动识别缺陷信息录入情况并通过无人机补录的方法 |
CN116775871A (zh) * | 2023-06-15 | 2023-09-19 | 南京航空航天大学 | 基于seBERT预训练模型的深度学习软件缺陷报告分类方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943704A (zh) * | 2017-12-04 | 2018-04-20 | 扬州大学 | 一种基于深度森林网络的软件缺陷预测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3392780A3 (en) * | 2017-04-19 | 2018-11-07 | Tata Consultancy Services Limited | Systems and methods for classification of software defect reports |
-
2018
- 2018-11-13 CN CN201811346186.0A patent/CN109492106B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943704A (zh) * | 2017-12-04 | 2018-04-20 | 扬州大学 | 一种基于深度森林网络的软件缺陷预测方法 |
Non-Patent Citations (2)
Title |
---|
An AST-Based Approach to Classifying Defects;Changsong Liu 等;《2015 IEEE International Conference on Software Quality, Reliability and Security - Companion》;20151109;第1-8页 * |
基于抽象语法树的软件缺陷自动分类;刘昌松;《中国优秀博硕士学位论文全文数据库》;20180615(第6期);第1-62页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109492106A (zh) | 2019-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109492106B (zh) | 一种文本代码相结合的缺陷原因自动分类方法 | |
CN110245496B (zh) | 一种源代码漏洞检测方法及检测器和其训练方法及系统 | |
CN108256074B (zh) | 校验处理的方法、装置、电子设备和存储介质 | |
CN109697162B (zh) | 一种基于开源代码库的软件缺陷自动检测方法 | |
CN110347603B (zh) | 一种人工智能的自动化软件测试系统及方法 | |
CN111459799B (zh) | 一种基于Github的软件缺陷检测模型建立、检测方法及系统 | |
CN109344250B (zh) | 基于医保数据的单病种诊断信息快速结构化方法 | |
CN109376247B (zh) | 一种基于关联规则的软件缺陷自动分类方法 | |
CN107392143B (zh) | 一种基于svm文本分类的简历精确解析方法 | |
CN109726120B (zh) | 一种基于机器学习的软件缺陷确认方法 | |
CN108932192A (zh) | 一种基于抽象语法树的Python程序类型缺陷检测方法 | |
CN103678684A (zh) | 一种基于导航信息检索的中文分词方法 | |
CN110910175B (zh) | 一种旅游门票产品画像生成方法 | |
CN101576850B (zh) | 一种改进的面向宿主的嵌入式软件白盒测试方法 | |
CN108363691A (zh) | 一种用于电力95598工单的领域术语识别系统及方法 | |
CN113127339A (zh) | 一种Github开源平台数据的获取方法及源代码缺陷修复系统 | |
CN112347271A (zh) | 基于文字语义识别的配电物联网设备缺陷辅助录入方法 | |
CN111091009B (zh) | 一种基于语义分析的文档关联审核方法 | |
CN113434418A (zh) | 知识驱动的软件缺陷检测与分析方法及系统 | |
CN115146062A (zh) | 融合专家推荐与文本聚类的智能事件分析方法和系统 | |
CN112685374B (zh) | 日志分类方法、装置及电子设备 | |
CN113157564A (zh) | 一种基于特征分布对齐和邻域实例选择的跨项目缺陷预测方法 | |
CN116166789A (zh) | 一种方法命名精准推荐和审查方法 | |
CN110807096A (zh) | 一种小样本集上的信息对匹配方法及系统 | |
CN112835620B (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 |