CN114202038B - 一种基于dbm深度学习的众包缺陷分类方法 - Google Patents

一种基于dbm深度学习的众包缺陷分类方法 Download PDF

Info

Publication number
CN114202038B
CN114202038B CN202210139536.6A CN202210139536A CN114202038B CN 114202038 B CN114202038 B CN 114202038B CN 202210139536 A CN202210139536 A CN 202210139536A CN 114202038 B CN114202038 B CN 114202038B
Authority
CN
China
Prior art keywords
layer
data
text
dbm
model
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
Application number
CN202210139536.6A
Other languages
English (en)
Other versions
CN114202038A (zh
Inventor
杨鹏
张晋桂
余明辉
赵聚雪
王瑾
陈振宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tuoshi Software Science Garden Co ltd Guangdong
Guangzhou Panyu Polytechnic
Original Assignee
Tuoshi Software Science Garden Co ltd Guangdong
Guangzhou Panyu Polytechnic
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tuoshi Software Science Garden Co ltd Guangdong, Guangzhou Panyu Polytechnic filed Critical Tuoshi Software Science Garden Co ltd Guangdong
Priority to CN202210139536.6A priority Critical patent/CN114202038B/zh
Publication of CN114202038A publication Critical patent/CN114202038A/zh
Application granted granted Critical
Publication of CN114202038B publication Critical patent/CN114202038B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Molecular Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明披露了一种基于DBM深度学习的众包缺陷分类方法,其是对在众包场景下测试工人提交的测试报告,对测试报告中的文本描述和图片分别进行数据预处理得到文本数据和图像数据;然后进行多模态数据特征的提取与融合,借助深度玻尔兹曼机,对所述文本数据和图像数据进行特征融合,且输出得到文本和图像的合成向量;最后是训练分类模型,包括将所述合成向量输入到SVM支持向量机中,直接输出预定义好的分类结果。本发明可以更加精准地对众包测试场景下的Bug报告进行特征融合,Bug分类,从而有效进行任务分配,提高了众包测试场景下Bug分类的准确率,降低了人工审核的压力,提高了人工审核的效率。

Description

一种基于DBM深度学习的众包缺陷分类方法
技术领域
本发明属于软件测试与深度学习分类领域,尤其涉及一种基于DBM深度学习的众包缺陷分类方法的技术。
背景技术
随着各类企业产品的快速发展,产品功能越来越复杂。为了保证产品质量和用户体验,企业对产品测试的需求也在不断的增加。在这种背景下,众包测试通过云平台招募互联网中的未知大众执行软件测试任务,以获取真实的用户体验,以其省钱、省时、高效的特点被市场采纳,得以迅速发展。在众包测试中,众包测试工人通过模拟真实的用户使用场景进行测试,这种云平台的优势使得众包测试可以在满足条件的任意环境下开展,促使了测试报告规模的剧增。Bug是指软件或程序中隐藏的错误、缺陷、漏洞或问题。Bug可能导致应用无法正常使用或存在严重的安全隐患。为了提升Bug的修复效率,众包测试报告通常需要经过专家审核后,划分为不同的类别以判断报告的严重程度并推荐合适的开发人员。例如,功能错误(程序中存在未实现功能或功能错误)的严重程度远大于用户体验问题(能够提升用户体验的优化建议),应优先修复。另外,为了节省成本,大多数的众包测试工人都是非专业的测试人员,仅依靠测试人员进行Bug分类难以保障分类的准确性。
目前,针对众包测试Bug分类这一领域,学术界和工业界已经有了较为成熟的研究和应用。由于众包测试中存在多模态数据(来源和形式不同的数据称为多模态数据,众包测试报告中常见的数据模态包括文本、图像等),大多数传统的做法是通常将Bug报告中的文本和图像分别处理后再进行加权(如通过朴素贝叶斯、KNN(k-nearest neighbor,K最近邻)、SVM(support vector machines,支持向量机)、RNN(循环神经网络)处理文本分类,通过KNN、CNN(convolutional neural network,卷积神经网络,一种被广泛应用于图像识别领域的深度学习算法)处理图像分类)。然而,在一份由文本和图像信息组成的多模态报告中,文本和图像通常描述相同的Bug,具有极强的关联性。这样分别处理后进行加权的做法难以捕捉的多模态数据之间的内在联系,一定程度上影响分类准确率另一方面,未来本发明可能在Bug报告的描述中引入其他的模态信息,如视频信息,日志信息等。由于不同模态的信息处理方式不同,如果每次都对不同模态的信息都要分别进行处理,这种方式无疑是非常低效的,并且不同模态信息之间的内在联系也会更加难以挖掘。
发明内容
本发明通过提供一种基于DBM深度学习的众包缺陷分类方法,用于解决众包测试场景下非专业测试工人提交的大量测试报告分类难的问题,提高分类效率,降低人工审核压力。
本发明通过下述技术方案来实现本发明目的:一种基于DBM深度学习的众包缺陷分类方法,该众包缺陷分类方法是对在众包场景下测试工人提交的测试报告,对测试报告中的文本描述和图片分别进行数据预处理得到文本数据和图像数据;然后进行多模态数据特征的提取与融合,即借助DBM(Deep Boltzmann Machine,深度玻尔兹曼机,一种特殊构造的深度神经网络,常用于特征抽取和融合)对所述文本数据和图像数据进行特征融合,且输出得到文本和图像的合成向量;最后是训练分类模型,包括将所述合成向量输入到SVM中,直接输出预定义好的分类结果,所述预定义好的分类结果包含了不正常退出、数据错误、功能错误、页面布局错误、用户体验、和性能问题六大类别;所述深度玻尔兹曼机是以受限玻尔兹曼机(Restricted Boltzmann Machine,RBM)为基础的深度学习模型,由多层受限玻尔兹曼机叠加而成的,受限玻尔兹曼机是通过输入数据集学习概率分布的随机生成神经网络,为双层神经网络,即只有一个可见层和一个隐藏层,而所述深度玻尔兹曼机具有多层隐单元层,即除了输入的可见层和输出层外的其他所有层;所述深度玻尔兹曼机用于结合不同模态的数据特征来创建融合数据的表征,能够同时对文本数据和图像数据进行压缩,得到测试报告信息的有效表示;所述深度玻尔兹曼机是从每个数据模态的条件分布中取样,即使在某些数据模态缺失的情况下也可以完成特征表示。
进一步地,所述文本描述预处理:首先进行清洗,清洗掉非常规字符,非常规字符包括数字、英文、标点,其次采用jieba结巴,进行分词与去除停用词。分词即将语句拆分成词汇,去除停用词即去除对文本分析没有帮助的词,包括连词、虚词、语气词,最后通过TF-IDF进行词频统计,TF是指词频,IDF是指逆文本频率指数;所述图片预处理:首先对图片进行尺寸调整,屏蔽掉图像像素特征的差异,之后进行滤波处理,平滑图像,去除噪音。
进一步地,所述多模态数据特征的提取与融合包括下列步骤:首先,以所述文本数据和图像数据作为可见层数据,所述可见层数据是指输入神经网络的用户可见的神经网络层,通过对比散列算法提取出隐单元层的特征向量,最后,形成一个多模态的DBM网络,所述多模态的DBM网络包括文本DBM网络模型和图像DBM网络模型,在所述文本DBM网络模型和图像DBM网络模型的基础上增加一层二进制神经网络层进行结合,即将文本和图像模态的特征一起映射到该层二进制神经网络层上,这一层也作为整个模型的最终输出层再使用反向传播算法寻找最优解,作为分类结果,所述反向传播算法是适合于多层神经元网络的一种学习算法,通过反馈的方式从输出层倒推输入层,直到网络输入层达到预定的目标范围,所述最优解是指经过反向传播后误差值最小的参数;
所述玻尔兹曼机是一种基于能量的模型,其对应的联合概率分布为:
Figure 936006DEST_PATH_IMAGE001
其中,能量E越小,对应状态的概率越大,Z是归一化因子,用作归一化,
包含三层隐藏层的深度玻尔兹曼机,联合概率分布为:
Figure 678703DEST_PATH_IMAGE002
其能量形式如下:
Figure 558934DEST_PATH_IMAGE003
其中,E为可见层与输入层之间的能量函数;
Figure 918240DEST_PATH_IMAGE004
表示可见输入层,T表示转置,
Figure 525808DEST_PATH_IMAGE005
表示隐藏层,
Figure 936061DEST_PATH_IMAGE006
表示整个模型的参数;v∈{0,1},为可见节点状态;
Figure 252773DEST_PATH_IMAGE007
∈{0,1},为第一层隐单元状态;
Figure 364954DEST_PATH_IMAGE008
为第一组单元连接权值;
Figure 792524DEST_PATH_IMAGE009
∈{0,1},为第二层隐单元状态;
Figure 306551DEST_PATH_IMAGE010
为第二组单元连接权值;
Figure 263006DEST_PATH_IMAGE011
∈{0,1},为第三层隐单元状态;
Figure 862483DEST_PATH_IMAGE012
为第三组单元连接权值;联合概率分布表示映射到某一合成向量上的概率,能量E确保模型稳定性,最终输出得到所述文本和图像的合成向量。
进一步地,所述TF-IDF是一种用于信息检索与数据挖掘的常用加权技术,
Figure 93745DEST_PATH_IMAGE013
某一特定词语的IDF逆文本频率 (IDF) :某一特定词语的IDF,可以由总文件数目除以包含该词语的文件的数目,再将得到的商取对数得到;
Figure 478589DEST_PATH_IMAGE014
其中,分母之所以要加1,是为了避免分母为0;
如果包含词条w的文档越少,IDF越大,则说明词条具有很好的类别区分能力,而TF-IDF实际上等于TF与IDF的乘积:
Figure 120792DEST_PATH_IMAGE015
本发明具有下列技术效果:本发明针对于现有技术存在的问题,为了提高Bug分类(包含不正常退出、数据错误、功能错误、页面布局错误、用户体验、和性能问题六种类别)的准确率,本发明的技术方案针对众包测试下的Bug分类场景提出了一种新的解决思路。对于一份典型的由文本和图像组成的测试报告,本发明首先通过深度玻尔兹曼机将测试报告中的文本信息和图片信息融合为高维特征向量即合成向量以进行分类。这样的处理方式克服了不同模态数据之间的异构性,进一步挖掘了Bug报告中文本和图像之间的内在联系,提升了Bug的分类准确率。
本发明采用的深度玻尔兹曼机是一种以受限玻尔兹曼机为基础的深度学习模型,其本质是一种特殊构造的神经网络,由多层受限玻尔兹曼机叠加而成的。受限玻尔兹曼机是通过输入数据集学习概率分布的随机生成神经网络,被认为是一个双层神经网络,只有一个可见层和一个隐藏层。而深度玻尔兹曼机具有多层隐单元层(除了输入的可见层和输出层外的其他所有层)。每一层内的每个变量相互独立,并条件于相邻层中的变量,因此也可以理解为是一种多层的受限玻尔兹曼机。该模型可以通过结合不同模态的特征来创建融合数据的表征。
综上所述,本发明是基于DBM的众包测试缺陷分类方法,利用自然语言处理和图片处理技术分别对测试报告中的文本数据和图像数据分别进行预处理,再利用深度玻尔兹曼机从每种数据模态的条件分布中取样,进行特征融合,通过高维特征向量进一步挖掘不同数据模态之间的内在联系,将高维特征向量输入SVM支持向量机中进行多分类,得到测试报告分类结果,本发明可以更加精准地对众包测试场景下的Bug报告进行特征融合,Bug分类,从而有效进行任务分配,提高了众包测试场景下Bug分类的准确率,降低了人工审核的压力,提高了人工审核的效率,进一步促进众包测试的发展,帮助企业测试流程更好得开展。
附图说明
图1为本发明流程图(一);
图2为本发明流程图(二);
图3为图1语料库中的测试报告;
图4为图1中SVM分类流程图;
图5为众包测试的流程图。
具体实施方式
为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。
本发明的核心思想是对不同模态的数据进行特征融合,通过合成向量完成分类任务。
首先需要对众包Bug语料库中的数据进行预处理。这个步骤需要对报告中的文本和图像分别进行处理。本发明采取预处理方式,对文本数据进行数据清洗、分词、去除停用词、以及词频统计,对图像数据进行尺寸调整、平滑处理、以及噪声处理。并将Bug集分为已分类的Bug集和未分类的Bug集。之后进行特征提取。这一步作为本发明的核心,将处理好的数据输入深度玻尔兹曼机模型,输出合成后的高维特征向量。最后通过SVM进行分类。具体而言,该方法包含下列步骤:
1)数据预处理。给定众包测试Bug语料库D,对测试报告中的文本描述和屏幕截图分别进行数据预处理。
步骤1)-1:文本预处理。这里采用常用的自然语言处理方法。首先对文本数据进行清洗,清洗掉数字、英文、标点等非常规字符,这些内容对语义理解意义不大,可以去除。其次进行采用jieba(结巴,一款常见的中文自然语言处理工具,提供分词、关键词抽取等功能)进行分词、去除停用词。分词即将语句拆分成词汇,去除停用词即去除对文本分析没有帮助的连词、虚词、语气词等信息。最后通过TF-IDF进行词频统计。TF-IDF(termfrequency–inverse document frequency)是一种用于信息检索与数据挖掘的常用加权技术。TF是词频(Term Frequency),IDF是逆文本频率指数(Inverse Document Frequency)。词频(TF)表示词条(关键字)在文本中出现的频率。这个数字通常会被归一化(一般是词频除以文章总词数),以防止它偏向长的文件。公式:
即:
Figure 692719DEST_PATH_IMAGE016
某一特定词语的IDF逆文本频率(IDF) :某一特定词语的IDF,可以由总文件数目除以包含该词语的文件的数目,再将得到的商取对数得到。
Figure 180201DEST_PATH_IMAGE017
其中,分母之所以要加1,是为了避免分母为0。
如果包含词条w的文档越少,IDF越大,则说明词条具有很好的类而TF-IDF实际上等于TF与IDF的乘积:
Figure 137662DEST_PATH_IMAGE018
例如文档集:
成功新增邮件,提示操作成功,用户体验友好。
成功删除邮件,提示操作失败,用户体验糟糕。
经过jieba分词处理后的词汇表为:[成功,邮件,新增,提示,操作,成功,友好,用户,体验,删除,失败,糟糕]。
经过TF-IDF得到的词频:
Figure 701498DEST_PATH_IMAGE019
Figure 9989DEST_PATH_IMAGE020
最终得到的2行12列向量为:
Figure 317473DEST_PATH_IMAGE021
步骤1)-2:图片预处理。首先对图片进行尺寸调整,屏蔽掉图像像素特征的差异。之后进行滤波处理,平滑图像,去除噪音。
2)多模态数据特征的提取与融合。这里采用深度玻尔兹曼机模型模型,用于结合不同模态的数据特征来创建融合数据的表征,能够同时对文本数据和图像数据进行压缩,得到测试报告信息的有效表示。首先,以预处理阶段的文本、图像特征作为可见层(输入神经网络的用户可见的神经网络层)数据,通过对比散列算法即可提取出隐藏层(除了输入的可见层层和输出层外的其他所有层)的特征向量。对比散列算法是由Hinton提出的一种训练受限玻尔兹曼机的一个标准算法,该方法用于加速受限玻尔兹曼机的学习过程,使得只需要少数的吉布斯采样过程即可得到足够好的梯度下降近似值。目的在于解决高维数据训练难的问题。该算法是通过一次吉布斯采样求解对参数进行偏导数求解。吉布斯采样是一种常用的统计学方法,用来构造多变量概率分布的随机样本。通过条件分布采样模拟联合分布,再通过模拟的联合分布直接推导出条件分布,以此循环。
最后,在最终得到的文本DBM网络模型和图像DBM网络模型的基础上增加一层二进制神经网络层来结合这两个模型,从而得到合成向量。将文本和图像模态的特征一起映射到该层二进制神经网络层上,这一层也作为整个模型的最终输出层再使用反向传播算法(适合于多层神经元网络的一种学习算法,通过反馈的方式从输出层倒推输入层,直到网络输入层达到预定的目标范围)寻找最优解(经过反向传播后误差值最小的参数,如最恰当的偏置向量b和特征向量w)。
玻尔兹曼机是一种基于能量的模型,其对应的联合概率分布(多变量的概率分布)为
Figure 926178DEST_PATH_IMAGE022
其中,能量E越小,对应状态的概率越大。Z是归一化因子,用作归一化。
包含三层隐藏层的深度玻尔兹曼机,联合概率分布为:
Figure 926495DEST_PATH_IMAGE023
其能量形式如下:
Figure 456702DEST_PATH_IMAGE024
其中,E为可见层与输入层之间的能量函数;
Figure 302299DEST_PATH_IMAGE004
表示可见输入层,T表示转置,
Figure 765510DEST_PATH_IMAGE005
表示隐藏层,
Figure 671149DEST_PATH_IMAGE006
表示整个模型的参数;v∈{0,1},为可见节点状态;
Figure 954232DEST_PATH_IMAGE007
∈{0,1},为第一层隐单元状态;
Figure 603519DEST_PATH_IMAGE008
为第一组单元连接权值;
Figure 979876DEST_PATH_IMAGE009
∈{0,1},为第二层隐单元状态;
Figure 56416DEST_PATH_IMAGE010
为第二组单元连接权值;
Figure 843107DEST_PATH_IMAGE011
∈{0,1},为第三层隐单元状态;
Figure 545352DEST_PATH_IMAGE012
为第三组单元连接权值;联合概率分布表示映射到某一合成向量上的概率,能量E确保模型稳定性,最终输出得到所述文本和图像的合成向量。
因此,通过将预处理过的数据输入DBM,联合概率分布表示映射到某一合成向量上的概率,能量E确保了模型稳定性,最终输出得到文本和图像的合成向量。
3)训练分类模型。这里是一个多分类的分类器,包含不正常退出、数据错误、功能错误、页面布局错误、用户体验、和性能问题六种类别。这里采用支持向量机SVM作为分类方法,将步骤2)中输出的特征向量作为输入,直接输出预定义好的分类结果。
图1、图2,为本发明实施的基于深度玻尔兹曼机的Bug分类方法的整体框架图。
下面进一步描述:
一种基于深度玻尔兹曼机的Bug分类方法,包括下列步骤。
1)Step1数据预处理:这里需要对测试报告中的文本数据和图像数据都进行预处理。文本预处理采用常用的自然语言处理方法。首先对文本数据进行清洗,清洗掉数字、英文、标点等非常规字符,这些内容对语义理解意义不大,可以去除。其次进行采用jieba进行分词、去除停用词。分词即将语句拆分成词汇,去除停用词即去除对文本分析没有帮助的连词、虚词、语气词等信息。最后通过TF-IDF进行词频统计。图片预处理需要先对图片进行尺寸调整,屏蔽掉图像像素特征的差异。之后再进行滤波处理,平滑图像,去除噪音。另外需要对已有语料库中的Bug数据集分类。将Bug集D分为未分类的Bug集D1和已经有分类标签的分类Bug集D2。其中,未分类的Bug集D1用于训练深度学习模型,已分类的Bug集D2用于训练和测试分类器。
2)Step2 多模态数据特征的提取与融合。这里采用深度玻尔兹曼机模型。该模型用于结合不同模态的数据特征来创建融合数据的表征,能够同时对文本数据和图像数据进行压缩,得到测试报告信息的有效表示。该模型是从每个数据模态的条件分布中取样,即使在某些数据模态缺失的情况下也可以完成特征表示。因此对于本发明从语料库中的测试报告,即使测试报告仅包含文本信息或者仅包含图像信息,DBM也可以很好的处理。
3)Step3训练分类模型。这里是一个多分类的分类器,采用支持向量机SVM作为分类方法,将上一步融合得到的高维向量输入SVM,得到分类结果(包含不正常退出、数据错误、功能错误、页面布局错误、用户体验、和性能问题六种类别)。
图3为图1语料库中的测试报告,由测试工人提交,管理员审核。包含文本信息(如Bug题目,Bug描述等)和图像信息(如Bug截图)。需要对其中需要的文本信息和图像信息,分别进行预处理。
图4为用于分类测试报告的流程图,使用多分类支持向量机分类测试报告的特征向量集合。具体步骤如下:
步骤1:起步状态,开始训练支持向量机(SVM)模型;步骤2:预处理从深度玻尔兹曼机模型得到的特征向量集合,去除噪声数据;步骤3:定义函数间隔和求解目标,构造SVM优化函数和优化目标;步骤4:针对优化目标,使用序列最小优化(SMO)算法转化优化目标,多次迭代达到优化目的,最终解出模型参数;步骤5:输入带分类特征向量集到支持向量机模型,计算分类值;步骤6:输出分类结果,结束状态。
图5为众包测试的流程图。具体步骤如下:步骤1:由管理员发布待测软件,待测软件又被拆分为一个个单独的待测任务;步骤2:众包工人通过众包平台领取待测任务;步骤2:测试工人在自身环境下完成测试,并提交测试报告;步骤4:最终管理员审核报告,并整理发布最终的软件测试报告。

