CN114880215B - 一种面向众包系统的测试用例自动生成的方法 - Google Patents

一种面向众包系统的测试用例自动生成的方法 Download PDF

Info

Publication number
CN114880215B
CN114880215B CN202210439690.5A CN202210439690A CN114880215B CN 114880215 B CN114880215 B CN 114880215B CN 202210439690 A CN202210439690 A CN 202210439690A CN 114880215 B CN114880215 B CN 114880215B
Authority
CN
China
Prior art keywords
difficulty
distribution
task
new
worker
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
CN202210439690.5A
Other languages
English (en)
Other versions
CN114880215A (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.)
Zhejiang Gongshang University
Original Assignee
Zhejiang Gongshang University
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 Zhejiang Gongshang University filed Critical Zhejiang Gongshang University
Priority to CN202210439690.5A priority Critical patent/CN114880215B/zh
Publication of CN114880215A publication Critical patent/CN114880215A/zh
Application granted granted Critical
Publication of CN114880215B publication Critical patent/CN114880215B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • General Factory Administration (AREA)

Abstract

本发明公开了一种面向众包系统的测试用例自动生成的方法。本发明以项目反应理论IRT作为基本模型,首先,针对真实的小数据集,利用机器学习的方法,通过联合极大似然函数估计工人的能力和任务的难度,获取工人的能力和任务的难度分布。其次,将估计得到的参数带入IRT中,计算答对的概率,并结合真实标签进行注释,自动生成面向众包系统的测试用例。本发明解决了由于成本受限导致的一系列问题,如平台获得的数据集不完整,众包系统的测试用例不均衡等问题。该方法基于项目反应理论,使用机器学习,为评估众包系统自动生成大量的测试用例。

Description

