CN104915680B - 基于改进型rbf神经网络的多标签蜕变关系预测方法 - Google Patents
基于改进型rbf神经网络的多标签蜕变关系预测方法 Download PDFInfo
- Publication number
- CN104915680B CN104915680B CN201510303659.9A CN201510303659A CN104915680B CN 104915680 B CN104915680 B CN 104915680B CN 201510303659 A CN201510303659 A CN 201510303659A CN 104915680 B CN104915680 B CN 104915680B
- Authority
- CN
- China
- Prior art keywords
- node
- rbf neural
- characteristic
- path
- tag
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- 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/211—Selection of the most significant subset of features
- G06F18/2111—Selection of the most significant subset of features by using evolutionary computational techniques, e.g. genetic algorithms
-
- 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)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computing Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biophysics (AREA)
- Software Systems (AREA)
- Physiology (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Probability & Statistics with Applications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种基于改进型RBF神经网络的多标签蜕变关系预测方法,首先从函数源码创建控制流图(CFG),然后从控制流图(CFG)提取一组特性,从CFG中提取两种类型的特性一种是基于结点的特性,一种是基于路径的特性,由特性值和标签构成训练集,采用改进型的RBF神经网络即优化隐含层RBF神经网络基函数中心的求取算法—k均值聚类,用AP聚类自动寻找k值,以获得隐含层结点数目,并构造Huffman树选取初始的聚类中心,然后构造体现多标签之间信息的标签计数向量C,然后与改进k均值聚类后求得的RBF神经网络基函数中心线性叠乘,获取新的基函数中心,建立RBF神经网络模型进行蜕变关系的预测。
Description
技术领域
本发明涉及一种基于改进型RBF神经网络的多标签蜕变关系预测方法,特别是采用多标签的数据集和改进型的RBF神经网络即优化隐含层RBF神经网络基函数中心的求取算法—k均值聚类,用AP聚类自动寻找k值,以获得隐含层结点数目,并构造Huffman树选取初始的聚类中心,然后构造体现多标签之间信息的标签计数向量C,然后与改进k均值聚类后求得的RBF神经网络基函数中心线性叠乘,获取新的基函数中心,建立多标签RBF神经网络模型进行蜕变关系预测,属于软件测试领域。
背景技术
随着经济与社会的发展,越来越多软件被开发,然而软件的质量引起了广泛的关注,软件测试是一种重要的,不可缺少的软件质量保证技术,用于发现和纠正软件中存在的缺陷和错误,但是大多数情况下待测程序的预期输出难以确定。蜕变测试技术通过检查程序的多个执行结果之间的关系来测试程序,可以有效的解决上述问题,但目前的蜕变测试技术也存在一些不足,现有的蜕变测试技术中普遍存在的缺少实用的蜕变关系的构造方法,缺少有效的原始测试用例的选取策略,以及没有自动化的测试工具等问题,测试效率低代价高。
目前,蜕变关系构造方面的研究成果有,使用机器学习技术预测蜕变关系,使用图形内核的机器学习方法这两个方法都是单标签的蜕变关系预测方法及一次只能预测一个可能的蜕变关系,因此本发明提出一种基于改进型RBF神经网络的多标签蜕变关系预测方法及一次可以预测应用程序可能满足的多个蜕变关系,可以有效的解决目前普遍存在的缺少实用的蜕变关系的构造方法及提高蜕变关系的构造效率。
发明内容
发明目的:针对现有技术中存在的问题,本发明提供一种基于改进型RBF神经网络的多标签蜕变关系预测方法,提高蜕变关系的构造效率,更好的服务于蜕变测试。
技术方案:一种基于改进型RBF神经网络的多标签蜕变关系预测方法,包括:创建控制流图(CFG)及提取数据特性构成训练集:利用Soot分析工具从函数源码产生控制流图,进行标记,提取结点特性及路径特性构成数据集;
建立基于改进型RBF神经网络多标签蜕变关系预测模型:以得到的d维数据集作为径向基神经网络的输入源,采用改进型的RBF神经网络,建立RBF神经网络模型;
在所述创建控制流图及提取数据特性构成训练集中,从函数源码创建控制流图,即用语句级的控制流图(CFG)表示一个函数,图中包括控制流信息:例如Gf=(V,E)是函数f的有向图,在这图中每个vx∈V表示x在函数f中。图中的每个结点用在x处执行的操作表示及用标签(vx)标记,一条边e=(vx,vy)∈E如果x,y声明在函数f中如果x执行之后y立即执行,这条边代表函数的控制流信息。图中包含vstart∈V和vexit∈V两个结点分别表示函数的开始和结束。
从函数的控制流图提取特性构成数据集,主要提取两种类型的特性,基于结点和路径,具体如下:
一种是基于结点的特性,即对于CFG图中一个结点找出其入度和出度,而结点的特性值是同一类型结点出现的次数。
一种是基于路径的特性,即从开始结点到每个结点的最短路径和从每个结点到终止结点的最短路径,而路径结点的特性值为同一路径出现的次数。
具体步骤包括:
步骤1:结点特性提取,结点特性的形式是op-din-dout op表示在结点n执行的操作,din是结点n的入度,dout是结点n出度,根据函数控制流图计算出图中每个结点出度和入度,最后统计同一种类型结点的个数作为该结点的特性值;
步骤2:路径特性提取,根据函数的控制流图找出从Nstart到每个结点的最短路径和找出每个结点到Nexit结点的最短路径,由于每个结点不重复因此其路径特性值都为1;
步骤3:根据以上得到的结点特性和路径特性及相应的标签(如果函数f包含相应的蜕变关系就用1表示,不包含就用-1表示),构成多标签的数据集;
所述的建立基于改进型RBF神经网络的多标签蜕变关系预测模型中,以得到的d维数据集作为径向基神经网络的输入源,采用改进型的RBF神经网络即优化隐含层RBF神经网络基函数中心的求取算法—k均值聚类,用AP聚类自动寻找k值,以获得隐含层结点数目,并构造Huffman树选取初始的聚类中心,然后构造体现多标签之间信息的标签计数向量C,然后与改进k均值聚类后求得的RBF神经网络基函数中心线性叠乘,获取新的基函数中心,建立RBF神经网络模型进行蜕变关系的预测。
有益效果:与现有的技术相比,本发明所提供的一种基于改进型RBF神经网络的多标签蜕变关系预测方法,对RBF中的各个参数的计算进行了改进及采用多标签,弥补普遍存在的缺少实用的蜕变关系的构造方法,提高蜕变关系的构造效率,更好的服务于蜕变测试。
附图说明
图1为本发明实施例的整体框架图;
图2为本发明实施例的使用Soot框架创建控制流图(CFG)及提取数据特性构成训练集对的流程图;
图3为本发明实施例的采用AP自动寻找k值,以获得隐含层结点数目的方法的流程图;
图4为本发明实施例的基于Huffman思想计算k均值聚类中心的方法的流程图;
图5为本发明实施例的计算每一类标签计数向量Cx(l)方法的流程图;
图6为本发明实施例的基于改进型RBF神经网络建立多标签蜕变关系预测模型方法流程图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,本实施例提供的基于改进型RBF神经网络的多标签蜕变关系预测方法包含了两个主要部分:创建控制流图及提取数据特性构建数据集、建立基于改进型RBF神经网络多标签蜕变关系预测模型。
创建控制流图(CFG)及提取数据特性构成训练集:利用Soot分析工具从函数源码产生控制流图,控制流图中每个结点表示一个语句(例如:赋值,求和等等),然后再用在这一结点执行的原子操作进行标记(赋值语句就用assi标记,求和就用add标记),提取结点特性及路径特性构成数据集;
建立基于改进型RBF神经网络多标签蜕变关系预测模型:以得到d维数据集作为径向基神经网络的输入源,采用改进型的RBF神经网络(为了提高预测准确性需要在公知的RBF神经网络的基础上进行改进),建立RBF神经网络模型;
如图2所示,创建控制流图(CFG)及提取数据特性构成训练集步骤如下:
步骤101,列举一般应用程序中可能存在的蜕变关系类;
步骤102,搜集相关的应用程序函数并且标注好其是否存在某种类型的蜕变关系;
步骤103,将函数用Java语言实现;
步骤104,使用Soot分析工具生成Soot CFG;
步骤105,用每个结点的操作属性标记每个结点得到的标记控制流图
(Labeled CFG);
步骤106,结点特性的提取,从控制流图的开始结点开始计算每个结点的入度和出度;
步骤107,统计类型相同结点的个数作为该结点的特性值;
步骤108,把统计的结果放入结点特性统计表中(表1);
表1
特性 | 特性值 |
步骤109,路径特性的提取,创建路径:从开始结点到每个结点的最短路径和每个结点到终止结点的最短路径;
步骤110,计算机同一种路径出现的次数,一般控制流图中结点不重复,路径特性值为1;
步骤111,把统计的结果放入路径特性统计表中(表2);
表2
特性 | 特性值 |
步骤112,由结点特性和路径特性构成数据集,如表3所示:表中f1表示数据集中的函数,featk表示一个从控制流图中提取的结点或路径特性,vmk表示结点或路径的特性值,cmn是表示该函数是否存在相应的蜕变关系用1或-1表示;
表3 数据集
Function | feat1 | Feat2 | ... | featk | Class | ... | Class |
f1 | v11 | v12 | ... | v1k | c11 | ... | c1n |
.. | ... | ... | ... | ... | ... | ... | ... |
fm | vm1 | vm2 | ... | vmk | cm1 | ... | cmn |
如图3所示,采用AP自动寻找k值,以获得隐含层结点数目的方法步骤如下:
步骤201,读取n个数据样本;
步骤202,设置迭代次数M
步骤203,采用欧氏距离计算样本点的相似度;
步骤204,将相似度矩阵对角线上的数值作为聚类中心的参考度值;
步骤205,进行迭代不断更新每一数据点的吸引度值和归属度值;
步骤206,根据设定的迭代次数是否大于M或迭代多少次聚类中心不在发生变化来设置终止条件,如果小于M转入步骤205继续迭代否则迭代终止;
步骤207,确定k值;
如图4所示,基于Huffman思想计算k均值聚类中心的方法步骤如下:
步骤301,读取n个数据样本;
步骤302,计算数据样本欧式距离,并用相异矩阵表示;
步骤303,寻找矩阵数据非零最小值;
步骤304,再寻找相应两个样本;
步骤305,两样本求平均值;
步骤306,平均值添加到已删除两个样本的数据样本中;
步骤307,判断此时数据样本的个数是否是1如果不是回到步骤303;
步骤308,按构造顺序的逆序找出k-1个点,并删除;
步骤309,将k个子树的平均值作为聚类初始中心;
如图5所示,计算每一类标签计数向量Cx(l)方法步骤如下:
步骤401,读取n个数据样本;
步骤402,构造数据集的标签集合;
步骤403,统计每一类中标签为1的样本形成新的样本;
步骤404,然后对新形成的样本集采k近邻算法寻去,把其中两个保留下来;
步骤405,采用同样的方法,将处理后的其他类的k近邻综合起来得到总的标签集合;
步骤406,重新统计每类样本中标签为1的个数;
步骤407,将上一步骤得到的结果(统计的1的个数)与k均值聚类后的每类的聚类中心c(l)线性叠成得到标签计数向量Cx(l);
如图6所示,基于改进型RBF神经网络建立多标签蜕变关系预测模型方法步骤如下:
步骤501,输入训练集S;
步骤502,数据处理:首先只考虑一个标签,进行训练看预测效果;再进行2个标签数据集训练进行预测等等;
步骤503,采用AP聚类获取K值;
步骤504,确定隐含层结点数目为k+1;
步骤505,利用Huffman构造初始聚类中心;
步骤506,利用步骤503和步骤505的结果和K-means聚类获取基函数中心c;
步骤507,计算每一类标签计数向量Cx(l);
步骤508,根据步骤506和步骤507的结果叠成,得到RBF神经网络的基函数中心C(l);
步骤509,通过计算每类之间基函数中心的平均距离来计算函数方差—平滑参数ɑ;
步骤510,通过最小化误差平方和函数求解隐含层到输出层的权值w;
步骤511,训练RBF神经网络;
步骤512,输入新的数据;
步骤513,输出是否与标签一致;
步骤514,否,就修正RBF神经网络模型(隐含层和输出层之间权重w的维数为K+1,即隐含层节点数目,加1是对偏置bias的处理,通过调整它的值来修正RBF神经网络);是,就结束建立RBF神经网络模型。
Claims (2)
1.一种基于改进型RBF神经网络的多标签蜕变关系预测方法,其特征在于:包括创建控制流图及提取数据特性构成训练集;建立基于改进型RBF神经网络多标签蜕变关系预测模型;
创建控制流图及提取数据特性构成训练集:利用Soot分析工具从函数源码产生控制流图,进行标记,提取结点特性及路径特性构成数据集;
建立基于改进型RBF神经网络多标签蜕变关系预测模型:以得到的d维数据集作为径向基神经网络的输入源,采用改进型的RBF神经网络,建立RBF神经网络模型;
改进型的RBF神经网络即优化隐含层RBF神经网络基函数中心的求取算法—k均值聚类,用AP聚类自动寻找k值,以获得隐含层结点数目,并构造Huffman树选取初始的聚类中心,然后构造体现多标签之间信息的标签计数向量C,然后将标签计数向量与采用k均值聚类求得的每类基函数中心线性叠乘,获取新的基函数中心,建立RBF神经网络模型进行蜕变关系的预测。
2.如权利要求1所述的基于改进型RBF神经网络的多标签蜕变关系预测方法,其特征在于:在创建控制流图及提取数据特性构成训练集中,从函数源码创建控制流图,即基于图表示一个函数,图中包含函数f的控制流信息(cfg);
从函数的控制流图提取特性构成数据集,主要提取两种类型的特性:基于结点和路径,具体如下:
基于结点的特性即对于CFG图中一个结点找出其入度和出度而,结点的特性值是同一类型结点出现的次数;
基于路径的特性即从开始结点到每个结点的最短路径和从每个结点到终止结点的最短路径,而路径结点的特性值为同一路径出现的次数;
具体步骤包括:
步骤1:结点特性提取,结点特性的形式是op-din-dout;op表示在结点n执行的操作,din是结点n的入度,dout是结点n出度,根据函数控制流图计算出图中每个结点出度和入度,最后统计同一种类型结点的个数作为该结点的特性值;
步骤2:路径特性提取,根据函数的控制流图找出从Nstart到每个结点的最短路径和找出每个结点到Nexit结点的最短路径由于每个结点不重复因此其路径特性值都为1;
步骤3:根据以上得到结点特性和路径特性及相应的标签构成多标签的数据集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510303659.9A CN104915680B (zh) | 2015-06-04 | 2015-06-04 | 基于改进型rbf神经网络的多标签蜕变关系预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510303659.9A CN104915680B (zh) | 2015-06-04 | 2015-06-04 | 基于改进型rbf神经网络的多标签蜕变关系预测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104915680A CN104915680A (zh) | 2015-09-16 |
CN104915680B true CN104915680B (zh) | 2018-06-19 |
Family
ID=54084729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510303659.9A Expired - Fee Related CN104915680B (zh) | 2015-06-04 | 2015-06-04 | 基于改进型rbf神经网络的多标签蜕变关系预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104915680B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170212829A1 (en) * | 2016-01-21 | 2017-07-27 | American Software Safety Reliability Company | Deep Learning Source Code Analyzer and Repairer |
CN105844334B (zh) * | 2016-03-22 | 2018-03-27 | 南京信息工程大学 | 一种基于径向基神经网络的温度插值方法 |
CN106503743B (zh) * | 2016-10-31 | 2020-04-17 | 天津大学 | 一种数量多且维数高的图像局部特征点自适应聚类方法 |
CN107016372A (zh) * | 2017-04-12 | 2017-08-04 | 邹霞 | 基于神经网络的人脸识别方法 |
US11379758B2 (en) | 2019-12-06 | 2022-07-05 | International Business Machines Corporation | Automatic multilabel classification using machine learning |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102053910A (zh) * | 2010-11-18 | 2011-05-11 | 西北工业大学 | 一种基于aadl模态蜕变关系的嵌入式软件测试方法 |
CN102170378A (zh) * | 2011-04-22 | 2011-08-31 | 北京科技大学 | 一种无需预期的Web服务测试方法 |
CN103713997A (zh) * | 2013-11-08 | 2014-04-09 | 中国人民解放军理工大学 | 一种蜕变关系形式化描述与分解方法 |
CN103713999A (zh) * | 2013-11-27 | 2014-04-09 | 中国人民解放军理工大学 | 基于定量度量的蜕变关系测试优先级排序方法 |
CN104598381A (zh) * | 2015-01-26 | 2015-05-06 | 中国人民解放军理工大学 | 一种蜕变测试中失效测试用例的定位方法 |
-
2015
- 2015-06-04 CN CN201510303659.9A patent/CN104915680B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102053910A (zh) * | 2010-11-18 | 2011-05-11 | 西北工业大学 | 一种基于aadl模态蜕变关系的嵌入式软件测试方法 |
CN102170378A (zh) * | 2011-04-22 | 2011-08-31 | 北京科技大学 | 一种无需预期的Web服务测试方法 |
CN103713997A (zh) * | 2013-11-08 | 2014-04-09 | 中国人民解放军理工大学 | 一种蜕变关系形式化描述与分解方法 |
CN103713999A (zh) * | 2013-11-27 | 2014-04-09 | 中国人民解放军理工大学 | 基于定量度量的蜕变关系测试优先级排序方法 |
CN104598381A (zh) * | 2015-01-26 | 2015-05-06 | 中国人民解放军理工大学 | 一种蜕变测试中失效测试用例的定位方法 |
Non-Patent Citations (2)
Title |
---|
Multilabel Neural Networks with Applications to Functional Genomics and Text Categorization;Min-Ling Zhang et al.;《IEEE Transactions on Knowledge and Data Engineering》;20060828;第18卷(第10期);第1338-1351页 * |
蜕变关系构造基本准则与策略研究;王瑢 等;《计算机科学》;20120131;第39卷(第1期);第115-119页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104915680A (zh) | 2015-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104915680B (zh) | 基于改进型rbf神经网络的多标签蜕变关系预测方法 | |
EP3588279B1 (en) | Automated extraction of rules embedded in software application code using machine learning | |
CN104391860B (zh) | 内容类别检测方法及装置 | |
CN113946461A (zh) | 一种故障根因分析的方法及装置 | |
CN104572449A (zh) | 一种基于用例库的自动化测试方法 | |
CN106250461A (zh) | 一种基于Spark框架利用梯度提升决策树进行数据挖掘的算法 | |
Sethi et al. | DLPaper2Code: Auto-generation of code from deep learning research papers | |
KR20180014471A (ko) | 신규 물질의 구조 생성 방법 및 장치 | |
CN110335168B (zh) | 基于gru优化用电信息采集终端故障预测模型的方法及系统 | |
CN110442523B (zh) | 一种跨项目软件缺陷预测方法 | |
CN111726349B (zh) | 基于ga优化的gru并行网络流量异常检测方法 | |
CN107368526A (zh) | 一种数据处理方法及装置 | |
CN109726299B (zh) | 一种不完备专利自动标引方法 | |
CN113010683A (zh) | 基于改进图注意力网络的实体关系识别方法及系统 | |
CN115146062A (zh) | 融合专家推荐与文本聚类的智能事件分析方法和系统 | |
He et al. | Local spectral diffusion for robust community detection | |
CN112100518B (zh) | 一种考虑用户在线关系网络的舆情主题发现方法 | |
CN113066528A (zh) | 基于主动半监督图神经网络的蛋白质分类方法 | |
CN112888008A (zh) | 基站异常检测方法、装置、设备及存储介质 | |
Ng et al. | What does multi-objective optimization have to do with bottleneck improvement of production systems? | |
CN110705889A (zh) | 一种企业筛选方法、装置、设备及存储介质 | |
CN112199287B (zh) | 基于强化混合专家模型的跨项目软件缺陷预测方法 | |
CN114997378A (zh) | 归纳式图神经网络剪枝方法、系统、设备及存储介质 | |
CN110990353B (zh) | 日志提取方法、日志提取装置及存储介质 | |
CN112819527A (zh) | 一种用户分群处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180619 Termination date: 20210604 |