Claims (2)

1.一种基于DBM深度学习的众包缺陷分类方法,其特征在于,该众包缺陷分类方法是对众包场景下测试工人提交的测试报告,对所述测试报告中的文本描述和图片分别进行数据预处理得到文本数据和图像数据;然后进行多模态数据特征的提取与融合,即通过DBM对所述文本数据和图像数据进行特征融合,且输出得到文本和图像的合成向量;最后是训练分类模型,包括将所述合成向量输入到SVM中,直接输出预定义好的分类结果,所述预定义好的分类结果包含了不正常退出、数据错误、功能错误、页面布局错误、用户体验、和性能问题六大类别,所述DBM中文之意为深度玻尔兹曼机,所述SVM中文之意为支持向量机;
所述深度玻尔兹曼机是以受限玻尔兹曼机为基础的深度学习模型,由多层受限玻尔兹曼机叠加而成,受限玻尔兹曼机是通过输入数据集学习概率分布的随机生成神经网络,为双层神经网络,即只有一个可见层和一个隐藏层,而所述深度玻尔兹曼机具有多层隐单元层,即除了输入的可见层和输出层外的其他所有层;该模型用于结合不同模态的数据特征来创建融合数据的表征,能够同时对文本数据和图像数据进行压缩,得到测试报告信息的有效表示;该模型是从每个数据模态的条件分布中取样,即使在某些数据模态缺失的情况下也可以完成特征表示;
所述文本描述进行预处理是:首先进行清洗,清洗掉非常规字符,非常规字符包括数字、英文、标点,其次采用jieba(结巴),进行分词与去除停用词,分词即将语句拆分成词汇,去除停用词即去除对文本分析没有帮助的词,包括连词、虚词、语气词,最后通过TF-IDF进行词频统计,TF是指词频,IDF是指逆文本频率指数;
所述图片进行预处理是:首先对图片进行尺寸调整,屏蔽掉图像像素特征的差异,之后进行滤波处理,平滑图像,去除噪音;
所述多模态数据特征的提取与融合包括下列步骤:首先,以所述文本数据和图像数据作为可见层数据,所述可见层数据是指输入神经网络的用户可见的神经网络层,通过对比散列算法提取出隐单元层的特征向量,最后,形成一个多模态的DBM网络,所述多模态的DBM网络包括文本DBM网络模型和图像DBM网络模型,在所述文本DBM网络模型和图像DBM网络模型的基础上增加一层二进制神经网络层进行结合,即将文本和图像模态的特征一起映射到该层二进制神经网络层上,这一层也作为整个模型的最终输出层再使用反向传播算法寻找最优解,作为分类结果,所述反向传播算法是适合于多层神经元网络的一种学习算法,通过反馈的方式从输出层倒推输入层,直到网络输入层达到预定的目标范围,所述最优解是指经过反向传播后误差值最小的参数;
玻尔兹曼机是一种基于能量的模型,其对应的联合概率分布为
Figure 266917DEST_PATH_IMAGE001
其中,能量E越小,对应状态的概率越大,Z是归一化因子,用作归一化,
包含三层隐藏层的深度玻尔兹曼机,联合概率分布为:
Figure 117061DEST_PATH_IMAGE002
其能量形式如下:
Figure 878213DEST_PATH_IMAGE003
其中,E为可见层与输入层之间的能量函数;
Figure 30977DEST_PATH_IMAGE004
表示可见输入层,T表示转置,
Figure 746254DEST_PATH_IMAGE005
表 示隐藏层,
Figure 400089DEST_PATH_IMAGE006
表示整个模型的参数;v∈{0,1},为可见节点状态;
Figure 766480DEST_PATH_IMAGE007
∈{0,1},为第一层隐单 元状态;
Figure 339412DEST_PATH_IMAGE008
为第一组单元连接权值;
Figure 915887DEST_PATH_IMAGE009
∈{0,1},为第二层隐单元状态;
Figure 983200DEST_PATH_IMAGE010
为第二组单元连 接权值;
Figure 954830DEST_PATH_IMAGE011
∈{0,1},为第三层隐单元状态;
Figure 574030DEST_PATH_IMAGE012
为第三组单元连接权值;联合概率分布表示 映射到某一合成向量上的概率,能量E确保模型稳定性,最终输出得到所述文本和图像的合 成向量。
2.根据权利要求1所述的基于DBM深度学习的众包缺陷分类方法,其特征在于,所述TF-IDF是一种用于信息检索与数据挖掘的常用加权技术,
Figure 247588DEST_PATH_IMAGE013
某一特定词语的IDF,IDF中文之意为逆向文件频率:某一特定词语的IDF,可以由总文件数目除以包含该词语的文件的数目,再将得到的商取对数得到;
Figure 367859DEST_PATH_IMAGE014
其中,分母之所以要加1,是为了避免分母为0;
如果包含词条t的文档越少, IDF越大,则说明词条具有很好的类别区分能力,而TF- IDF实际上等于TF与IDF的乘积:
Figure 302317DEST_PATH_IMAGE015
CN202210139536.6A 2022-02-16 2022-02-16 一种基于dbm深度学习的众包缺陷分类方法 Active CN114202038B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210139536.6A CN114202038B (zh) 2022-02-16 2022-02-16 一种基于dbm深度学习的众包缺陷分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210139536.6A CN114202038B (zh) 2022-02-16 2022-02-16 一种基于dbm深度学习的众包缺陷分类方法

