只要可以预见的是测试代码的固有特征,可以大大降低测试的高成本。本文提供了一种机器学习模型,以预测测试可以在多大程度上覆盖一个名为Coverabeality的新指标。预测模型由四个回归模型的集合组成。学习样本由特征向量组成,其中特征是为类计算的源代码指标。样品由针对其相应类计算的覆盖率值标记。我们提供了一个数学模型,以评估每个班级自动生成的测试套件的尺寸和覆盖范围的测试效果。我们通过引入一种新方法来根据现有源代码指标来定义子计量数来扩展功能空间的大小。使用功能重要性分析在学习的预测模型上,我们按照对测试效果的影响顺序对源代码指标进行排序。结果,我们发现类别严格的循环复杂性是最有影响力的源代码度量。我们对包含大约23,000个类的大型Java项目的预测模型进行的实验表明,平均绝对误差(MAE)为0.032,平均平方误差(MSE)为0.004,R2得分为0.855。与最先进的覆盖范围预测模型相比,我们的模型分别提高了MAE,MSE和R2得分5.78%,2.84%和20.71%。
translated by 谷歌翻译
软件测试可能是一个漫长且昂贵的过程,尤其是如果无法测试的软件进行测试。重构技术可以通过改善影响可检验性的软件指标来增强可检验性。在构建回归模型学习如何将计算的源代码计算指标与其可检验性相关联的指标时,确定了指标。我们确定了15个软件指标,在解释我们的可检测性预测模型的同时,高度影响可检验性。我们使用42个Java类的实验表明,除了改善其他一些质量属性外,改善这15个指标的重构平均可以提高可测试性15.57%。我们的可测试性预测模型经过训练,可以映射源代码指标,以测试有效性和效率,作为可测试软件的两种重要成分。随着测试套件获得的覆盖范围的增加,测试有效性会提高。另一方面,随着测试套件的大小增加,测试效率会降低。本文提供了一个数学模型,以根据测试套件的大小和覆盖范围来计算类可检验性。我们使用此数学模型来计算可测试性作为我们可检测性预测模型的目标。数学模型要求执行正在测试的类以计算测试覆盖范围,而我们的回归模型在静态上测量了测试性。在测试性方面的测试结果预测应在测试之前,以避免不必要的成本。我们的可测试性预测模型已在23,886个Java类和262个软件指标上进行了培训和测试。学习的模型以R2为0.68,平均平方误差为0.03,可预测可验证性。
translated by 谷歌翻译
上下文:测试气味是开发测试用例时采用的亚最佳设计选择的症状。先前的研究证明了它们对测试代码可维护性和有效性的有害性。因此,研究人员一直在提出基于启发式的自动化技术来检测它们。但是,此类探测器的性能仍然有限,并且取决于要调整的阈值。目的:我们提出了基于机器学习来检测四种测试气味的新型测试气味检测方法的设计和实验。方法:我们计划开发最大的手动验证测试气味数据集。该数据集将被利用来训练六个机器学习者,并在跨项目内和跨项目内评估其功能。最后,我们计划将我们的方法与最新的基于启发式的技术进行比较。
translated by 谷歌翻译
该软件随着先进技术和方法论的发明而迅速变化。响应不断变化的业务需求而快速,成功升级软件的能力比以往任何时候都重要。对于软件产品的长期管理,测量软件可维护性至关重要。通过提供软件可维护性的准确预测,将软计算技术用于软件可维护性预测,在软件维护过程中表现出了巨大的希望。为了更好地了解软计算技术在软件可维护性预测中的作用,我们旨在为软件可维护性预测提供对软计算技术的系统文献综述。首先,我们提供了软件可维护性的详细概述。之后,我们探讨了软件可维护性的基本原理以及采用软计算方法来预测软件可维护性的原因。后来,我们检查了软件可维护预测过程中采用的软计算方法。此外,我们讨论了与使用软计算技术预测软件可维护性相关的困难和潜在解决方案。最后,我们以一些有希望的未来方向来结束审查,以推动这一有前途的领域的进一步研究创新和发展。
translated by 谷歌翻译
血浆定义为物质的第四个状态,在高电场下可以在大气压下产生非热血浆。现在众所周知,血浆激活液体(PAL)的强和广谱抗菌作用。机器学习(ML)在医疗领域的可靠适用性也鼓励其在等离子体医学领域的应用。因此,在PALS上的ML应用可以提出一种新的观点,以更好地了解各种参数对其抗菌作用的影响。在本文中,通过使用先前获得的数据来定性预测PAL的体外抗菌活性,从而介绍了比较监督的ML模型。进行了文献搜索,并从33个相关文章中收集了数据。在所需的预处理步骤之后,将两种监督的ML方法(即分类和回归)应用于数据以获得微生物灭活(MI)预测。对于分类,MI分为四类,对于回归,MI被用作连续变量。为分类和回归模型进行了两种不同的可靠交叉验证策略,以评估所提出的方法。重复分层的K折交叉验证和K折交叉验证。我们还研究了不同特征对模型的影响。结果表明,高参数优化的随机森林分类器(ORFC)和随机森林回归者(ORFR)分别比其他模型进行了分类和回归的模型更好。最后,获得ORFC的最佳测试精度为82.68%,ORFR的R2为0.75。 ML技术可能有助于更好地理解在所需的抗菌作用中具有主要作用的血浆参数。此外,此类发现可能有助于将来的血浆剂量定义。
translated by 谷歌翻译
大多数机器学习算法由一个或多个超参数配置,必须仔细选择并且通常会影响性能。为避免耗时和不可递销的手动试验和错误过程来查找性能良好的超参数配置,可以采用各种自动超参数优化(HPO)方法,例如,基于监督机器学习的重新采样误差估计。本文介绍了HPO后,本文审查了重要的HPO方法,如网格或随机搜索,进化算法,贝叶斯优化,超带和赛车。它给出了关于进行HPO的重要选择的实用建议,包括HPO算法本身,性能评估,如何将HPO与ML管道,运行时改进和并行化结合起来。这项工作伴随着附录,其中包含关于R和Python的特定软件包的信息,以及用于特定学习算法的信息和推荐的超参数搜索空间。我们还提供笔记本电脑,这些笔记本展示了这项工作的概念作为补充文件。
translated by 谷歌翻译
近年来,随着传感器和智能设备的广泛传播,物联网(IoT)系统的数据生成速度已大大增加。在物联网系统中,必须经常处理,转换和分析大量数据,以实现各种物联网服务和功能。机器学习(ML)方法已显示出其物联网数据分析的能力。但是,将ML模型应用于物联网数据分析任务仍然面临许多困难和挑战,特别是有效的模型选择,设计/调整和更新,这给经验丰富的数据科学家带来了巨大的需求。此外,物联网数据的动态性质可能引入概念漂移问题,从而导致模型性能降解。为了减少人类的努力,自动化机器学习(AUTOML)已成为一个流行的领域,旨在自动选择,构建,调整和更新机器学习模型,以在指定任务上实现最佳性能。在本文中,我们对Automl区域中模型选择,调整和更新过程中的现有方法进行了审查,以识别和总结将ML算法应用于IoT数据分析的每个步骤的最佳解决方案。为了证明我们的发现并帮助工业用户和研究人员更好地实施汽车方法,在这项工作中提出了将汽车应用于IoT异常检测问题的案例研究。最后,我们讨论并分类了该领域的挑战和研究方向。
translated by 谷歌翻译
合奏的基本分支混合合奏在许多机器学习问题,尤其是回归中蓬勃发展。几项研究证实了多样性的重要性。但是,以前的合奏仅考虑在子模型训练阶段的多样性,与单个模型相比,改进有限。相反,本研究从异质模型池中选择和权重子模型。它使用内点过滤线性搜索算法解决了优化问题。这种优化问题创新地将负相关学习作为惩罚项,可以选择多种模型子集。实验结果显示了一些有意义的观点。模型池构造需要不同类别的模型,每个类别都作为子模型为所有可能的参数集。选择每个类的最佳子模型以构建基于NCL的合奏,该集合比子模型的平均值要好得多。此外,与经典常数和非恒定加权方法相比,基于NCL的合奏在几种预测指标中具有重要优势。实际上,由于模型不确定性,很难在事先结论数据集的最佳子模型。但是,我们的方法将获得可比较的精度作为RMSE度量的潜在最佳子模型。总之,这项研究的价值在于它的易用性和有效性,使混合团合奏可以接受多样性和准确性。
translated by 谷歌翻译
Labeling a module defective or non-defective is an expensive task. Hence, there are often limits on how much-labeled data is available for training. Semi-supervised classifiers use far fewer labels for training models, but there are numerous semi-supervised methods, including self-labeling, co-training, maximal-margin, and graph-based methods, to name a few. Only a handful of these methods have been tested in SE for (e.g.) predicting defects and even that, those tests have been on just a handful of projects. This paper takes a wide range of 55 semi-supervised learners and applies these to over 714 projects. We find that semi-supervised "co-training methods" work significantly better than other approaches. However, co-training needs to be used with caution since the specific choice of co-training methods needs to be carefully selected based on a user's specific goals. Also, we warn that a commonly-used co-training method ("multi-view"-- where different learners get different sets of columns) does not improve predictions (while adding too much to the run time costs 11 hours vs. 1.8 hours). Those cautions stated, we find using these "co-trainers," we can label just 2.5% of data, then make predictions that are competitive to those using 100% of the data. It is an open question worthy of future work to test if these reductions can be seen in other areas of software analytics. All the codes used and datasets analyzed during the current study are available in the https://GitHub.com/Suvodeep90/Semi_Supervised_Methods.
translated by 谷歌翻译
天然气管道中的泄漏检测是石油和天然气行业的一个重要且持续的问题。这尤其重要,因为管道是运输天然气的最常见方法。这项研究旨在研究数据驱动的智能模型使用基本操作参数检测天然气管道的小泄漏的能力,然后使用现有的性能指标比较智能模型。该项目应用观察者设计技术,使用回归分类层次模型来检测天然气管道中的泄漏,其中智能模型充当回归器,并且修改后的逻辑回归模型充当分类器。该项目使用四个星期的管道数据流研究了五个智能模型(梯度提升,决策树,随机森林,支持向量机和人工神经网络)。结果表明,虽然支持向量机和人工神经网络比其他网络更好,但由于其内部复杂性和所使用的数据量,它们并未提供最佳的泄漏检测结果。随机森林和决策树模型是最敏感的,因为它们可以在大约2小时内检测到标称流量的0.1%的泄漏。所有智能模型在测试阶段中具有高可靠性,错误警报率为零。将所有智能模型泄漏检测的平均时间与文献中的实时短暂模型进行了比较。结果表明,智能模型在泄漏检测问题中的表现相对较好。该结果表明,可以与实时瞬态模型一起使用智能模型,以显着改善泄漏检测结果。
translated by 谷歌翻译
无论是在功能选择的领域还是可解释的AI领域,都有基于其重要性的“排名”功能的愿望。然后可以将这种功能重要的排名用于:(1)减少数据集大小或(2)解释机器学习模型。但是,在文献中,这种特征排名没有以系统的,一致的方式评估。许多论文都有不同的方式来争论哪些具有重要性排名最佳的特征。本文通过提出一种新的评估方法来填补这一空白。通过使用合成数据集,可以事先知道特征重要性得分,从而可以进行更系统的评估。为了促进使用新方法的大规模实验,在Python建造了一个名为FSEVAL的基准测定框架。该框架允许并行运行实验,并在HPC系统上的计算机上分布。通过与名为“权重和偏见”的在线平台集成,可以在实时仪表板上进行交互探索图表。该软件作为开源软件发布,并在PYPI平台上以包裹发行。该研究结束时,探索了一个这样的大规模实验,以在许多方面找到参与算法的优势和劣势。
translated by 谷歌翻译
Machine Learning for Source Code (ML4Code) is an active research field in which extensive experimentation is needed to discover how to best use source code's richly structured information. With this in mind, we introduce JEMMA, an Extensible Java Dataset for ML4Code Applications, which is a large-scale, diverse, and high-quality dataset targeted at ML4Code. Our goal with JEMMA is to lower the barrier to entry in ML4Code by providing the building blocks to experiment with source code models and tasks. JEMMA comes with a considerable amount of pre-processed information such as metadata, representations (e.g., code tokens, ASTs, graphs), and several properties (e.g., metrics, static analysis results) for 50,000 Java projects from the 50KC dataset, with over 1.2 million classes and over 8 million methods. JEMMA is also extensible allowing users to add new properties and representations to the dataset, and evaluate tasks on them. Thus, JEMMA becomes a workbench that researchers can use to experiment with novel representations and tasks operating on source code. To demonstrate the utility of the dataset, we also report results from two empirical studies on our data, ultimately showing that significant work lies ahead in the design of context-aware source code models that can reason over a broader network of source code entities in a software project, the very task that JEMMA is designed to help with.
translated by 谷歌翻译
本文调查了股票回购,特别是分享回购公告。它解决了如何识别此类公告,股票回购的超额回报以及股票回购公告后的回报的预测。我们说明了两种NLP方法,用于自动检测股票回购公告。即使有少量的培训数据,我们也可以达到高达90%的准确性。该论文利用这些NLP方法生成一个由57,155个股票回购公告组成的大数据集。通过分析该数据集,本论文的目的是表明大多数宣布回购的公司的大多数公司都表现不佳。但是,少数公司的表现极大地超过了MSCI世界。当查看所有公司的平均值时,这种重要的表现过高会导致净收益。如果根据公司的规模调整了基准指数,则平均表现过高,并且大多数表现不佳。但是,发现宣布股票回购的公司至少占其市值的1%,即使使用调整后的基准,也平均交付了显着的表现。还发现,在危机时期宣布股票回购的公司比整个市场更好。此外,生成的数据集用于训练72个机器学习模型。通过此,它能够找到许多可以达到高达77%并产生大量超额回报的策略。可以在六个不同的时间范围内改善各种性能指标,并确定明显的表现。这是通过训练多个模型的不同任务和时间范围以及结合这些不同模型的方法来实现的,从而通过融合弱学习者来产生重大改进,以创造一个强大的学习者。
translated by 谷歌翻译
深度神经网络(DNN)已广泛用于许多领域,包括图像处理,医疗诊断和自主驾驶。然而,DNN可以表现出可能导致严重错误的错误行为,特别是在安全关键系统中使用时。灵感来自传统软件系统的测试技术,研究人员提出了神经元覆盖标准,作为比喻源代码覆盖率,以指导DNN模型的测试。尽管对DNN覆盖范围非常积极的研究,但最近的几项研究质疑此类标准在指导DNN测试中的有用性。此外,从实际的角度来看,这些标准是白盒,因为它们需要访问DNN模型的内部或培训数据,这在许多情况下不可行或方便。在本文中,我们将黑盒输入分集度量调查为白盒覆盖标准的替代品。为此,我们首先以受控方式选择和适应三个分集指标和学习它们在输入集中测量实际分集的能力。然后,我们使用两个数据集和三个DNN模型分析其与故障检测的统计关联。我们进一步比较了与最先进的白盒覆盖标准的多样性。我们的实验表明,依赖于测试输入集中嵌入的图像特征的多样性是比覆盖标准更可靠的指示,以有效地指导DNN的测试。事实上,我们发现我们选定的黑盒子分集度量的一个远远超出了现有的覆盖范围,以便在发生故障泄露能力和计算时间方面。结果还确认了疑似,最先进的覆盖度量指标不足以指导测试输入集的构建,以检测尽可能多的自然输入的故障。
translated by 谷歌翻译
大多数自动化软件测试任务可以从测试用例的抽象表示中受益。传统上,这是通过基于测试案例的代码覆盖范围来完成的。规范级别的标准可以替换代码覆盖范围以更好地表示测试用例的行为,但通常不具有成本效益。在本文中,我们假设测试用例的执行痕迹可以使其在自动测试任务中抽象其行为的好选择。我们提出了一种新颖的嵌入方法Test2VEC,该方法将测试执行映射到潜在空间。我们在测试案例的优先级(TP)任务中评估了此表示形式。我们的默认TP方法基于嵌入式向量与历史失败测试向量的相似性。我们还根据测试向量的多样性研究了一种替代方案。最后,我们提出了一种决定给定测试套件的方法,以决定选择哪种TP。该实验基于几个真实和种子故障,具有超过一百万个执行痕迹。结果表明,就第一个失败测试案例(FFR)的中位数等级而言,我们提议的TP将最佳替代品提高了41.80%。就中位数APFD和中位数归一化FFR而言,它的表现优于传统代码覆盖范围的方法25.05%和59.25%。
translated by 谷歌翻译
背景:机器学习(ML)可以实现有效的自动测试生成。目的:我们表征了新兴研究,检查测试实践,研究人员目标,应用的ML技术,评估和挑战。方法:我们对97个出版物的样本进行系统文献综述。结果:ML生成系统,GUI,单位,性能和组合测试的输入或改善现有生成方法的性能。 ML还用于生成测试判决,基于属性的和预期的输出序列。经常基于神经网络和强化学习的监督学习通常是基于Q学习的 - 很普遍,并且某些出版物还采用了无监督或半监督的学习。使用传统的测试指标和与ML相关的指标(例如准确性)评估(半/非 - )监督方法,而经常使用与奖励功能相关的测试指标来评估强化学习。结论:工作到尽头表现出巨大的希望,但是在培训数据,再探术,可伸缩性,评估复杂性,所采用的ML算法以及如何应用 - 基准和可复制性方面存在公开挑战。我们的发现可以作为该领域研究人员的路线图和灵感。
translated by 谷歌翻译
我们介绍了数据科学预测生命周期中各个阶段开发和采用自动化的技术和文化挑战的说明概述,从而将重点限制为使用结构化数据集的监督学习。此外,我们回顾了流行的开源Python工具,这些工具实施了针对自动化挑战的通用解决方案模式,并突出了我们认为进步仍然需要的差距。
translated by 谷歌翻译
软件错误预测预测是一个活跃的研究领域,许多因素影响了预测性能。但是,除了一项初始工作外,尚未研究学习方法(即,用于培训和预测目标变量的数据的细节)对预测性能的影响。本文探讨了两种学习方法的影响,即Useallpredictall和usePredictPost,对软件错误预测预测的性能,包括释放内部和跨释放。经验结果基于从十二个开源项目的64个版本中提取的数据。结果表明,学习方法对分类表现有实质性的,通常未被承认的影响。具体而言,使用USEALLPREDICTALL导致的性能要比使用释放和跨释放的UsePrepredictPost学习方法要好得多。此外,本文发现,对于释放内部预测,分类性能的这种差异是由于两种学习方法中的类不平衡级别引起的。解决课堂失衡时,消除了学习方法之间的性能差异。我们的发现暗示,应始终明确识别学习方法及其对软件缺陷预订预测的影响。本文最后讨论了我们的研究和实践结果的潜在后果。
translated by 谷歌翻译
特征选择是数据科学流水线的重要步骤,以减少与大型数据集相关的复杂性。虽然对本主题的研究侧重于优化预测性能,但很少研究在特征选择过程的上下文中调查稳定性。在这项研究中,我们介绍了重复的弹性网技术(租金)进行特色选择。租金使用具有弹性净正常化的广义线性模型的集合,每个训练都培训了训练数据的不同子集。该特征选择基于三个标准评估所有基本模型的重量分布。这一事实导致选择具有高稳定性的特征,从而提高最终模型的稳健性。此外,与已建立的特征选择器不同,租金提供了有关在训练期间难以预测的数据中难以预测的对象的模型解释的有价值信息。在我们的实验中,我们在八个多变量数据集中对六个已建立的特征选择器进行基准测试,用于二进制分类和回归。在实验比较中,租金在预测性能和稳定之间展示了均衡的权衡。最后,我们强调了租金的额外解释价值与医疗保健数据集的探索性后HOC分析。
translated by 谷歌翻译
越来越多的工作已经认识到利用机器学习(ML)进步的重要性,以满足提取访问控制属性,策略挖掘,策略验证,访问决策等有效自动化的需求。在这项工作中,我们调查和总结了各种ML解决不同访问控制问题的方法。我们提出了ML模型在访问控制域中应用的新分类学。我们重点介绍当前的局限性和公开挑战,例如缺乏公共现实世界数据集,基于ML的访问控制系统的管理,了解黑盒ML模型的决策等,并列举未来的研究方向。
translated by 谷歌翻译