Data Set for Predicting the Performance of ATL Model Transformations
收藏资源简介:
Model transformation languages are special-purpose languages, which are designed to define transformations as comfortably as possible, i.e., often in a declarative way. With the increasing use of transformations in various domains, the complexity and size of input models are also increasing. However, developers often lack suitable models for performance testing. We have therefore conducted experiments in which we predict the performance of model transformations based on characteristics of input models using machine learning approaches. This dataset contains our raw and processed input data, the scripts necessary to repeat our experiments, and the results we obtained. Our input data consists of the time measurements for six different transformations defined in the Atlas Transformation Language (ATL), as well as the collected characteristics of the real-world input models that were transformed. We provide the script that implements our experiments. We predict the execution time of ATL transformations using the machine learning approaches linear regression, random forests and support vector regression using a radial basis function kernel. We also investigate different sets of characteristics of input models as input for the machine learning approaches. These are described in detail in the provided documentation.pdf. The results of the experiments are provided as raw data in individual cvs files. Additionally, we calculated the mean absolute percentage error in % and the 95th percentile of the absolute percentage error in % for each experiment and provide these results. Furthermore, we provide our Eclipse plugin, which collects the characteristics for a set of given models, the Java projects used to measure the execution time of the transformations, and other supporting scripts, e.g. for the analysis of the results. A short introduction with a quick start guide can be found in README.md and a detailed documentation in documentaion.pdf.
模型转换语言(Model Transformation Language)是一类专用编程语言,其设计初衷是尽可能便捷地定义模型转换任务,通常采用声明式范式实现。随着模型转换在各领域的应用愈发广泛,输入模型的复杂度与规模也随之攀升。然而,开发者往往缺乏适用于性能测试的合规模型集。为此,我们开展了一系列实验,基于机器学习方法,通过输入模型的特征参数预测模型转换的执行性能。本数据集包含我们的原始与预处理输入数据、复现实验所需的全部脚本,以及实验所得的最终结果。我们的输入数据涵盖了基于Atlas转换语言(Atlas Transformation Language,ATL)定义的6种不同转换任务的耗时测量结果,以及所采集的真实世界待转换输入模型的各类特征参数。我们同时提供了实现本实验的完整脚本。我们采用线性回归(linear regression)、随机森林(random forests)以及搭载径向基函数核(radial basis function kernel)的支持向量回归(support vector regression)这三类机器学习方法,对ATL转换的执行耗时进行预测。我们还针对不同的输入模型特征子集,测试其作为机器学习模型输入的应用效果。相关细节已在附带的documentation.pdf文件中详细阐述。实验的原始结果以单独的csv文件形式提供。此外,我们为每一项实验计算了平均绝对百分比误差(以百分比为单位)与绝对百分比误差的95分位数(以百分比为单位),并将该类结果一并提供。此外,我们还提供了自研的Eclipse插件,该插件可针对指定的模型集采集其特征参数;同时附带了用于测量转换任务执行耗时的Java项目,以及用于结果分析等用途的各类辅助脚本。简短的项目介绍与快速入门指南可在README.md文件中查阅,详细文档则包含在documentation.pdf文件内。



