基于支持向量机的数据预测方法和设备转让专利

申请号 : CN200910135918.6

文献号 : CN101541030B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李恒超庄艳丽

申请人 : 华为技术有限公司

摘要 :

本发明提供了一种基于支持向量机的数据预测方法和设备。该方法包括:读取与第一时期(历史时期)相关联的多个第一数据(历史数据);预测与第二时期(预测时期)中包含的第二子时期相对应的第二数据(预测数据)。使用所读取的多个第一数据的至少一个子集作为支持向量机的输入变量。第二时期在时间上晚于第一时期。本发明实施例对话务量的有效预测给运营商直接或间接地带来可观的经济效益。

权利要求 :

1.一种基于支持向量机的数据预测方法,其特征在于,包括:读取与第一时期相关联的多个第一数据;以及

预测与第二时期中包含的第二子时期相对应的第二数据,其中使用所读取的所述多个第一数据的至少一个子集作为支持向量机的输入变量,其中,所述第二时期在时间上晚于所述第一时期,

其中,所述读取与第一时期相关联的多个第一数据还包括:调整与所述第一时期中包含的特定子时期相对应的第一数据,以使得所述第一时期中包含的所述特定子时期与所述第二时期中的相应子时期对齐。

2.如权利要求1所述的数据预测方法,其特征在于,所述第一时期包含多个第一子时期,所述多个第一数据一一对应于所述多个第一子时期。

3.如权利要求1或2所述的数据预测方法,其特征在于,还包括:使用所述多个第一数据的第一子集作为支持向量机的训练输入,使用所述多个第一数据的第二子集作为支持向量机的训练输出,以确定所述支持向量机的参数。

4.如权利要求3所述的数据预测方法,其特征在于,所述确定所述支持向量机的参数还包括:优化所述支持向量机的参数。

5.如权利要求4所述的数据预测方法,其特征在于,所述优化所述支持向量机的参数包括:利用贪心算法优化所述支持向量机的参数。

6.如权利要求1或2所述的数据预测方法,其特征在于,所述预测与第二时期中包含的第二子时期相对应的第二数据包括:构造支持向量机;

使用所述多个第一数据的所述至少一个子集作为所述支持向量机的输入变量,以获得支持向量机的预测输出,作为所述第二数据;以及保存所述第二数据。

7.如权利要求1或2所述的数据预测方法,其特征在于,所述第一时期是第一年,所述第二时期是第二年,所述第二子时期是所述第二年的第t天,所述多个第一数据的至少一个子集对应于所述第一年的第t-n+1天至第t天,其中t、n是正整数。

8.如权利要求3所述的数据预测方法,其特征在于,所述第一时期包括第一年和紧接在所述第一年之后的第二年,所述多个第一数据的第一子集对应于所述第一年的第t-n+1天至第t天,所述多个第一数据的第二子集对应于所述第二年的第t天,其中t、n是正整数。

9.如权利要求1或2所述的数据预测方法,其特征在于,所述第一时期是连续m个周,所述第二时期中包含的第二子时期是所述第一时期之后的第一天,所述多个第一数据的至少一个子集对应于所述m个周中每一周的第一天以及所述第一时期的最后k天,其中,m、k是正整数。

10.如权利要求3所述的数据预测方法,其特征在于,所述第一时期包括连续m个周和紧接在该m个周之后的第一天,所述多个第一数据的第一子集对应于所述m个周中每一周的第一天以及所述第一时期的最后k天,所述多个第一数据的第二子集对应于所述第一天,其中,m、k是正整数。

11.如权利要求1所述的数据预测方法,其特征在于,所述第一数据和第二数据是以下类型中的至少一个:通信话务量、短信量、彩信量、视频流量、用户数目。

12.一种基于支持向量机的数据预测设备,其特征在于,包括:读取装置,读取与第一时期相关联的多个第一数据;以及

预测装置,预测与第二时期中包含的第二子时期相对应的第二数据,其中使用由所述读取装置读取的所述多个第一数据的至少一个子集作为支持向量机的输入变量,其中,所述第二时期在时间上晚于所述第一时期,其中,所述读取装置还包括:数据预处理模块,调整与所述第一时期中包含的特定子时期相对应的第一数据,以使得所述第一时期中包含的所述特定子时期与所述第二时期中的相应子时期对齐。

