一种基于关联规则与贝叶斯网络集成的推荐技术的制作方法

文档序号:11432239阅读:169来源:国知局
一种基于关联规则与贝叶斯网络集成的推荐技术的制造方法与工艺

本发明涉及商务类网站的智能推荐技术领域,具体涉及将关联规则与贝叶斯网络集成的推荐算法。



背景技术:

互联网和信息技术快速发展使得商务网站交易越来越频繁,大量的信息聚集起来形成海量信息。帮助用户从海量信息中快速准确地寻找到自己感兴趣的信息,建立一个有效的推荐系统,可以使商务网站建立稳定的企业忠实顾客群,提高用户满意度。

关联规则由于形式很简单,应用方便,得到快速的发展。关联规则可用于发现商务网站交易数据库中不同项目之间的联系,这些规则反映了用户的网站浏览模式。发现这些规则可以应用向用户推荐感兴趣的网址。自从关联规则提出以来,已成为主流的推荐技术。但是关联规则不能表达不同规则之间的联系,这极大地限制了关联规则在复杂情形下的应用。而贝叶斯网络用图形化的形式表示了如何将与一系列节点相关的条件概率函数组合成为一个整体的联合概率分布函数。一个贝叶斯网络包括了一个结构模型和与之相关的一组条件概率分布函数。结构模型是一个有向无环图,其中的节点表示了随机变量,它是对于过程、事件、状态等实体的某特性的描述,边则表示变量间的概率依赖关系。图中的每个节点都有一个在给定其父节点情况下该节点的条件概率分布函数。

由于贝叶斯网是变量的联合概率的表示,所以在对节点状态进行推理的过程中,能够综合考虑各个因素(父节点)的影响,由于关联规则和贝叶斯网络都是以概率论为理论基础的,可以考虑使用贝叶斯网络修正关联规则,并通过概率推论的方式预测当前用户访问对未曾浏览网址的概率,将得到的结果排序,推荐概率top-n的网址。

本发明根据用户历史浏览信息,发现商务网站交易数据库中不同项目之间的联系,将这些反映了用户的网站浏览模式的规则用有向无环图表达出来,基于贝叶斯网络预测当前用户访问各网址的条件概率,找出条件概率最大的n个网址推荐给用户。为用户提供个性化的服务的同时建立网站与用户之间的密切关系,让用户对推荐系统产生依赖,从而建立稳定的企业忠实顾客群,实现客户链式反应增值,提高消费者满意度。通过提高服务效率帮助消费者节约交易成本等,制定有针对性的营销战略方针,促进企业长期稳定高速发展。



技术实现要素:

本发明针对商务网站的智能推荐技术,在关联规则的基础上学习贝叶斯网络结构,提出将关联规则与贝叶斯网络集成的推荐算法。

方法包括以下步骤:首先,对网址进行关联分析,并将关联规则按提升度排序。然后,依据关联规则前后件的关系,将关联规则转化成初始贝叶斯网络。再然后对初始贝叶斯网络进行结构学习,寻找最优贝叶斯网络结构,并学习最优贝叶斯网络结构的参数,此时的最优贝叶斯网络相当于对关联规则的修正。最后使用贝叶斯方法预测当前用户访问未知网址的概率,将概率最大的n个网址推荐给用户。

所述的将关联规则与贝叶斯网络集成,是对原始事务集使用apriori算法得到关联规则,按提升度排序后,将其转化成贝叶斯网络结构。贝叶斯网的结构是一个有向无环图,图中的每一个节点唯一地对应一个随机变量,节点的状态对应于随机变量的值。图中的有向边表示变量(节点)之间的条件(因果)依赖关系。关联规则的前件和后件间也蕴含着一种依赖关系,转化的思路就是将关联规则中的这种依赖关系用贝叶斯网的结构表示出来。

所述的贝叶斯预测,将所有网址是否被访问看成一组随机向量变量,当前用户的历史访问记录就是一个样本,结合这个样本数据和参数先验,预测某个网址被访问的概率。变量包含贝叶斯网络节点和非贝叶斯网络节点两部分,假设贝叶斯网络节点条件独立,非贝叶斯网络节点相互独立,贝叶斯网络节点和非贝叶斯网络节点相互独立。

所述的关联规则与贝叶斯网络集成的推荐算法具体步骤如下:

1)数据预处理。在对原始数据的探索分析的基础上,发现与分析目标无关或模型需要处理的数据,针对此类数据进行处理。通过数据清洗、数据集成和数据变换,将原始数据处理成模型需要的输入数据。其中为用户集,为网址集。

