数据预测方法及其系统与流程

文档序号:11621151阅读:221来源:国知局
数据预测方法及其系统与流程

本申请涉及计算机技术领域,尤其涉及一种数据预测方法及其系统。



背景技术:

目前电商对商品销量的预测一般是基于历史销量数据,采用基于经验的专家预测法、时间序列预测法和多元回归预测算法。上述常用方法在数据和算法上都存在一定的局限性,比如仅仅用历史销量数据来预测未来,未能涵盖更加有预测力的外部数据变量等。随着电商发展得越来越迅速,销售预测能够为电商平台的后端运营提供非常有价值的指导,但是销量预测的精确性一直存在非常大的提升空间。

现有预测销量的技术中,专家法虽然简便易行,但是主观性比较强,无法保证预测的精确度;而时间序列方法主要是根据历史销量来推测未来销量,也存在预测精度不够的问题,特别不适合销量剧烈波动的特殊时期,而且没有充分考虑到影响销量相关因素外部数据源,同时也存在对于预测的结果存在不好解释的问题;多元回归方法是基于影响销量等各方面因素而建立的多元线性方程的方法,多元回归方法要想保证预测的精确性,需要足够多的、影响销量的各方面数据,即对数据有着非常严格的要求。预测精度很大程度上受制于数据质量,预测精度往往不够理想。

电商的销售预测非常复杂,其中涉及到电商平台本身的业务特点以及电商企业的供应链整体能力,而且影响电商平台上的销量相关因素又错综复杂,往往会导致电商的销售预测会变得非常困难。



技术实现要素:

本申请的主要目的在于提供一种数据预测方法及其系统,以解决现有技术的对数据预测方案存在较大局限的问题。

根据本申请实施例提供一种数据预测方法,其包括:通过数据库获取单一业务的数据信息,其中所述数据信息包括多维度的特征变量;通过多元回归方法,结合最小信息准则aic值与贝叶斯信息准则bic值,对所述多维度的特征变量进行数据筛选,过滤数据噪音;将数据筛选后的特征变量导入到机器学习模型中,对数据进行建模分析。

可选的,在所述对所述多维度的特征变量进行数据筛选,包括:对所述多维度的特征变量进行数据归一化处理、数据变换处理和缺失值处理,以对数据清洗。

可选的,所述数据变换处理包括:将定性特征变量转换成因子型特征变量,并对表示销量的特征变量进行对数变换。

可选的,所述缺失值处理包括:过滤掉缺失值比率超过预定数值的特征变量;或采用邻近缺失值的特征变量值填补缺失的变量值。

可选的,所述通过多元回归方法,对所述多维度的特征变量进行变量筛选,包括:提取数据清洗后的特征变量中表示销量以及影响销量的变量,设置因变量y表示销量、自变量x1…xn表示影响销量y的n个变量;依次提取自变量x1…xn分别与因变量y组成临时训练集,通过预设的多元回归模型对所述临时训练集进行训练,并计算训练结果的aic值或bic值;判断所述临时训练集的aic值或bic值与预设值相比是否减少,若未减少,则删除自变量,否则,保留该自变量;提取具有最小aic值或bic值的临时训练集中的自变量。

可选的,所述对数据进行建模分析,包括:通过多元回归方法,结合aic值与bic值,将输入的所有自变量经过筛选变成筛选之后的自变量;对筛选之后的自变量进行分类处理,若筛选之后的变量中存在离散性自变量,则将离散性自变量处理成矩阵,若为连续性变量则无需处理;将筛选之后的自变量经过矩阵处理之后导入到机器学习模型中。

根据本发明实施例还一种数据预测系统,其包括:数据收集模块,用于通过数据库获取单一业务的数据信息,其中所述数据信息包括多维度的特征变量;变量筛选模块,用于通过多元回归方法,结合最小信息准则aic值与贝叶斯信息准则bic值,对所述多维度的特征变量进行数据筛选,过滤数据噪音;模型训练与分析模块,用于将数据筛选后的特征变量导入到机器学习模型中,对数据进行建模分析。

可选的,所述系统还包括:数据预处理模块,用于对所述多维度的特征变量进行数据归一化处理、数据变换处理和缺失值处理,以对数据清洗。

可选的,所述变量筛选模块用于:提取数据清洗后的特征变量中表示销量以及影响销量的变量,设置因变量y表示销量、自变量x1…xn表示影响销量y的n个变量;依次提取自变量x1…xn分别与因变量y组成临时训练集,通过预设的多元回归模型对所述临时训练集进行训练,并计算训练结果的aic值或bic值;判断所述临时训练集的aic值或bic值与预设值相比是否减少,若未减少,则删除自变量,否则,保留该自变量;提取具有最小aic值或bic值的临时训练集中的自变量。

