[关闭]
@chanvee 2014-07-04T08:35:51.000000Z 字数 1495 阅读 2761

基于演化推荐网络的流行趋势预测

趋势预测

问题描述


推荐技术在理论和应用层面都具有重大的意义和价值,它不仅是电子商务系统的核心技术,而且是几乎所有WEB应用的必备技术,例如好友推荐,新闻推荐等等。

现有推荐算法通常将注意力集中到系统的微观层面,主要考虑单个用户或者产品找到合适的另一半。事实上,推荐算法不仅能从微观层面上预测单个用户未来可能感兴趣的商品,也能在宏观层面预测商品度的未来演化情况,而且宏观上流行的商品总是会对推荐算法结果产生显著影响。宏观预测可以为用户中的趋势引领者提前提供相关信息来节省他们在众多商品中的搜寻时间,以及为在线运营商提供库存管理的指导等等。

基于演化网络的商品趋势预测将研究推荐算法的微观行为如何汇聚到宏观的商品流行性。具体而言,若某个商品被广泛的推荐给不同用户,此商品的度在未来将显著增加。这种基于微观的分析方法将使我们得到比基于宏观分析的偏好依附算法更丰富的趋势预测结果。我们将首先细致研究不同的经典推荐算法对未来流行商品的预测能力;其次,将考虑网络特征和结构对于趋势的预测能力;最后,将设计合理的整合方法,以达到最好的趋势预测精度。

图示


Traditional Prediction

上图表示的是利用传统方法如线性回归、时间序列分析等方法对某一商品进行趋势预测的示例。它主要是根据该商品以前的宏观上的信息来进行预测。

Trend Prediction

上图表示了基于演化推荐网络的流行趋势预测方法的示例。这种方法在预测时是根据推荐系统对各个用户的推荐结果(图中的推荐结果用户-商品矩阵,若矩阵中的某一元素(i,j)为1,则表示该阶段推荐系统会给用户i推荐商品j,为0则不推荐该商品;所以该矩阵是随着时间的推移,根据推荐系统动态演化的),实现从微观到宏观的一个汇聚累加,从而得到商品的变化趋势。

研究思路


  1. 通过对已知数据集的统计,可以假定已知用户在下一个时间段购买商品的数量
    (1). 利用不同的推荐算法进行推荐
    (2). 不同的推荐策略(假设已知要给用户推荐K个商品:推荐列表前K个?随机选择K个...)
    (3). 与实际结果和传统方法的对比
  2. 不知道用户下一阶段购买商品的数量(实际情形)
    (1). 怎样确定这个数量
    (2). 推荐商品的叠加策略,即怎样从微观的对各个用户的推荐结果汇聚到宏观的趋势预测(直接累加?加权累加?概率分布?...)
    (3). 与实际结果和传统方法的对比
  3. 不同的数据集,不同的网络拓扑结构对预测精度的研究分析
  4. 时间粒度对预测精度的研究分析(按天划分?按周划分?按月划分?)

本周的一些结果


本周主要是对Netflix数据集进行了一些预处理,得到了一些结果:

Trend of user-item
上图分别表示的是前10个最大的度的商品和用户的度随着时间的变化(这里按月将数据分成了24个时间节点)实际增加的趋势,从图中可以看到商品的趋势似乎有一点的规律,而用户的趋势则不太明显。于是我又接着做了前100个最大的度的商品和用户的趋势图如下:

Trend of user-item
发现对于其中大部分的商品的度增加趋势都似乎拥有一定的规律。于是我接着做个前500-550,前1000-1050,前1500-1550,前2000-2050商品的度增加趋势来看看是否有类型的规律,如下图:

Trend of item
Trend of item1
对于上述结果我自己的解释是,呈现一定规律的那些商品都是一开始就存在在推荐系统中,因此他们趋势的变化基本趋于稳定,而对于不成规律的商品往往是在某个时间段新加进来的商品,因此往往会在开始呈现一个剧增随后剧减在趋于稳定这样一个过程。对于这个结果或许可以用来帮组前面所说的确定用户在下一个时间段会购买多少商品,比如根据商品加入的时间制定不同的推荐策略等。

下周工作


  1. 按着思路1,加入推荐算法,将得到的结果与实际结果进行比较.
  2. 选择不同的推荐策略进行比较。

  1. Markdown原文
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注