Publications (2)

Publication Number Publication Date
CN114202038A CN114202038A (zh) 2022-03-18
CN114202038B true CN114202038B (zh) 2022-05-31

Family

ID=80659011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210139536.6A Active CN114202038B (zh) 2022-02-16 2022-02-16 一种基于dbm深度学习的众包缺陷分类方法

Country Status (1)

Country Link
CN (1) CN114202038B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116416247A (zh) * 2023-06-08 2023-07-11 常州微亿智造科技有限公司 基于预训练的缺陷检测方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000818A (zh) * 2020-07-10 2020-11-27 中国科学院信息工程研究所 一种面向文本和图像的跨媒体检索方法及电子装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11164105B2 (en) * 2017-11-13 2021-11-02 International Business Machines Corporation Intelligent recommendations implemented by modelling user profile through deep learning of multimodal user data
CN108876643A (zh) * 2018-05-24 2018-11-23 北京工业大学 一种社交策展网络上采集(Pin)的多模态表示方法
CN109189968B (zh) * 2018-08-31 2020-07-03 深圳大学 一种跨模态检索方法及系统
CN111340061A (zh) * 2020-01-18 2020-06-26 中国人民解放军国防科技大学 基于svm模型参数优化的多模态数据融合和分类方法
CN114048148A (zh) * 2022-01-13 2022-02-15 广东拓思软件科学园有限公司 一种众包测试报告推荐方法、装置及电子设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000818A (zh) * 2020-07-10 2020-11-27 中国科学院信息工程研究所 一种面向文本和图像的跨媒体检索方法及电子装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
高帆等.基于DBM-LSTM的多特征语音情感识别.《计算机工程与设计》.2020,第41卷(第02期),465-470. *