一种面向众包系统的测试用例自动生成的方法
技术领域
本发明涉及一种面向众包系统的测试用例自动生成的方法。
背景技术
众包已成功运用于各个领域中,并处理了很多计算机难以解决的问题。众包得到了快速的发展,其中控制获取数据集的成本和数据集的质量是关键。一般来说,众包数据集的获取过程主要包括发布任务,工人响应和回收数据这三个步骤。但是在众包平台发布任务时,由于测试成本受限,回收的数据集难以全面覆盖各种状况。把不全面的数据集作为评估众包系统的测试用例,会导致其结果不稳定。
目前,众包系统的测试用例主要来源于平台收集的数据集。但由于收集困难,成本高,收集得到一个完整的,覆盖全面的数据集比较困难。因此如何利用自动生成的方式来生成测试用例成为了一个核心问题。近年来,产生了一些面向众包系统的测试用例自动生成的研究,例如,通过统计学的方式产生众包数据集来进行实验,但生成的方法过于简单,没有考虑到工人能力与任务难度对生成标签的影响,导致生成的测试用例质量不高。
本发明是在项目反应理论(IRT)的基础上,结合机器学习的方法,来生成众包测试用例。项目响应理论,由Lord在1951年提出。IRT包含一个能力参数和一个困难参数,均遵循某种分布(比如正态分布)。基于能力和难度的函数通过sigmoid函数得到最后的概率估计。本发明使用机器学习中联合极大似然的方法来估计这两个参数,并结合IRT和真实标签来生成众包测试用例。
发明内容
针对目前众包领域中,由于成本受限,通过平台获取的数据集不完整,主要表现为数据分布不均衡等问题,本发明提供了一种面向众包系统的测试用例自动生成的方法,自动生成大量分布均衡测试用例来测试众包系统。
本发明的目的是通过以下技术方案实现的:
一种面向众包系统的测试用例自动生成的方法包含以下步骤:
(1)以收集得到的小规模真实数据集为我们的初始数据集;
(2)将真实样本的标签与真实标签对比得到得分矩阵;
(3)将得分矩阵带入项目反应理论IRT中,得到工人的能力和任务的难度,并计算能力分布和难度分布;
(4)从能力分布和难度分布中采样,得到一个新的能力和一个新的难度,并带入项目反应理论IRT,计算得到答对的概率;
(5)将答对的概率和真实标签结合,来模拟工人对任务进行标注,自动生成众包测试用例。
本发明的有益技术效果:本发明首先通过真实数据,使用机器学习中的联合极大似然函数来估计模型的参数即工人能力和任务难度,得到对应的分布α和β,然后从分布中采样仿真工人和任务,并带入模型,得到概率,最后结合真实标签来自动生成大量分布均衡的众包系统测试用例。本发明解决了由于成本受限导致的一系列问题,如平台获得的数据集不完整,测试用例不均衡等问题。
附图说明
图1为本发明面向众包系统的测试用例自动生成的方法框架图。
具体实施方式
本实施例包含以下步骤:
(1)以收集得到的小规模真实数据集为我们的初始数据集;
(2)将真实样本的标签与真实标签对比得到得分矩阵;
(3)将得分矩阵带入项目反应理论IRT中,得到工人的能力和任务的难度,并计算能力分布和难度分布;
(4)从能力分布和难度分布中采样,得到一个新的能力和一个新的难度,并带入项目反应理论IRT,计算得到答对的概率;
(5)将答对的概率和真实标签结合,来模拟工人对任务进行标注,自动生成众包测试用例。
在一些实施例中,步骤(2)中包含以下步骤:
(2-1)真实样本中工人j对任务i的标注Lij与真实标签zi比较;
(2-2)因此根据以下式子可以由yij组成一个得分矩阵Y。
本发明没有将整个数据集和真实标签直接带入到模型中,因为会对训练模型造成一定困难。由于知道真实样本中工人对任务的标注,并且任务的真实标签是已知的,为了更好的统计工人回答任务的正确情况,本发明引入了一个得分矩阵,该矩阵可以清楚的知道某个工人对某个任务的标注是否准确,并为训练模型的参数做铺垫。
在一些实施例中,步骤(3)中包含以下步骤:
(3-1)将项目反应理论IRT表示为:
其中pij表示答对的概率,θj表示工人j的能力,bi表示任务的难度;
完整的IRT是可以带有多个参数,比如项目的猜测系数、项目的区分度系数等。但是由于应用场景的限制,并且为了让模型更易实现,本发明结合众包领域的特点,只考虑了两个参数,即任务的难度b和工人的能力θ。
(3-2)将得分矩阵Y带入到IRT中,建立能力θ和难度b的联合极大似然函数:
其中I表示工人总数,J表示任务的总数。
对模型的参数估计的方法有许多,比如极大似然估计,EM算法,贝叶斯算法,MCMC算法等。联合极大似然是一种本文采用的是联合极大似然来估计IRT中工人能力θj和任务难度bi。极大似然估计,是一种概率论在统计学的应用,它是参数估计的方法之一。已知某个参数能使这个样本出现的概率最大,所以直接就把这个参数作为估计的真实值。联合极大似然函数估计是针对多元函数极值的方法,可以通过梯度上升或者梯度下降的方法简单方便的估计参数。
(3-3)取上述函数的对数:
对极大似然函数取对数的原因有很多,首先可以减少计算量,其次由于概率的取值范围是[0,1],如果连乘的话会导致一个特别小的值,会对之后的计算产生巨大的影响。除此之外,如果对函数进行了取对数的操作,并不会对函数的单调性造成影响,可以对似然函数通过梯度上升或者下降求参数。
(3-4)对θ求偏导化简,带入pii
(3-5)对b求偏导化简,带入pij
(3-5)通过带入参数,计算似然函数,一直不断迭代得到最终的工人的能力θj和任务的难度bi
通过不断的迭代,可以计算得到每个工人的能力和每个任务的难度,这是从真实数据中得到的重要信息,是后续自动生成标注的基础。
在一些实施例中,(3-6)计算能力分布和任务的难度分布。
本发明假设能力分布和难度分布服从正太分布,根据正太分布来拟合得到的任务难度和工人能力,并最终得到任务难度分布的参数和工人能力分布的参数。具体是:
(a)假定工人能力和任务难度都服从正态分布;
(b)利用MLE公式得到均值和标准差:
根据MLE公式可以很快的计算出工人能力和任务难度分布的均值和方差,并且能够较为准确的拟合真实数据的能力分布情况和任务难度的分布情况。
(c)最终得到工人能力和任务难度的分布,工人的能力分布α服从正太分布,任务的难度分布β服从正太分布。
在一些实施例中,步骤(4)中包括以下步骤:
(4-1)从能力分布α中采样得到一个新的工人;
这一步骤针对的当数据集中工人较少时,通过从工人能力分布α中采样,得到一个能力值并赋给新的工人,通过这个通过来仿真生成一个全新的工人。
(4-2)从难度分布β中采样得到一个新的任务,并赋予其一个真实标签;
这一步骤针对的是当数据集中任务较少时,通过从任务难度分布β中采样,得到一个任务的难度并赋给一个新的任务,除此之外还要随机生成一个标签当做这个任务的真实标签,最终生成一个真实数据中不存在全新的一个任务。
(4-3)将新的工人能力和新的任务难度带入到IRT中,得到答对的概率p;
将这个新工人跟的能力和新任务的难度带入到模型中,就能够计算出该工人能答对该任务的概率。
在一些实施例中,步骤(5)中包括以下步骤:
(5-1)将答对的概率p与真实标签结合,以p的概率生成真实标签,来生成新工人对新任务的响应。
(5-2)模拟工人对任务进行标注,自动生成众包测试用例。
本发明只需要真实数据集的部分样本,使用真实数据和联合极大似然函数来估计IRT的参数,即工人的能力和任务的难度。根据公式得到工人的能力分布和任务的难度分布,然后从分布中采样得到新的工人的新的任务,并带入IRT得到工人回答真实标签的概率,再结合真实标签生成一个新的标签,得到新的测试用例。这些生成的数据集能够应用于众包领域的某些实验,因此,对于这种提出面向众包系统的测试用例自动生成的方法具有十分重要的意义。