2)关联规则。首先将数据集d转化成事务集dt,考虑到要与贝叶斯网络对应,本发明只分析具有单个后件属性状态的关联规则前件更新问题,因此apriori算法只需检索出事务数据库中的所有2项频繁项集,利用频繁项集构造出满足用户最小提升度的规则,并根据提升度将规则按从大到小的顺序排列。

3)将关联规则转化成贝叶斯网络。转化的思路就是将关联规则中的这种依赖关系用贝叶斯网的结构表示出来。关联规则的前件网址后件网址间蕴含着一种依赖关系。贝叶斯网络如果存在从节点指向节点的有向边,则在指向的方向上,的状态条件依赖于的状态,称的一个父节点,的父节点集可以表示为。关联规则的项与贝叶斯网络的节点是对应的,贝叶斯网络中的点表示的是一个变量,指用户是否浏览网址这个二值变量,而关联规则中的项表示的是这个变量的一个状态,即用户访问网址这个事件。这样依照提升度自上而下就将各节点及其父节点找出来。

4)寻找最优贝叶斯网络,并估计参数。本发明采用mcmc方法学习贝叶斯网络的结构,通过gibbs抽样算法,将局部的边增加、删除和反向的均匀分布作为抽样过程的建议分布,并利用抽样过程收敛之后产生的来自目标平稳分布的网络结构样本来估计贝叶斯网络的结构特征,构建最优贝叶斯网络。参数的学习实在最优贝叶斯网络结构的基础上进行的,本发明使用贝叶斯方法估计的参数,节点的条件概率分布都是多项式分布,因此参数的共轭先验及其后验分布都是狄利克雷分布。从关联规则的角度来看,贝叶斯网络的学习过程实际上是关联规则的优化过程。

5)贝叶斯预测。目标网址是否被访问是随机变量,变量分为贝叶斯网络节点和非贝叶斯网络节点,非贝叶斯网络节点相互独立,非贝叶斯网络节点和贝叶斯网络节点相互独立,所以若是非贝叶斯节点,预测值是其边缘概率;贝叶斯网络节点条件独立,贝叶斯网络节点和非贝叶斯网络节点相互独立,若是贝叶斯节点,预测值是条件概率的乘积。

6)做出推荐。将个网址的预测值排序,从中选出预测值top-n的网址推荐给当前用户。然后对模型从精度和时效两方面进行评价。统计精度方法采用指标平均绝对误差(mae)。决策支持精度指标采用精确率(precision)和召回率(recall)。时效用响应时间来衡量。

本发明创造性地将关联规则和贝叶斯网络两种数据挖掘方法集成运用在网站智能推荐上。一方面,关联规则由于形式很简单,应用方便,但不能表达不同规则之间的联系,复杂情形下的应用受到极大地限制。而贝叶斯网表示变量的联合概率,能够综合考虑各个因素(父节点)的影响。另一方面,贝叶斯网络节点数量大时,计算量大,结构复杂,学习时间长,关联规则可以较快的得到节点之间的依赖关系,借助关联规则的贝叶斯网络可以快速学习达到最优结构。这两种方法结合互补,经验证(见后文算法算例)提高了模型的精确度和运算效率。本发明用贝叶斯预测当前用户访问未知网址的概率,贝叶斯方法能够使先验知识和数据有机的结合,在样本数据稀疏时,能够充分利用先验知识得到可靠结果,一些过于冷门或热门网址,作为分析的异常点,在贝叶斯网络分析中也能充分利用,并得到稳健结果。

附图说明

图1关联规则和贝叶斯网络集成推荐算法的流程图;

图2步骤1数据预处理的流程图;

图3步骤3关联规则转化成贝叶斯网络的一般式例,对一个关联规则,通过本发明步骤3的算法课构建的贝叶斯结构;

图4本发明模型的平均绝对误差与传统关联规则算法的比较图;

图5本发明模型的精确率和召回率与传统关联规则算法的比较图;

图6本发明模型的时间性能与传统贝叶斯网络算法的比较图。

具体实施方式

下面结合附图和实施例对本发明的技术方案进行详细的说明。

图1给出了商务网站个性化推荐方法过程,具体步骤如下:

步骤1:数据预处理。在对原始数据的探索分析的基础上,发现与分析目标无关或模型需要处理的数据,针对此类数据进行处理。通过数据清洗、数据集成和数据变换,将原始数据处理成模型需要的输入数据。其中为用户集,为网址集。

