中文

从何处学习?在可配置系统中利用BEETLE迁移知识

软件工程 2020-03-27 v3

摘要

随着软件系统复杂性的增长以及可能配置空间呈指数级增加,寻找软件系统的近最优配置变得具有挑战性。近期的方法通过基于一组配置样本学习性能模型来应对这一挑战。然而,收集足够的配置样本可能非常昂贵,因为每一个这样的样本都需要使用复杂的测试套件对整套系统进行配置、编译和执行。当在新数据上学习过于昂贵时,可以使用迁移学习(Transfer Learning)将旧的经验“迁移”到新情境中。传统的迁移学习存在若干挑战,具体而言:(a) 从过量数据学习耗费过量时间,以及 (b) 由于从劣质源学习,通过迁移构建的模型性能可能退化。为解决这些问题,我们提出了一种名为BEETLE的新型迁移学习框架,它是一种基于“bellwether”的迁移学习器,专注于从旧数据中识别并学习最相关的源。本文使用基于五个软件系统(一个视频编码器、一个SAT求解器、一个SQL数据库、一个高性能C编译器以及一个流式数据分析工具)的57个不同软件配置问题对BEETLE进行了评估。在每种情况下,BEETLE找到的配置都与其他最先进(state-of-the-art)迁移学习器找到的相当或更好,同时仅需要那些其他方法所需测量值的七分之一(17\frac{1}{7})。基于这些结果,我们认为BEETLE是软件最优配置的新标杆。

关键词

引用

@article{arxiv.1911.01817,
  title  = {Whence to Learn? Transferring Knowledge in Configurable Systems using BEETLE},
  author = {Rahul Krishna and Vivek Nair and Pooyan Jamshidi and Tim Menzies},
  journal= {arXiv preprint arXiv:1911.01817},
  year   = {2020}
}

备注

Accepted, to appear in IEEE TSE. arXiv admin note: text overlap with arXiv:1803.03900