13.如权利要求12所述的数据预测设备,其特征在于,所述第一时期包含多个第一子时期,所述多个第一数据一一对应于所述多个第一子时期。

14.如权利要求12或13所述的数据预测设备,其特征在于,还包括:训练装置,使用所述多个第一数据的第一子集作为支持向量机的训练输入,使用所述多个第一数据的第二子集作为支持向量机的训练输出,以确定所述支持向量机的参数。

15.如权利要求14所述的数据预测设备,其特征在于,所述训练装置还包括:优化模块,优化所述支持向量机的参数。

16.如权利要求15所述的数据预测设备,其特征在于,所述优化模块利用贪心算法优化所述支持向量机的参数。

17.如权利要求12或13所述的数据预测设备,其特征在于,所述预测装置包括:构造模块,构造支持向量机;

预测模块,使用所述多个第一数据的所述至少一个子集作为所述支持向量机的输入变量,以获得支持向量机的预测输出,作为所述第二数据;以及保存模块,保存所述第二数据。

说明书 :

基于支持向量机的数据预测方法和设备

技术领域

[0001] 本发明涉及数据预测方法和设备,更具体地,涉及基于支持向量机的数据预测方法和设备。

背景技术

[0002] 近年来,无线通信业务在全世界都得到了飞速的发展,用户规模不断扩大,许多新业务也相继出现。但话务量的日益剧增(呈明显上升趋势),及用户对无线通信质量要求的不断提高,都对无线通信网络提出了新的要求,同时给移动通信运营商在网络规划、建设及调整等方面增加了难度。尤其是在特殊节假日(如春节、中秋、五一、国庆、元旦、复活节、感恩节、圣纪日、新年等)或发生特殊事件(如汶川大地震、上海车牌拍卖活动等),无线通信突发话务量会比平时突增,极易造成交换系统过载,出现电话拥塞,话音接通率下降、话务掉话比上升,甚至出现交换机大面积瘫痪的现象,给移动通信运营商和移动用户都造成不可弥补的损失,影响到用户对运营商的信任度。因此,话务预测对于无线通信网络的运营管理具有重大的意义。但与无线通信话务量迅速增长不相适应的是,话务预测技术发展并不完善,对移动通信运营商的网络建设及调整缺乏有效性指导,影响了企业效益。同样地,对于其他与时间密切相关的数据,例如短信量、视频流量、用户数以及其他数据流量等,有效准确地预测这些数据对于运营管理具有重要意义。
[0003] 以话务预测为例,目前的话务预测方法一般可分为定性预测和定量预测。定性话务预测是指通过调研,了解实际情况,凭自己的实践经验和理论、业务水平,对发展前景的性质、方向和程度做出判断进行预测的方法。定量话务预测是指根据准确、及时、系统、全面的调查统计资料和市场经济信息,运用统计方法和数学模型,对未来发展的规模、水平、速度和比例关系的测定。定量预测可以从长期和短期的角度来考虑实施话务量的预测。目前,通信话务量定量预测方法基本上还仅仅限于传统基于时间序列的方法,如回归算法和季节模型等。
[0004] 为了预测话务量,已经提出了季节模型。基于季节变动的话务量预测模型认为,时间序列数据具有三个特性:趋势性、季节性、随机性。趋势分量指话务量随着时间变化朝着一定的方向呈现出持续稳定地上升、下降或平稳的趋势。季节指数是指话务量受季节性的相应影响,按照某固定周期呈现出周期变动。若历史数据满足一年,使用此方法,可预测一年及以上的话务量。若历史数据不满足一年,也可以预测未来对应时间段的数据。
[0005] 图1是示出话务量季节模型预测方法的流程图2000。如图1所示,在该预测方法的S2005,获取预测输入信息,例如时序形式的历史数据,或者还包括其他辅助信息。假设观察到的历史话务量数据为{yi|i=1,…,n},对应的时序为{ti|i=1,…,n},其中n为正整数。
[0006] 在S2010,根据输入的历史数据来计算历史数据趋势量。例如,该计算可选择一元线性回归来拟合历史话务量数据的趋势量,可得如下关系式
[0007] yi=a+bti+ε (1)
[0008] 其中ε为误差,可以认为与t无关,且服从标准正态分布。通过最小二乘法估计a、b的值,可最终得到趋势量的关系式为
[0009]
[0010] 以此,利用上式可以获得历史数据的趋势量值
[0011] 在S2015,计算历史数据季节指数。季节指数的实质就是某天(周、月)的实际话务量与当天(周、月)趋势分量估计值的比值,即为
[0012]
[0013] 在S2020,针对感兴趣的预测期,计算该预测期内的趋势量。可根据上式(2)来计算,只是时序不同而已。将{tj|j>n}代入(2)式,即可获得预测期内的趋势量值yj。不过,在必要时,应考虑将历史数据颗粒度(时序的单位)与预测数据起始序号相对应。
[0014] 如果存在多个历史同期对应的季节指数,则还需要在S2025,对季节指数进行规整化处理。例如,采用均值或加权处理的策略,使其调整到与预测期相对应的一个时间周期内。
[0015] 得到季节指数(或规整化之后的季节指数)和预测期内的趋势量之后,在S2030,将季节指数与预测期内趋势量相乘:
[0016]
[0017] 其中yjSM为季节模型预测值,为预测期内的趋势量,kjSF为规整化后对应的季节指数。这样,在S2035,获得最终的预测值。此后,方法2000结束。
[0018] 尽管上述方法比较成熟且简单可行,但很难获得好的预测效果。季节模型预测方法尚存在下列缺点:
[0019] (1)季节模型没有考虑特殊节假日(如中国的春节、中秋,西方的复活节、感恩节,以及伊斯兰的圣纪日与开斋日等)对话务量的影响;
[0020] (2)尽管季节模型考虑了无线通信话务量数据具有趋势性、季节性以及随机性,但对小颗粒度(如天)的情况,没有考虑无线通信话务量数据还具有明显的周期性;
[0021] (3)无线通信话务量的时间序列具有复杂的强非线性特性,受到诸多因素的影响,利用传统的预测技术很难揭示其内在规律,且泛化能力差。
[0022] 上述缺点造成季节模型在预测准确度上存在一定局限性。考虑到通信话务量的时间序列具有复杂的强非线性特性,利用传统预测方法很难揭示其内在规律,在此背景下开展诸如通信话务量等数据的智能预测方法研究是非常有意义的。
[0023] 由统计学习理论发展而来的支持向量机(Support Vector Machine,SVM)是一种基于核的机器学习方法,通过数据空间与特征空间的非线性映射,可有效地将数据空间中的非线性问题转化为特征空间中的线性问题,进而提高非线性处理能力;其次,基于结构风险最小化的优化准则使其具有更好的泛化性能;另外,学习过程自动确定网络结构,且具有稀疏解的优点,这都使得支持向量机对于解决小样本、非线性以及高维问题具有很大的优越性。上述特点也是支持向量机优于其它智能方法如神经网络之处。故此,拟从可行性、合理性、实用性等角度出发,提出并设计了基于支持向量机的无线通信话务量中长期智能预测新算法,用以为网络扩容提供科学参考依据,进而灵活、主动地应对话务量的增长,有效地进行网络建设规划,保证网络服务的质量。
[0024] 支持向量机是20世纪90年代初Vapnik等基于统计学习理论提出的一种新的机器学习方法,其具有泛化性能好、全局最优及稀疏解等特点。其主要思想是基于Mercer核展开定理,通过非线性映射,把样本空间映射到一个高维乃至无穷维的特征空间,在特征空间中引入不敏感误差函数,定义最优线性回归超平面,把寻找最优线性回归超平面的算法归结为求解一个凸约束条件下的一个凸规划问题。
[0025] 下面描述一种常用支持向量机的结构。设给定样本集为{(x1,y1),…,{xl,yl)},且 l为样本点个数,则支持矢量机是通过内积函数定义的非线性变换将输入空间变换到高维特征空间,在高维特征空间利用线性函数
[0026] f(x)=ω·φ(x)+b (5)
[0027] 实现数据的拟合问题,其中φ(x)为特征空间,ω与b分别为权值系数及偏差。根据结构风险最小化原则,权值系数ω和偏差b可以通过最小化如下目标函数得到[0028]
[0029] 其中λ为泛化常数,代价函数|·|ε为Vapnikε-不敏感损失函数(如图2所示),定义为
[0030]
[0031] 通过引入两组非负的松弛变量{ξi}i=1l和{ξi*}i=1l,式(6)的最优化问题可转化为约束最小化的形式
[0032]
[0033] 且需满足如下不等式约束条件
[0034]
[0035] 从而,可以定义Lagrange函数
[0036]
[0037]
[0038] 其中,ηi,ηi*,αi,αi*是Lagrange乘子,且满足非负限制条件[0039] 和
[0040] 式(10)描述的优化问题为回归的原问题,通常转换成其对偶形式下进行求解。根*据Karush-Kuhn-Tucker(KKT)条件,对Lagrange函数L分别求ω、b、ξi及ξi 的偏导有[0041]
[0042]
[0043]
[0044]
[0045] 把式(12)、(13)、(14)与(15)代入(10)式可得到回归对偶问题的优化目标函数[0046]
[0047]
[0048] 且满足约束条件
[0049]
[0050] 最大化(16)式有
[0051]
[0052] 根据Mercer定理定义的内积核
[0053] K(xi,x)=φ(xi)·φ(x) (19)
[0054] 可得支持向量机拟合函数为
[0055]
[0056] 图2示出了支持向量机的预测模型结构图。
[0057] 目前,常用的核函数主要有线性(Linear)核、多项式(Polynomial)核以及径向基(Radial basis function)核等等。其中,三种核函数的具体表达式如下
[0058] ①线性核函数
[0059] K(x,xi)=xxi (21)
[0060] ②多项式核函数
[0061] K(x,xi)=(x·xi+1)d (22)
[0062] ③径向基核函数
[0063]
[0064] 此外,目前还提出了多种其他形式的支持向量机,如最小二乘支持向量机等。
[0065] 诸如话务量时间序列等的数据具有强非线性特性,可认为是一复杂系统的具体体现,其值受到诸多因素的影响,譬如:整个国家无线通信所处的发展阶段(是处于启动期、成长期、成熟期还是饱和期)、具体预测对象所在地区及其相应的各因素(如经济发展水平、人口多少、风俗等)、市场因素、节假日、特殊事件、季节(如春、夏、秋、冬)等。像线性回归、指数回归的传统预测方法均只以时间变量t作为输入/自变量,没有考虑其他诸因素的影响,故只能描述话务量时间序列演化的整体趋势,而不能刻画局部细节部分的变化。季节模型预测法在线性回归的基础上,通过考虑各点上季节因子的变化,能够取得比线性回归、指数回归好的预测效果,也成为目前普遍采用的话务量预测算法,不过仍然难以获得比较理想的预测效果。支持向量机作为一种计算智能算法非常适合解决这类回归问题。