步骤2:关联规则。首先将数据集d转化成事务集dt,考虑到与贝叶斯网络对应,本发明只分析具有单个后件属性状态的关联规则前件更新问题,因此apriori算法只需检索出事务数据库中的所有2项频繁项集,利用频繁项集构造出满足用户最小提升度的规则,并根据提升度将规则按从大到小的顺序排列。

步骤3:将关联规则转化成贝叶斯网络。转化的思路就是将关联

规则中的这种依赖关系用贝叶斯网的结构表示出来。关联规则的前件网址后件网址间蕴含着一种依赖关系。贝叶斯网络如果存在从节点指向节点的有向边,则在指向的方向上,的状态条件依赖于的状态,称的一个父节点,的父节点集可以表示为。关联规则的项与贝叶斯网络的节点是对应的,贝叶斯网络中的点表示的是一个变量,指用户是否浏览网址这个二值变量,而关联规则中的项表示的是这个变量的一个状态,即用户访问网址这个事件。这样依照提升度自上而下就将各节点及其父节点找出来。

步骤4:寻找最优贝叶斯网络,并估计参数。本发明采用mcmc方法学习贝叶斯网络的结构,通过gibbs抽样算法,将局部的边增加、删除和反向的均匀分布作为抽样过程的建议分布,并利用抽样过程收敛之后产生的来自目标平稳分布的网络结构样本来估计贝叶斯网络的结构特征,构建最优贝叶斯网络。参数的学习实在最优贝叶斯网络结构的基础上进行的,本发明使用贝叶斯方法估计的参数,节点的条件概率分布都是多项式分布,因此参数的共轭先验及其后验分布都是狄利克雷分布。从关联规则的角度来看,贝叶斯网络的学习过程实际上是关联规则的优化过程。

步骤5:贝叶斯预测。目标网址是否被访问是随机变量,变量分为贝叶斯网络节点和非贝叶斯网络节点,非贝叶斯网络节点相互独立,非贝叶斯网络节点和贝叶斯网络节点相互独立,所以若是非贝叶斯节点,预测值是其边缘概率;贝叶斯网络节点条件独立,贝叶斯网络节点和非贝叶斯网络节点相互独立,若是贝叶斯节点,预测值是条件概率的乘积。

步骤6:做出推荐。将个网址的预测值排序,从中选出预测值top-n的网址推荐给当前用户。然后对模型从精度和时效两方面进行评价。统计精度方法采用指标平均绝对误差(mae)。决策支持精度指标采用精确率(precision)和召回率(recall)。时效用响应时间来衡量。

所述的步骤1具体说明如下:

抽取某法律网站三个月内(2015-02-01~2015-04-29)广州地区用户的访问数据作为原始数据集。其数据量总共有837450条记录,其中包括用户号、访问时间和访问页面。从原始数据中对重复数据、与分析目标无关的数据(律师登录助手的页面)和目录网页(无html后缀的网页)进行清洗。翻页的网址属于同一类型的网页,这些网页需要还原其原始类别。预处理后抽取245515条记录,一共108204个用户,48573个网址,作为实验数据集。记用户集为,网址集为,时间间隔集为,将实验数据整理成形如数据源

所述的步骤2具体说明如下:

首先将预处理后的数据转化为事务数据库dt,然后调用apriori算法利用迭代得到频繁集集合,生成了二项频繁集,根据支持度,提升度和置信度生成强关联规则,并按提升度排序。关联规则的生成算法具体如下:

输入:事务数据,最小支持度,最小提升度;最小置信度;。

输出:关联规则

步骤:

1)计算1项集的支持度,找到1项频繁集

2)根据apriori算法由生成2项频繁集的候选集

3)排列组合出候选集中的2项集,计算每个2项集的支持度;

筛选出2项频繁集,

4)关联规则初始化

5)对任一2项频繁集的2项,如果,且满足

,则有

6)将关联规则按照提升度从大到小的顺序排列。

所述的步骤3的具体说明如下:

记融合了关联规则的贝叶斯网络为,其中是贝叶斯网络结构,为关联规则前件和后件网址是否访问的随机向量变量,有向边集表示前后件网址间的条件依赖关系,如果存在从节点指向节点的有向边,则在指向的方向上,的状态条件依赖于的状态,称的一个父节点,的父节点集可以表示为为条件概率分布的集合,由各节点的条件概率表值构成。表示节点在其父节点集取值影响下的条件概率。