可选的,所述模型训练与分析模块用于:通过多元回归方法,结合aic值与bic值,将输入的所有自变量经过筛选变成筛选之后的自变量;对筛选之后的自变量进行分类处理,若筛选之后的变量中存在离散性自变量,则将离散性自变量处理成矩阵,若为连续性变量则无需处理;将筛选之后的自变量经过矩阵处理之后导入到机器学习模型中。

根据本申请的技术方案,采用多种数据源的数据挖掘技术、集成学习方法对相应的数据进行分析和建模从而对销售数据进行预测,能够对商品销量可能出现的急剧波动做好准备和及时应对,对于未来销量急剧增加或减少提前做好预警。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1是根据本发明实施例的数据预测方法的流程图;

图2是根据本发明实施例的基于多元回归的变量筛选流程图;

图3是根据本发明实施例的缺失值处理的示意图;

图4是根据本发明实施例的基于多元回归的变量筛选流程图;

图5是根据本发明实施例的测试集的预测效果的示意图;

图6是根据本发明实施例的预测结果与实际销量对比的示意图;

图7是根据本发明实施例的数据预测系统的结构框图。

具体实施方式

本发明涉及电子商务平台的预测商品未来销售量的智能技术。特别是整合了多种数据源来预测商品的中长期销量,既充分利用了多源数据中对未来销量有预测作用的信息,同时也设法过滤掉其中大量的噪音信息。本发明通过采用一种高效集成学习算法xgboost,能够显著提高销量预测的精度。本发明能够提供分析结果的可解释性,有助于深入了解商品的销售动态,制定有效的进销存对策。

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

以下结合附图,详细说明本申请各实施例提供的技术方案。

图1是根据本申请一个实施例的数据预测方法的流程图,如图1所示,包括:

步骤s102,通过数据库获取单一业务的数据信息,其中所述数据信息包括多维度的特征变量;

其中,所述单一业务的数据信息为与销量相关的所有数据,包括但不限于:商品基本信息数据、商品价格数据、商品的营销推广数据(库存、历史销量)等内部数据,以及节假日数据、电商平台政策数据、电商平台用户行为数据(浏览、点击和收藏等)等外部相关数据。

一般情况下数据库中存储的是所有待预测商品的数据集,而销量预测模型的预测则是需要对单个商品单独进行预测,因此,在数据收集阶段会有一个过滤单个商品数据集的处理过程。

步骤s104,通过多元回归方法,结合最小信息准则aic值与贝叶斯信息准则bic值,对所述多维度的特征变量进行数据筛选,过滤数据噪音。

参考图2,为本发明实施例的基于多元回归的变量筛选流程图。因变量y在销量预测模型中为商品的销量,而自变量x1…xn分别代表影响销量y的n个变量;对于变量筛选的伊始,首先由x1和y组成临时训练集,其次将临时训练集通过多元回归模型进行训练,然后计算训练结果的aic值或bic值,再后,判断该临时训练集的aic值或bic值是否减少(前提是在模型的开始时,选择一个较大的值作为初始aic值或bic值),若aic值或者bic值不减少,则将组成临时训练集的自变量x1删除;否则,进入新一轮临时训练集的组建,即将x2加入到临时训练集中,进行新一轮的多元回归模型的训练与aic值或bic值的计算与判断;从x1直至xn为止,选择n个临时训练集中aic值或bic值最小的临时训练数据集,通过过滤器,提取具有最小aic值或bic值的训练集中的自变量,即完成了变量筛选的全部过程。

在步骤s104之前,需要对数据进行预处理,主要是对数据收集到的原始数据做清洗,提取有用的信息量,而把噪音等干扰量排除掉,包括数据归一化、数据变换和缺失值处理。

对于数据归一化,采用的是min-max标准化,即对原始数据的线性变换,使结果映射到[0-1]之间。

对于数据变换,则采用的是对数变换或者统计学变换box-cox变换。具体地,数据转换包括定性变量转换成因子型变量和对销量进行对数变换。由于,机器学习xgboost模型的数据输入要求为数值型格式,而影响销售预测的各因素中存在离散变量(或称为定性变量)。如“是否促销”变量,其值只有“是”或“否”,其处理方法为将“是/否”转换成“1/0”。由于销量的分布,特别是误差分布若不是符合模型假设的高斯分布,会对建模的精度具有一定的影响,为了防止该影响的出现,一般对销量值y进行对数变换或统计学上的box-cox变换。其中,box-cox变换是统计建模中的一种数据变换,用于连续的相应变量不满足正态分布的情况,box-cox变换之后,可以在一定程度上减小不可观测的误差和预测变量的相关性。