发明内容

[0066] 因此,本发明的一个目的是将支持向量机应用于包括通信话务量的数据的中长期预测。
[0067] 本发明的另一目的是消除特殊节假日及话务量的短周期性(即星期数)给预测带来的影响。
[0068] 本发明的另一目的是充分、综合考虑无线话务量数据的趋势性、季节性等来设计支持向量机的输入模型。
[0069] 本发明的另一目的是提高预测方法的泛化能力及预测精度,更好地刻画无线通信话务量时间序列的强非线性特性。
[0070] 为了实现上述以及其他目的,本发明实施例提供了一种基于支持向量机的数据预测方法,包括:读取与第一时期(历史时期)相关联的多个第一数据(历史数据);预测与第二时期(预测时期)中包含的第二子时期相对应的第二数据(预测数据)。使用所读取的多个第一数据的至少一个子集作为支持向量机的输入变量。第二时期在时间上晚于第一时期。
[0071] 为了实现上述以及其他目的,本发明实施例还提供了一种读取装置,读取与第一时期相关联的多个第一数据;以及预测装置,预测与第二时期中包含的第二子时期相对应的第二数据。使用由读取装置读取的多个第一数据的至少一个子集作为支持向量机的输入变量。第二时期在时间上晚于第一时期。
[0072] 本发明实施例的技术方案充分考虑了通信话务量等数据的时间序列的趋势性、季节性及周期性等因素,并结合有效预测技术-支持向量机SVM,对通信话务量的未来值进行有效预测,进而指导运营商对现网的管理和规划,避免系统过载导致交换机大面积瘫痪,给移动运营商和移动用户造成不可弥补的损失,可提高用户对运营商的信任度;还可提高网络的利用率。总之,该技术方案对话务量的有效预测给运营商直接或间接地带来可观的经济效益。