该贝叶斯网的成立还需满足以下三条假设:

假设一:假设所有前件对后件的影响都是独立的。

假设二:假设已经列尽了所有的前件。

假设三:假设没有出现的前件对后件没有影响。

贝叶斯网络结构生成的算法如下:

输入:事务数据集,待修正的关联规则

输出:贝叶斯网络结构

步骤:

1)初始化结构式

2)对于规则中的每一个频繁集,如果,那么

3)构造指针指向规则的起始位置。

4)取出指向的规则,如果间不存在有向路径,则

5)如果还没有到尽头的话,指向下一条规则,回到步骤4;

6)删除中没有边相连的节点。

所述的步骤4包括以下子步骤:

s4.1:贝叶斯网络结构学习:

根据关联规则的项集包含的网址集的被浏览记录,找到相应的用户集,构成用户网址矩阵,作为训练数据矩阵:

本发明采用mcmc方法学习贝叶斯网络的结构,通过gibbs抽样算法,将局部的弧增加、删除和反向的均匀分布作为抽样过程的建议分布,并利用抽样过程收敛之后产生的来自目标平稳分布的网络结构样本来估计贝叶斯网络的结构特征。

添加辅助变量,

辅助变量的作用是描述贝叶斯网络结构,记向量:

gibbs抽样算法的抽样过程如下:

1)将根据关联规则构造的贝叶斯网络作为初始状态,此时

2)对循环采样

3)

4)…

5)

6)…

7)

8)…

9)

以上算法收敛后得到的的稳定分布,由此构造的贝叶斯网络为所求的最优网络结构

s4.2:贝叶斯网络参数学习:

本发明采用mcmc方法学习贝叶斯网络的参数,假设各分布参数的估计是相互独立的。根据参数独立性假设,节点的条件概率

其中为网址被访问的次数,为总的实例数。令则有随机变量条件分布的参数的联合条件分布为

从参数的后验分布中应用gibbs抽样算法,具体抽样过程如下:

1)将根据关联规则构造的贝叶斯网络作为初始状态,此时

2)对循环采样

3)

4)…

5)

6)…

7)

8)…

9)

其中

后验分布的推导如下:

由于的似然函数是多项式分布,故的共轭先验分布为狄利克雷分布:

其中超先验参数

的后验分布为

其中,当时,为网址和网址同时被访问的次数,当时,为网址被访问的次数。

所述的步骤5具体说明如下:

把当前用户的历史访问网址记录,看成随机变量的一个样本,贝叶斯预测的目的就是在已知样本数据的条件下,预测各网址被访问概率,网址被访问与否的随机变量记有贝叶斯网络节点和非贝叶斯网络节点两种情况。

1.当网址为训练样本外的网址,即

2.当网址为训练样本内的网址,即

这是一个高维积分,计算复杂,我们寻求另一种思路,考虑到,且独立于,因此二项分布。

其中,记

则有的期望为:

因此

网址被访问的预测值为:

所述的步骤6具体说明如下:

平均绝对误差表示预测值与实际值的误差,推荐结果的平均绝对误差越小推荐质量越好。精确率,召回率。其中是推荐结果中推荐正确的物品的数目,是推荐结果中错误推荐的物品的数目,是应该被推荐但没有出现在推荐结果中的物品的数目。推荐结果的精确率和召回率越高,则最终得到的推荐结果越准确。下面两表分别就传统的关联规则算法,和关联规则与贝叶斯网络集成算法比较平均绝对误差值和精确率与召回率。时间性能取决于数据规模,下面分别就传统贝叶斯网络和关联规则与贝叶斯网络集成算法比较响应时间。

表1不同数据规模下的平均绝对误差

表2不同推荐数目的精确率和召回率

表3不同数据规模下的时效

综合以上分析,本发明将关联规则和贝叶斯网络两种数据挖掘方法集成运用在网站智能推荐上,使两种方法结合互补,提高了模型的精确度和运算效率。关联规则可以较快的得到节点之间的依赖关系,借助关联规则的贝叶斯网络可以快速学习达到最优结构。贝叶斯预测当前用户访问未知网址的概率,贝叶斯方法能够使先验知识和数据有机的结合,在样本数据稀疏时,能够充分利用先验知识得到可靠结果,一些过于冷门或热门网址,作为分析的异常点,在贝叶斯网络分析中也能充分利用,并得到稳健结果。

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