Claims (6)

1.一种面向众包系统的测试用例自动生成方法,其特征在于,包含以下步骤:
(1)以收集得到的小规模真实数据集为我们的初始数据集;
(2)将真实样本的标签与真实标签对比得到得分矩阵;
(3)将得分矩阵带入项目反应理论IRT中,得到工人的能力和任务的难度,并计算能力分布和难度分布;
(4)从能力分布和难度分布中采样,得到一个新的能力和一个新的难度,并带入项目反应理论IRT,计算得到答对的概率;
(5)将答对的概率和真实标签结合,来模拟工人对任务进行标注,自动生成众包测试用例。
2.根据权利要求1所述的面向众包系统的测试用例自动生成方法,其特征在于,步骤(2)中包含以下步骤:
(2-1)比较真实样本中工人j对任务i的标注Lij与真实标签zi
(2-2)形成得分矩阵Y,其中得分矩阵中的元素yij计算如下:
3.根据权利要求1所述的面向众包系统的测试用例自动生成的方法,其特征在于,步骤(3)中包含以下步骤:
(3-1)将项目反应理论IRT表示为:
其中pij表示答对的概率,θj表示工人j的能力,bi表示任务i的难度;
(3-2)将得分矩阵Y带入到项目反应理论IRT中,建立能力θ和难度b的联合极大似然函数:
其中I表示工人总数,J表示任务的总数;
(3-3)取上述函数的对数:
(3-4)对θ求偏导化简,带入pij
(3-5)对b求偏导化简,带入pij
(3-5)通过带入参数,计算似然函数,一直不断迭代得到最终的工人的能力θj和任务的难度bi
(3-6)计算能力分布和任务的难度分布。
4.根据权利要求3所述的面向众包系统的测试用例自动生成的方法,其特征在于,步骤(3-6)中包括以下步骤:
(a)假定工人能力和任务难度都服从正态分布;
(b)利用MLE公式得到均值和标准差:
(c)最终得到工人能力和任务难度的分布,工人的能力分布α服从正太分布,任务的难度分布β服从正太分布。
5.根据权利要求1所述的面向众包系统的测试用例自动生成的方法,其特征在于,步骤(4)中包括以下步骤:
(4-1)从能力分布α中采样得到一个新的工人;
(4-2)从难度分布β中采样得到一个新的任务,并赋予其一个真实标签;
(4-3)将新的工人能力和新的任务难度带入到项目反应理论IRT中,得到答对的概率p。
6.根据权利要求1所述的面向众包系统的测试用例自动生成的方法,其特征在于,步骤(5)中包括以下步骤:
(5-1)将答对的概率p与真实标签结合,以p的概率生成真实标签,来生成新工人对新任务的响应;
(5-2)模拟工人对任务进行标注,自动生成众包测试用例。
CN202210439690.5A 2022-04-25 2022-04-25 一种面向众包系统的测试用例自动生成的方法 Active CN114880215B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210439690.5A CN114880215B (zh) 2022-04-25 2022-04-25 一种面向众包系统的测试用例自动生成的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210439690.5A CN114880215B (zh) 2022-04-25 2022-04-25 一种面向众包系统的测试用例自动生成的方法