对于缺失值处理,包括两部分:过滤缺失值比率超过60%的变量或样本、以及用邻近法插补缺失值。鉴于由于影响销量的变量均带有时间,因此被划为时序变量,考虑到时序变量的时效性已经经济影响因素,采用邻近法进行插补,即缺失值用靠近缺失值的变量值进行填补。参考图3,时期“2015-05-23”的变量值缺失,采用其临近时间(即2015-05-24)的变量值“10.0”填补缺失的变量值。

步骤s106,将数据筛选后的特征变量导入到机器学习模型中,对数据进行建模分析。参考图4,具体地步骤s106包括以下步骤:

第一步,通过多元回归方法,结合aic值与bic值,将输入的所有自变量经过筛选变成筛选之后的自变量;

第二步,对筛选之后的自变量进行分类处理,若筛选之后的变量中存在离散性变量,则将离散性变量处理成矩阵,若为连续性变量则无需处理;

第三步,筛选之后的自变量经过矩阵处理之后导入到机器学习xgboost算法中。

在完成模型训练与预测之后,对将预测的结果输入到数据库中,以便进行可视化展示。

图5为本发明实施例的测试集的预测效果的示意图。在样例数据集上用以下三种算法进行预测:机器学习xgboost方法、多元回归方法和arima方法。如图5所示,一方面,基于机器学习的xgboost法的预测结果跟45度的虚线是最接近的,说明该方法的预测效果是最佳的;另一方面,对上述三种预测方法的预测精确度(即rmse进行计算)发现,基于机器学习的xgboost方法的rmse只有多元回归方法的rmse的1/2,是arima方法的rmse的1/3。综上所述,基于机器学习的xgboost方法比目前的多元回归方法和时间序列(arima)方法的预测精确性要高很多。

图6为本发明实施例的预测结果与实际销量对比的示意图。其展示了待预测商品的历史销量和未来预测销量的对比情况,从图6可以看出,预测销量在趋势上基本上已经与真实销量的趋势保持一致,而且,在预测的初始时间段,预测的精度较高。

根据本发明实施例还提供一种数据预测系统,参考图7,其包括:

数据收集模块71,用于通过数据库获取单一业务的数据信息,其中所述数据信息包括多维度的特征变量;

变量筛选模块72,用于通过多元回归方法,结合最小信息准则aic值与贝叶斯信息准则bic值,对所述多维度的特征变量进行数据筛选,过滤数据噪音;

模型训练与分析模块73,用于将数据筛选后的特征变量导入到机器学习模型中,对数据进行建模分析。

在本发明的一个实施例中,所述数据预测系统还包括有:数据预处理模块74,用于对所述多维度的特征变量进行数据归一化处理、数据变换处理和缺失值处理,以对数据清洗。

其中,所述变量筛选模块72用于:

提取数据清洗后的特征变量中表示销量以及影响销量的变量,设置因变量y表示销量、自变量x1…xn表示影响销量y的n个变量;

依次提取自变量x1…xn分别与因变量y组成临时训练集,通过预设的多元回归模型对所述临时训练集进行训练,并计算训练结果的aic值或bic值;

判断所述临时训练集的aic值或bic值与预设值相比是否减少,若未减少,则删除自变量,否则,保留该自变量;

提取具有最小aic值或bic值的临时训练集中的自变量。

其中,所述模型训练与分析模块73用于:

通过多元回归方法,结合aic值与bic值,将输入的所有自变量经过筛选变成筛选之后的自变量;

对筛选之后的自变量进行分类处理,若筛选之后的变量中存在离散性自变量,则将离散性自变量处理成矩阵,若为连续性变量则无需处理;

将筛选之后的自变量经过矩阵处理之后导入到机器学习模型中。

本申请的方法的操作步骤与系统的结构特征对应,可以相互参照,不再一一赘述。

根据本申请的技术方案,通过对多源数据的分析,采用一种集成学习xgboost方法对电商的商品销量进行中长期预测,并对单个商品的历史销量和预测销量进行可视化展示,对于未来销量急剧增加或减少提前做好预警,能够对商品销量可能出现的急剧波动做好准备和及时应对。并且,本发明采用xgboost方法,充分利用了多种数据源,既考虑了销量变化的内部因素又考虑了影响销量变化的外部因素,不仅能够显著提高电商销量预测的精确性,而且对于预测结果能够具有一定的可解释性,方便业务理解和管理策略的可执行。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1