Page 254 - 《软件学报》2021年第10期
P. 254

3226                                 Journal of Software  软件学报 Vol.32, No.10, October 2021

                        本文采取了一系列现有的成熟回归模型,同时覆盖了线性模型和非线性模型.最终,根据训练效果的
                        好坏,该环节将会产生一个预测模型;
                    (4)  预测.在得到预测模型后,针对一个新的会话及其对应的查询,该环节生成相关特征,然后利用上一环
                        节训练得到的预测模型对续航时间进行预测.





















                                            Fig.2    An overview of the prediction model
                                                   图 2   整体工作流概览

                 4.2   机器学习模型
                    本文选用了一组成熟的、具有代表性的机器学习模型,用以构建续航时间预测模型.具体包含以下 4 种模
                 型:线性回归(linear regression)、随机森林回归(random forest regression,简称 RF) [20] 、梯度提升树回归(gradient
                 boosting regression  tree,简称 GBRT) [21] 和 XGBoost(XGB) [22] .上述模型(本文采用 XGBoost 库 [23] 实现 XGBoost
                 模型,使用 Scikit-Learn 库 [24] 实现线性回归、随机森林回归和梯度提升树回归)同时囊括了线性模型和非线性模
                 型,因此可以较好地捕捉特征与续航时间之间的线性关联和非线性关联.
                 4.3   特   征
                    特征是本文提出的预测模型的关键.本文按照以下 3 个类别划分特征,具体如下.
                    (1)  查询时特征:查询时特征表示在用户发起查询时刻的相关信息所构成的特征.在这一部分特征中,最
                        容易想到的特征是当前电量与目标电量之间的差值,即 b(t q )b n .显然,该差值越大,电池的续航时间就
                        会倾向于更长.除去该特征外,在 t q 时刻的其他部分信息也可能与续航时间存在关联.例如,发起查询
                        时的时间可能与续航时间之间存在关联,因为用户在一天当中不同时刻的使用强度是不尽相同的;
                    (2)  会话特征:会话特征表示从当前会话开始时刻 t s 直至查询时刻 t q 这段时间范围内相关信息产生的特
                        征.这一部分信息反映了在当前会话内已经产生的使用行为和系统状态,因此与电池在未来的放电速
                        率会有比较明显的关联.例如,如前文所述,电池在查询前的耗电速率和在查询后的耗电速率呈现比
                        较明确的正相关性;
                    (3)  历史特征:查询时特征和会话特征的信息全部局限于当前会话内,但是除此之外,用户在过去(即当前
                        会话之前的会话)的使用习惯仍然有可能帮助续航时间的预测.例如,如果某一用户过去会话中的耗
                        电速率均较高,则说明该用户可能是一个重度使用用户,因此可以推测用户在当前会话中的使用也会
                        较为重度,耗电速率也会比较高.因此,本文将用户在过去的信息产生的特征作为第 3 组特征,称作历
                        史特征.
                    上述介绍了本文对特征的 3 种基本分类.具体每类特征将会在后文详细给出介绍.
   249   250   251   252   253   254   255   256   257   258   259