Publications (2)

Publication Number Publication Date
CN114880215A CN114880215A (zh) 2022-08-09
CN114880215B true CN114880215B (zh) 2024-08-20

Family

ID=82671759

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210439690.5A Active CN114880215B (zh) 2022-04-25 2022-04-25 一种面向众包系统的测试用例自动生成的方法

Country Status (1)

Country Link
CN (1) CN114880215B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113342655A (zh) * 2021-06-08 2021-09-03 浙江工商大学 一种面向众包系统的仿真测试用例生成方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160034839A1 (en) * 2012-11-21 2016-02-04 Varun Aggarwal Method and system for automatic assessment of a candidate"s programming ability
US9704102B2 (en) * 2013-03-15 2017-07-11 William Marsh Rice University Sparse factor analysis for analysis of user content preferences
US20160019803A1 (en) * 2014-07-21 2016-01-21 New York University System, method and computer-accessible medium for scalable testing and evaluation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113342655A (zh) * 2021-06-08 2021-09-03 浙江工商大学 一种面向众包系统的仿真测试用例生成方法及装置

Also Published As

Publication number Publication date
CN114880215A (zh) 2022-08-09

Similar Documents

Publication Publication Date Title
US11003738B2 (en) Dynamically non-gaussian anomaly identification method for structural monitoring data
CN108090515B (zh) 一种基于数据融合的环境等级评估方法
CN116340796B (zh) 时序数据分析方法、装置、设备及存储介质
CN107730097B (zh) 一种母线负荷预测方法、装置及计算设备
CN111178261A (zh) 一种基于视频编码技术的人脸检测加速方法
CN114239384A (zh) 一种基于非线性度量原型网络的滚动轴承故障诊断方法
CN115908051A (zh) 一种电力系统储能容量确定方法
CN112149896A (zh) 一种基于注意力机制的机械设备多工况故障预测方法
CN108171271B (zh) 一种设备劣化早期预警方法和系统
CN117335409B (zh) 基于人工智能的电力用户负荷预测系统
CN110532629A (zh) 一种多模态退化过程的剩余寿命预测方法
CN114880215B (zh) 一种面向众包系统的测试用例自动生成的方法
Ballı et al. An application of artificial neural networks for prediction and comparison with statistical methods
CN107247996A (zh) 一种应用于异分布数据环境的主动学习方法
CN117113086A (zh) 一种储能机组负荷预测方法、系统、电子设备及介质
CN105205560B (zh) 一种基于正负误差变权的光伏发电功率预测方法
CN115987692A (zh) 一种基于流量回溯分析的安全防护系统及方法
CN113835964B (zh) 基于小样本学习的云数据中心服务器能耗预测方法
CN115935285A (zh) 基于掩码图神经网络模型的多元时间序列异常检测方法和系统
CN115270983A (zh) 一种基于AdaBoost-RBF算法的开关柜故障预测方法
CN111401519B (zh) 一种基于物体内和物体间相似性距离的深层神经网络无监督学习方法
CN111428344B (zh) 一种高速公路机电设备退化分析模型的构建方法
CN111914751B (zh) 一种图像人群密度识别检测方法及系统
CN112132310A (zh) 基于改进lstm的电力设备状态预估方法及装置
WO2020194583A1 (ja) 異常検知装置、制御方法、及びプログラム

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