附图说明

[0073] 根据结合附图的以下描述,将更充分地理解本发明的其他优点、特征和细节。
[0074] 图1是示出季节模型预测方法的流程图。
[0075] 图2示出了支持向量机的预测模型结构图。
[0076] 图3是示出根据本发明一个实施例的数据预测方法的流程图。
[0077] 图4是示出预测过程的详细流程的一个例子的图。
[0078] 图5示出了构建基于支持向量机的数据长期预测模型的一个例子的示意图。
[0079] 图6示出了构建基于支持向量机的数据短期预测模型的一个例子的示意图。
[0080] 图7是示出根据本发明实施例的数据预测设备的框图。
[0081] 图8是示出根据本发明另一实施例的数据预测设备的框图。

具体实施方式

[0082] 下面参照附图描述本发明的实施例。应当理解,在此描述的本发明的各个实施例仅仅是为了更好地解释本发明的原理和概念,而不是要限制本发明。在阅读这样的描述之后,本领域技术人员很容易构造其他修改或替换,这样的修改或替换应被理解为落入本发明的范围中。
[0083] 图3是示出根据本发明一个实施例的数据预测方法的流程图100。在S105,读取与历史时期(“第一时期”)相关联的多个历史数据(“第一数据”)。历史时期的长度单位(颗粒度)可以是月、周、天等,也可以小时、分钟等。历史时期可包含多个历史子时期,例如,如果历史时期的长度为年,历史子时期的长度为周,则可设定一年包含52周;如果历史子时期的长度为天,则可设定一年包含365天。历史数据是在历史时期中已经测得的数据,例如话务量、短信量、视频流量、用户数目等。历史数据可一一对应于多个历史子时期,例如可以是一年中每天的话务量。例如,历史数据的形式可以是{yi|i=1,…,n},对应的时序为{ti|i=1,…,n},其中n为正整数。如果时序的单位是天,则ti表示第1天至第n天中的某一天,而yi表示在该第1天至第n天中已经测得的每一天的相应历史数据(如话务量、短信量、视频流量、用户数等)。用户可选择输入的各个数据对应的日期(软件按照日期计算长度读取用户输入到Excel文件中的话务量数据)。
[0084] 在读取了历史数据之后,在S110,预测与预测时期(“第二时期”)中包含的子时期相对应的预测数据(“第二数据”)。预测时期在历史时期之后,长度单位可以与历史时期相同,也可以不同。只要预测时期的起始时刻等于或晚于历史时期的结束时刻即可。同样,历史时期的子时期的长度单位也可以根据实际需要而不同。在S110中,支持向量机使用在S105中读取的多个历史数据的至少一个子集作为输入变量。支持向量机的输出对应于预测数据。
[0085] 图4是示出预测过程S110的详细流程的一个例子的图。如图3所示,在S1102,按照将在下文详细描述的模型设计,构造支持向量机的预测结构体。可按照上面描述的形式来构造支持向量机。但本领域技术人员明白,现有或未来发展的其他形式的支持向量机同样可以应用于本发明,而并未脱离本发明的原理和思想,因而也应被包括在本发明的范围内。支持向量机的参数(如支持矢量和权值系数)可以是预先确定的,或按照也将在下文详细描述的训练方法来训练。可根据实际情况,凭实践经验和理论预先确定支持向量机的各种参数。也可以采用已经过训练的支持向量机。
[0086] 然后,在S1104,调用支持向量机的预测函数(拟合函数f(x)),使用符合模型设计的历史数据子集作为支持向量机的输入变量,获得支持向量机的预测输出。该预测输出即为最终想要的预测结果。然后在S1106,保存该预测数据,从而完成S110。
[0087] 应注意,预测过程的详细流程不限于上述实例,可以另外添加步骤,或者变更、删除或组合其中的各个步骤。
[0088] 可选地,在S105中,在读取了历史数据之后,可以对历史数据进行预处理,调整与历史时期中包含的特定子时期相对应的历史数据(“第一数据”)。这是为了在涉及某些特定日期(如特殊节假日、周末等)的情况下,消除特殊节假日或数据的周期性给数据预测带来的影响。
[0089] 以话务量为例,众所周知,特殊节假日内的话务量有别于普通日期内的话务量,出现明显的增加或减少的情况。但有些特殊节假日如中国的春节、中秋,西方的复活节、感恩节,伊斯兰的圣纪日、开斋节等在相邻年间(阳历)所处的位置不一定是一一对应的。传统的预测方法(如季节模型)不考虑这种不对应性,因而会降低预测的精度。相反,本发明实施例可考虑这些特殊节假日,对相关的历史数据进行相应调整,从而可应用于中国、西方、伊斯兰等不同情形。例如,可以直接通过对历史数据中特殊节假日数据的调整以实现与预测期内的特殊节假日对齐,从而达到消除特殊节假日对话务量预测的影响。其中,由于节假日影响的长短不同,其对应的话务量数据调整的长度也不同。
[0090] 在现有技术的季节模型中同样没有考虑(以天为颗粒度)话务量的周期性,即以7天为一个周期,且工作日与周末的话务量具有不同的特性。而相邻年同一天的星期数(即星期一、星期二、...、星期天)往往也是不相同的,这将导致季节模型的预测结果出现错位。在严重的情况下,上一年的星期一与星期二会对应到下一年的周末,而上一年的周末则对应于下一年的周四与周五,从而导致一个星期内出现超过一半(四天)的错位。既然周末的话务量有别于工作日的话务量,这将会严重影响预测的精度。
[0091] 换句话说,在此数据预处理过程中,除了可以调整特殊节假日外,还可调整相邻年间星期数的对应关系。
[0092] 上述调整/对齐有可能会导致局部点的缺失。在此情况下,为了保证处理完以后序列的周期性不变,可进行补齐处理。例如,可采用牛顿插值来补齐缺失的局部点的数据。例如,在星期一的数据缺失的情况下,可对前后几周的星期一话务量值进行插值,用插值结果替代原星期一的数据。当然也可以采用其他方式来补齐。星期二到星期日的情况也可采用同样的方法。
[0093] 举例来说,2009年的中国春节是1月26日(星期一),而2010年的中国春节是2月14日。在数据预处理过程中,可用2009年1月26日的话务量数据替代2009年2月14日的话务量数据。对于缺失的2009年1月26日的话务量,可使用前后四个星期一(2009年1月12日、1月19日、2月2日、2月9日)的话务量数据的插值来补齐。应注意,这里的例子不是限制性的,可以采用其他方法来补齐。
[0094] 下面以话务量预测为例,举例说明支持向量机的模型设计。
[0095] 设支持向量机的拟合/逼近函数为f(x),其刻画了Rn→R的映射关系,其输入变n量x∈R 为一n维矢量,目标值y∈R为一标量。支持向量机具有任意逼近的非线性映射能力,且对应的预测器网络结构由算法自动最优化生成。针对具体的实际问题,应进行支持向量机预测算法的相应的模型设计。所谓模型设计,也就是确定支持向量机输入变量x所包含的各个分量(即影响目标输出的各个因素)及对应的目标输出y。对于未来某一天的话务量预测而言,我们可明确知道模型的目标输出就是要预测当天对应的话务量值。而模型输入的确定则相对比较复杂,需要综合考虑各因素,但又不脱离实际、切实可行。
[0096] 本发明实施例从实际话务量数据的上述特性出发,提出并设计了可行的、合理的、实用的通信话务量支持向量机长期预测模型。通过对实际话务量的大量分析,我们可以得到话务量具有如下特性:无论是以天为时间颗粒度,还是以周或是以月为时间颗粒度的话务量数据,在不考虑未知因素的影响情况下,每年的数据之间在整体走势、特殊节假日(错位的节假日调整后)、局部变化(季节性)都具有相似性和可比性,具有相同的发展规律,但具有不同的动态变化范围,且随着时间的演化,变化越剧烈。同时借鉴季节模型的思想,本发明实施例提出的话务量支持向量机长期预测的一种模型如下,即,按照以下模型确定要作为支持向量机的输入变量的历史数据子集:
[0097] 在读取前一年的话务量历史数据(以及在必要情况下的数据预处理)之后,对于要预测话务量的下一年中的那一天(以下称为“待预测天”),首先,选择待预测天在前一年中对应天的话务量,作为n维输入变量x的一个元素;此外,为体现话务量的变化趋势,应考虑选择待预测天的连续前n-1天的话务量数据作为输入变量x的其余元素。但这n-1的这些话务量目前是未知的。考虑相邻两年话务量特性和走势的相似性,为进行长期预测,我们选择前一年这n-1天对应的话务量作为输入变量x的其余元素。而目标输出则是待预测天的话务量数据(即预测数据)。需要注意的是,本发明说明书中的“年”不必代表自然年,而表示时期的长度是一年,例如可以是从2009年2月1日到2010年1月31日这一时期。从S曲线来宏观考虑利用相邻年的数据进行上述长期建模思想也是合理。
[0098] 图5示出了构建基于支持向量机的数据长期预测模型的一个例子的示意图。在该例子中描述了在n=5的情况下的预测模型。
[0099] 需要注意的是,基于支持向量机的数据预测模型不限于上述例子。例如,可选择待预测天在前一年中对应天的前后几天(而不只是该对应天的前几天)的话务量数据作为输入变量。可根据不同需要来修改上述预测模型。
[0100] 为了更准确地进行预测,需对支持向量机进行训练。训练过程即为通过训练数据确定支持向量机的各种参数,例如支持矢量及对应的权值系数。而预测过程则是利用训练过程确定的支持向量机预测未来某段时间的通信话务量数据。支持向量机的训练可以在S110之前进行,也可以被包含在S110中。训练阶段可按照与上述预测阶段相同的规则建立模型(即支持向量机的输入与输出)。具体地,在训练过程中,同样使用历史数据的一个子集(“第一子集”)作为训练输入。只不过此时支持向量机的训练输出是已知的,即,使用历史数据的另一子集(“第二子集”)作为训练输出。由此确定支持向量机的各种参数(如支持矢量及对应的权值系数)。当然,如果训练数据中涉及特殊节假日等特定时期,也可以与上面的数据预处理过程一样,对训练数据进行预处理。
[0101] 由上可见,不同于季节模型,话务量支持向量机的预测模型最好能采用相邻连续两个历史时期(例如,连续两年)中有一段对应的数据用作训练。在此情况下,需要的历史数据量应大于一年。随着话务量的不断增加,以及运营商为预测需要而注意对话务量的保存,经过一定时间的累积,这一要求是完全可以满足的。
[0102] 上述长期预测模型不仅适用于以天为时间颗粒度的情况,还可推广到以周、月为时间颗粒度的话务量的预测。
[0103] 另外,本发明实施例的基于支持向量机的数据预测方法也可以用于诸如话务量等的数据的短期预测。
[0104] 从通信话务量的周期特性出发,即对于以天为时间颗粒度的话务量数据,不考虑特殊节假日(如春节、五一、十一等)的情况,展现以七天为周期的周期性。工作日与周末的话务量具有不同的特性。利用支持向量机还可设计通信话务量的短期预测模型。在该短期预测模型中,不考虑特殊节假日话务量的预测,只针对普通日期的话务量数据进行预测。而在可选的训练过程中,对于该模型训练数据中包含特殊节假日的情况,可类似于长期预测的情况,对训练数据进行一定的预处理,即特殊节假日内的话务量数据按照当天的星期数利用前后几周对应星期的数据通过插值法进行替换(譬如节假日内的某天为星期一,那么我们可利用前后几周星期一话务量数据的牛顿插值数据进行替换,对星期二至星期天的情况以此类推,可类似于星期一的情况进行处理)。
[0105] 综合考虑话务量的周期特性,可按照以下模型确定要作为支持向量机的输入变量的历史数据子集:选择话务量的待预测天的前m周所对应当天的话务量数据作为n维输入变量x的m个元素(m<n),同时为体现话务量的变化趋势,还可以选择话务量的待预测天的连续前k天的话务量数据作为n维输入变量x的另外一些元素,其中k=n-m。而目标输出则是待预测天的话务量数据。图6示出了构建基于支持向量机的数据短期预测模型的一个例子的示意图。在该例子中描述了在n=5,m=3,k=2的情况下的预测模型。同样,训练阶段与预测阶段按照相同的规则对各点建立模型(即支持向量机的输入与输出)。
[0106] 例如,历史数据为2005年5月16号到2005年8月14号的话务量数据,要预测2005年8月15号的话务量数据(只进行一步预测),且n=5,m=3,k=2。在预测阶段,支持向量机的输出为2005年8月15号(星期一)的话务量,而输入变量x={x1,x2,x3,x4,x5},其中x1、x2、x3分别为上一周、上两周、上三周对应的当天话务量数据,即为2005年8月8号(星期一)、2005年8月1号(星期一)与2005年7月25号(星期一)的话务量
数据;而x4、x5则为2005年8月15号前一天、前两天的话务量数据,即2005年8月14号、
2005年8月13号的话务量数据。预测其它日期的话务量以此类推(迭代预测策略)。当然,在支持向量机训练阶段,按照相同的规律构建支持向量机的输入、输出。需要注意的是,本发明说明书中的“周”不必代表自然周,而表示时期的长度是m×7天(即,m个周),例如可以是从某年第20周的周三到第m+20周的周三这一时期。
[0107] 在训练过程中还可以引入支持向量机参数自动寻优的过程,参数配置文件中有已经调试成比较适合无线话务量预测的参数范围,自动寻优过程会循环选择出最合适的参数。
[0108] 参数选择对于预测结果影响非常显著。同时,参数的寻优又是一个NP问题,因此我们无法用常规算法计算得到最优解。对于参数寻优,可以采用已有的各种解决方案,例如,遗传算法(Genetic Algorithm;GA)、蚁群算法(Ant Colony Optimization;ACO)、粒子群算法(Particle SwarmOptimization;PSO),基因表达式编程算法(Gene Expression Programming;GEP)等等。但是,上述算法实现都相对较复杂,并且都有各自的局限性,其解决的问题也仅限于“在可接受的运行时间范围内,寻找到相对优化解”。根据实验我们观察到,在支持向量机的核函数参数选择过程中,大部分情况下参数选择都表现出贪心性质,即每个参数选最优值的组合就是全局最优解或近似全局最优解。所以,可根据贪心算法(Greedy Algorithm)确定相应的参数寻优策略。
[0109] 图7是示出根据本发明实施例的数据预测设备200的框图。
[0110] 如图7所示,该数据预测设备200包括读取装置205和预测装置210。读取装置105读取与历史时期(“第一时期”)相关联的多个历史数据(“第一数据”)。预测装置210基于支持向量机,预测与预测时期(“第二时期”,在时间上应晚于历史时期)中包含的子时期相对应的预测数据(“第二数据”)。支持向量机使用由读取装置105中读取的多个历史数据的至少一个子集作为输入变量。支持向量机的输出对应于预测数据。读取装置205和预测装置210的具体操作可参照上文的描述,为了避免重复而不进行详细描述。
[0111] 图8是示出根据本发明另一实施例的数据预测设备300的框图。
[0112] 该数据预测设备300包括读取装置305和预测装置310。读取装置305和预测装置310的操作类似于读取装置205和预测装置210。有利地,预测装置310可包括构造模块3102、预测模块3104和保存模块3106。构造模块3102可按照上述模型设计来构造支持向量机。预测模块3104调用由构造模块3102构造的支持向量机的预测函数(拟合函数),使用符合模型设计的历史数据子集作为支持向量机的输入变量,获得预测输出。该预测输出即为最终想要的预测数据。然后由保存模块3106保存该预测数据。上述预测装置310的结构只是示例,预测装置310的组分不限于上述各种模块。
[0113] 可选地,数据预测设备300还可以包括训练装置320。训练装置320通过训练数据确定支持向量机的各种参数,例如支持矢量及对应的权值系数。训练装置320可按照上述各种模型来训练支持向量机。为了避免重复,省略其详细描述。另外,训练装置320可包括优化模块3202,其利用贪心算法等优化算法来优化支持向量机的参数。
[0114] 可选地,读取装置305可包括数据预处理模块3052,用于调整(对齐)历史时期中包含的特定子时期相对应的历史数据。应注意,数据预处理模块3052(如果有的话)不必一定被包含在读取装置305中。它可以是独立的模块,也可以被包含在预测装置310中。
[0115] 本发明实施例的技术方案充分考虑了通信话务量等数据的时间序列的趋势性、季节性及周期性等因素,并结合有效预测技术-支持向量机SVM,对通信话务量的未来值进行有效预测,进而指导运营商对现网的管理和规划,避免系统过载导致交换机大面积瘫痪,给移动运营商和移动用户造成不可弥补的损失,可提高用户对运营商的信任度;还可提高网络的利用率。总之,该技术方案对话务量的有效预测给运营商直接或间接地带来可观的经济效益。
[0116] 尽管已示出和描述了本发明的一些实施例,但本领域技术人员应理解,在不脱离本发明的原理和精神的情况下,可对这些实施例进行各种修改,这样的修改应落入本发明的范围内。