Also Published As

Publication number Publication date
CN114202038A (zh) 2022-03-18

Similar Documents

Publication Publication Date Title
Bakhtin et al. Real or fake? learning to discriminate machine from human generated text
US10089581B2 (en) Data driven classification and data quality checking system
CN109726120B (zh) 一种基于机器学习的软件缺陷确认方法
CN113011533A (zh) 文本分类方法、装置、计算机设备和存储介质
CN110825877A (zh) 一种基于文本聚类的语义相似度分析方法
CN106844632B (zh) 基于改进支持向量机的产品评论情感分类方法及装置
US10083403B2 (en) Data driven classification and data quality checking method
CN112732916A (zh) 一种基于bert的多特征融合模糊文本分类模型
CN115062148B (zh) 一种基于数据库的风险控制方法
CN111158641B (zh) 基于语义分析和文本挖掘的事务类功能点自动识别方法
Ramasundaram et al. Text categorization by backpropagation network
CN112966708A (zh) 一种基于语义相似度的中文众包测试报告聚类方法
CN113448843A (zh) 基于缺陷分析的图像识别软件测试数据增强方法及装置
CN113886562A (zh) 一种ai简历筛选方法、系统、设备和存储介质
CN114202038B (zh) 一种基于dbm深度学习的众包缺陷分类方法
CN115098690A (zh) 一种基于聚类分析的多数据文档分类方法及系统
CN113486143A (zh) 一种基于多层级文本表示及模型融合的用户画像生成方法
Kusumaningrum et al. WCLOUDVIZ: Word cloud visualization of Indonesian news articles classification based on Latent dirichlet allocation
CN111191029B (zh) 基于监督学习和文本分类的ac构建方法
CN112685374B (zh) 日志分类方法、装置及电子设备
CN113220565B (zh) 一种众包测试报告的处理方法及装置
CN115329207A (zh) 智能销售信息推荐方法及系统
CN111209375B (zh) 一种通用的条款与文档匹配方法
CN114357984A (zh) 一种基于拼音的同音字变体处理方法
KR20200010679A (ko) 이질성 학습 기반의 정보 분류 장치

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