一种网络热销商品的预测方法及系统
技术领域:
本发明属于网络数据挖掘领域的热点趋势预测技术,具体来讲,涉及一种互联网电子商务系统的热销商品预测方法。
背景技术
随着互联网的发展普及,电子商务正以令人难于置信的速度发展,极大地改变着人们的生活方式。艾瑞统计数据显示,2013年中国电子商务市场交易规模9.9万亿元,同比增长21.3%,预计2017年电子商务市场规模将达21.6万亿元。电子商务改变了人们的购物方式,对于很多人来说,网上购物已成为日常消费的重要组成部分。各种零售行业的商家也纷纷踏足电子商务市场,销售模式由传统的线下销售转到线上销售。
电子商务平台的产品丰富价格透明,方便消费者的同时,也增大了商家之间的竞争。在淘宝网输入“连衣裙”,搜索结果多达1300多万件。在搜索到的这些商品中,有些销量达到上万件,而更多的却只销售寥寥几件甚至0件。纵然销量的高低与商品自身品质和商家营销推广手段有很大关系,但对市场趋势的准确预测是营销推广的前提。对于商家来说,如果能够成功把握流行趋势,预测将会热销的商品,从而合理的安排进货库存、营销推广,将会获得可观的收益。
目前,预测网络热销商品的方法主要有两类:一类是根据本行业当前流行趋势(相关新闻、舆论导向、主流价值观、季节特性等),人工根据经验综合分进行析预测,这种方法主观性较高,人力成本较大,各行业之间没有通用性,相对偏差也较大;另一类是对电子商务平台的商品销售评价记录等历史数据进行简单统计,进而预测热销商品,这种方法通用性强,但应用价值不高,它只能预测到已经热销并将持续热销的商品,而不能预测目前没有热销但将会热销的商品。目前,缺少一种通用性强的网络热销商品预测方法,充分利用历史销售评价数据有效的挖掘出即将热销的商品。
发明内容
本发明要克服现有技术的上述缺点,提供一种高效合理的、基于历史数据分析的网络热销商品的预测方法和系统。
本发明所述的网络热销商品的预测方法,包括如下步骤:
步骤ST1,网络热销商品逻辑控制模块M3控制数据获取接口模块M1根据需求获取所需预测的商品列表,每个商品有一个唯一标识Id。
步骤ST2,网络热销商品逻辑控制模块M3控制数据获取接口模块M1读取列表中所有商品的历史访问、成交数据,并结构化为如下的形式:
字段名称 |
字段类型 |
是否可选 |
Id |
Int |
否 |
Time |
Timestamp |
否 |
Action |
Bool |
否 |
步骤ST3,网络热销商品逻辑控制模块M3控制参数智能设置模块M4根据历史数据,自动设置热销商品预测所需的参数。图3是根据本发明一个实施实例的自动设置预测所需的参数的流程图。具体包括以下几个步骤:
步骤ST301,设定一个时间点t′,用于将数据分为测试集与训练集两部分,为最优参数的设置提供参照集。
步骤ST302、ST303和ST309,比较时间点t′与历史数据中各次成交、访问的时间,将t′时间之前产生的数据归入训练集,t′时间之后的数据归入测试集。
步骤ST304,初始化参数a=ε,τ=0。预测所需参数a为大于0的数,本方法是根据参数迭代优化的方法找到最优参数。初始化时a越小,表示迭代范围越大,结果精度也越高。但迭代范围越大、精度越高,计算所需时间就越长。
步骤ST305,计算训练集中各次访问权重。设访问i的访问时间为t1i,则这次访问的权重值为
步骤ST306,计算训练集中各次成交的权重。设成交i的成交时间为t2i,则这次成交的权重值为
步骤ST307,计算商品的热销总权重。设V为某商品所有训练集中的访问组成的集合,B为其所有训练集中的成交组成的集合,则该商品的热销总权重为W=∑i∈Vw1i+∑i∈ Bw2i。
步骤ST308,将各个商品根据热销总权重从大到小排序。
步骤ST310,计算测试集中各商品的成交数量,并按从大到小顺序排序。在实施实例中,为了保证效果,避免零启动问题,所排序的商品必须在训练集的记录不为0。
步骤ST311,将步骤ST308与ST310所得的两个排序结果进行比较,计算其Kendall's tau值,记作τ′。
步骤ST312、ST313与ST314,比较τ与τ′。如果τ′>τ,则设置τ=τ′,a=a×Δ,回到第(4)步。其中Δ为控制预测精度的参数,可根据需要自由设定,Δ越小精度越高,相应的计算所需时间就越长。如果τ′<τ,则α/Δ即为得到的预测参数。
步骤ST4,网络热销商品逻辑控制模块M3控制预测模块M5根据历史数据和参数智能设置模块M4设置的预测参数,预测各商品的热销指数。图4是根据本发明一个实施实例的计算各商品热销指数的流程图。具体包括以下几个步骤:
ST401,计算各次访问的权重。设访问i的访问时间为t1i,则这次访问的权重值为t为当前时刻,a为参数智能设置模块M4设置的预测参数。
ST402,计算各次成交的权重。设成交i的成交时间为t2i,则这次成交的权重值为t为当前时刻,a为参数智能设置模块M4设置的预测参数。。
ST403,计算商品的热销总权重,即热销指数。设V为某商品所有访问组成的集合,B为其所有成交组成的集合,则该商品的热销总权重为W=∑i∈Vw1i+∑i∈Bw2i。
步骤ST5,网络热销商品逻辑控制模块M3控制排名输出模块M2,根据预测模块计算得到的热销指数对各个商品进行排序,指数越高排名越靠前,排名靠前的商品即为预测得到的热销商品,将最终预测结果排序输出。
实现本发明所述的网络热销商品的预测方法的系统,包括五个模块:数据获取接口模块、预测模块、排名输出模块、参数智能设置模块和逻辑控制模块;
数据获取接口模块:获取相关商品列表及其历史数据,包括商品的各次访问的时间和各次历史成交的时间。
预测模块:计算各商品的热销指数,具体实现步骤如下:
(1)计算各次访问的权重。设访问i的访问时间为t1i,则这次访问的权重值为t为当前时刻,a为可调节的参数。
(2)计算各次成交的权重。设成交i的成交时间为t2i,则这次成交的权重值为t为当前时刻,a为可调节的参数。
(3)计算商品的热销总权重,即热销指数。设V为某商品所有访问组成的集合,B为其所有成交组成的集合,则该商品的热销总权重为W=∑i∈Vw1i+∑i∈Bw2i。
排名输出模块:将最终预测结果排序输出。此模块根据预测模块计算得到的热销指数对各个商品进行排序,指数越高排名越靠前。排名靠前的商品即为预测得到的热销商品。
参数智能设置模块:自动设置预测所需的参数a,具体实现步骤如下,其中ε与Δ可根据所需精度自由设定:
(1)将所有商品的历史数据以时间点t′为界分为两个部分,t′之前的数据作为训练集,之后的数据作为测试集。
(2)计算测试集中各商品的成交数量,并按从大到小顺序排序。为了保证效果,所排序的商品必须在训练集的记录不为0。
(3)初始化a=ε,τ=0。
(4)计算训练集中各次访问权重。设访问i的访问时间为t1i,则这次访问的权重值为
(5)计算训练集中各次成交的权重。设成交i的成交时间为t2i,则这次成交的权重值为
(6)计算商品的热销总权重。设V为某商品所有训练集中的访问组成的集合,B为其所有训练集中的成交组成的集合,则该商品的热销总权重为W=∑i∈Vw1i+∑i∈Bw2i。
(7)将各个商品根据热销总权重从大到小排序,将排序结果与步骤(2)中的排序结果进行比较,计算Kendall's tau值,记作τ′。
(8)比较τ与τ′,如果τ′>τ,则设置τ=τ′,a=a×Δ,回到第(4)步。如果τ′<τ,则a/Δ即为得到的预测参数。
逻辑控制模块:控制数据获取接口模块读取各商品的历史访问、成交数据;控制预测模块计算各商品的热销指数;控制排名输出模块输出预测结果;控制参数智能设置模块自动设置参数。
本发明的优点是:从时间维度出发,根据影响力随时间指数衰减的特性,利用电子商务系统中商品的各次访问成交信息对未来成交量进行预测,本发明的通用性强,能预测目前没有热销但将会热销的商品,具有很高的应用价值。
附图说明
图1是根据本发明一个实施实例的网络热销商品的预测系统的框图。
图2是根据本发明一个实施实例的网络热销商品预测系统的执行流程图。
图3是根据本发明一个实施实例的自动设置预测所需的参数的流程图。
图4是根据本发明一个实施实例的计算各商品热销指数的流程图。
具体实施方式
为了便于问题描述,下面将结合附图,描述本发明优选具体实施方式。但值得注意的是,为避免在系统所采用已知技术和功能冲淡本发明主题,在相应描述中将会被简化或忽略。
图1示出了本发明网络热销商品的预测系统的一个实施实例的系统框图。该系统主要包括数据获取接口模块M1,排名输出模块M2,逻辑控制模块M3,参数智能设置模块M4,和预测模块M5。各模块的详细描述如下:
数据获取接口模块M1:该模块主要负责获取相关商品列表及其历史数据,供逻辑控制模块调用。在一个实施实例中,本系统涉及的数据主要包括商品的各次访问的时间和各次历史成交的时间。该模块将所有相关数据结构化,表1是本实施实例中单条数据的结构形式。其中Id是商品的唯一标识,Time是本条成交或访问记录的时间,Action标识本条记录是访问记录还是成交记录。
表1
字段名称 |
字段类型 |
是否可选 |
Id |
Int |
否 |
Time |
Timestamp |
否 |
Action |
Bool |
否 |
排名输出模块M2:该模块用于将最终预测结果排序输出。在一个实施实例中,此模块根据预测模块计算得到的热销指数对各个商品进行排序,指数越高排名越靠前。排名靠前的商品即为预测得到的热销商品。
网络热销商品逻辑控制模块M3:该模块用于控制整个热销商品预测系统的执行逻辑和流程。在一个实施实例中,逻辑控制模块控制数据获取接口模块读取各商品的历史访问和成交数据、参数智能设置模块自动设置参数、预测模块计算各商品的热销指数,以及排名输出模块输出预测结果等功能。
参数智能设置模块M4:该模块用于执行本发明提供的自动设置预测所需的参数a的方法,并提供该参数供预测模块M5调用。该模块根据商品的历史成交和访问数据,通过迭代优化的方法,计算出热销商品预测所需的参数,并保证该参数在一定误差范围内最优,即能达到最好的预测效果。
预测模块M5:该模块用于执行本发明提供的热销商品的预测方法,计算出各商品的热销指数。该模块根据商品的历史成交和访问数据,充分考虑时间特性,通过引入时间衰减和加权叠加的方法,计算各商品的热销指数,保证预测的时效性。
图2示出了本发明一个实施实例的网络热销商品预测系统的执行流程图,主要包括以下步骤:
步骤ST1,网络热销商品逻辑控制模块M3控制数据获取接口模块M1根据需求获取所需预测的商品列表,每个商品有一个唯一标识Id。
步骤ST2,网络热销商品逻辑控制模块M3控制数据获取接口模块M1读取列表中所有商品的历史访问、成交数据,并结构化为表1的形式。
步骤ST3,网络热销商品逻辑控制模块M3控制参数智能设置模块M4根据历史数据,自动设置热销商品预测所需的参数。图3是根据本发明一个实施实例的自动设置预测所需的参数的流程图。具体包括以下几个步骤:
步骤ST301,设定一个时间点t′,用于将数据分为测试集与训练集两部分,为最优参数的设置提供参照集。
步骤ST302、ST303和ST309,比较时间点t′与历史数据中各次成交、访问的时间,将t′时间之前产生的数据归入训练集,t′时间之后的数据归入测试集。
步骤ST304,初始化参数a=ε,τ=0。预测所需参数a为大于0的数,本方法是根据参数迭代优化的方法找到最优参数。初始化时a越小,表示迭代范围越大,结果精度也越高。但迭代范围越大、精度越高,计算所需时间就越长。所以,在实施实例中,我们可以设置ε=10-10。
步骤ST305,计算训练集中各次访问权重。设访问i的访问时间为t1i,则这次访问的权重值为
步骤ST306,计算训练集中各次成交的权重。设成交i的成交时间为t2i,则这次成交的权重值为
步骤ST307,计算商品的热销总权重。设V为某商品所有训练集中的访问组成的集合,B为其所有训练集中的成交组成的集合,则该商品的热销总权重为W=∑i∈Vw1i+∑i∈ Bw2i。
步骤ST308,将各个商品根据热销总权重从大到小排序。
步骤ST310,计算测试集中各商品的成交数量,并按从大到小顺序排序。在实施实例中,为了保证效果,避免零启动问题,所排序的商品必须在训练集的记录不为0。
步骤ST311,将步骤ST308与ST310所得的两个排序结果进行比较,计算其Kendall's tau值,记作τ′。
步骤ST312、ST313与ST314,比较τ与τ′,如果τ′>τ,则设置τ=τ′,a=a×Δ,回到第(4)步。其中Δ为控制预测精度的参数,可根据需要自由设定,Δ越小精度越高,相应的计算所需时间就越长,在实施实例中,我们可以设置Δ=10-10。如果τ′<τ,则a/Δ即为得到的预测参数。
步骤ST4,网络热销商品逻辑控制模块M3控制预测模块M5根据历史数据和参数智能设置模块M4设置的预测参数,预测各商品的热销指数。图4是根据本发明一个实施实例的计算各商品热销指数的流程图。具体包括以下几个步骤:
ST401,计算各次访问的权重。设访问i的访问时间为t1i,则这次访问的权重值为t为当前时刻,a为参数智能设置模块M4设置的预测参数。
ST402,计算各次成交的权重。设成交i的成交时间为t2i,则这次成交的权重值为t为当前时刻,a为参数智能设置模块M4设置的预测参数。。
ST403,计算商品的热销总权重,即热销指数。设V为某商品所有访问组成的集合,B为其所有成交组成的集合,则该商品的热销总权重为W=∑i∈Vw1i+∑i∈Bw2i。
步骤ST5,网络热销商品逻辑控制模块M3控制排名输出模块M2,根据预测模块计算得到的热销指数对各个商品进行排序,指数越高排名越靠前,排名靠前的商品即为预测得到的热销商品,将最终预测结果排序输出。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。