论文部分内容阅读
软件老化是指在系统持久和连续地运行过程中,由于老化相关的错误的累积而导致的资源持续消耗、系统性能持续下降或系统错误数持续增加,并最终导致系统崩溃的现象。安卓移动终端已深入到人们生活的各个方面,而安卓系统在长时间运行中容易产生启动时间增长和系统崩溃等问题,引发这些问题的一个重要原因是安卓系统软件老化,但安卓系统软件老化预测研究较少。研究安卓系统软件老化有助于提升系统的稳定性和用户体验,因此,本文基于页面错误数(Page Fault,PF)和启动时间(Launch Time,LT)老化指标,对比分析基于不同机器学习算法的安卓系统软件老化预测模型的性能,具体工作如下:1)在安卓系统老化数据预处理和特征提取阶段,本文更加全面地考虑了网络、虚拟内存和负载等方面的系统性能指标,并进行数据采集;本文基于K-means算法剔除应用启动等情况下由于系统性能指标突变而产生的离异点;除了常用的LT老化指标,本文还引入了PF指标作为安卓系统软件老化指标,并分别提取了与老化指标具有相关性的系统性能指标作为特征数据。2)在老化模型训练和预测阶段,首先,本文基于LT老化指标进行数据标注,采用决策树、支持向量机和深度信念网络算法构建安卓系统软件老化预测模型。实验结果表明,基于决策树算法和基于支持向量机算法的模型的预测性能较好,当标注的健康状态、亚健康状态和老化状态的数据均达到5000量级时,基于深度信念网络算法的模型也具有较好的预测性能。其次,本文基于PF老化指标进行数据标注,采用三种机器学习算法构建安卓系统软件老化预测模型。实验结果表明,基于PF老化指标标注的模型与基于LT老化指标标注的模型具有相当的安卓系统软件老化预测性能,这表明PF可作为安卓系统软件老化预测的备选指标之一。此外,本文基于LT和PF相结合的数据标注方式,采用三种机器学习算法构建安卓系统软件老化预测模型。实验结果表明,当分别选取标定老化状态较早的点标注数据时,基于支持向量机算法和基于深度信念网络算法的模型的方差比基于单个老化指标标注的模型的方差分别降低了33%和64%左右,即模型的稳定性得到一定提升,而基于决策树算法的模型的稳定性保持不变。本文开展的安卓系统软件老化预测方法的研究,在离异点处理、机器学习算法选取和老化指标选取等方面为安卓系统老化研究提供了新的思路和参考。