一种基于有向图关联规则音乐云推荐算法

文档序号:9929570阅读:632来源:国知局
一种基于有向图关联规则音乐云推荐算法
【技术领域】
[0001]本发明涉及多媒体分析技术领域,具体说是一种基于有向图关联规则音乐云推荐算法。
【背景技术】
[0002]传统的频繁项集发现算法,例如:Apr1ri(基于先验算法),Partit1n(基于分区算法)、DHP(基于散列算法)、SampIe (基于样本插值算法)等算法,发现的是隐藏在数据集中的全部的频繁项集,当处理的数据对象是稀疏集或最小支持度设定的比较高的时候,这一类算法具有很好的执行效果。但是,当我们把支持度降得很低的话或者我们处理的数据对象是稠密数据集时,例如:生物基因数据、通讯数据等等,这类算法性能下降非常快。即使是深度优先的搜索算法的性能也会受到数据集稠密性的影响。这是因为在支持度很低时或者处理数据对象是稠密数据集时,数据中存在着许多长的频繁模式,每一个长频繁模式甚至会达到包括30?40个项。这些长的频繁模式的所有的子集都是频繁项目集(子集数目的上限是2n,n是长频繁项集中项的个数)。这样的话挖掘出的所有频繁项集的数目将是一个天文数字。
[0003]以mushroom数据库为例,仅仅8416条记录的一个小的稠密数据集,当支持度降到5%时发现的频繁项集居然达到了 200万以上。如此众多的频繁项集又生成了数目众多的关联规则,这些关联规则中绝大多数都是冗余的关联规则。增加了用户充分理解关联规则挖掘的结果、迅速从挖掘结果中发现有价值的信息的难度。

【发明内容】

[0004]针对现有技术中存在的缺陷,本发明的目的在于提供一种基于有向图关联规则音乐云推荐算法,基于有向图关联规则音乐云推荐特点和特征,并能反映用户音乐库的基于相似性的音乐推荐。
[0005]为达到以上目的,本发明采取的技术方案是:
[0006]—种基于有向图关联规则音乐云推荐算法,其特征在于,包括如下步骤:
[0007]A:建立数据库
[0008]建立数据库的流程包括:建立关系型数据库、Hbase型数据库,以及从关系型数据库向Hbase型数据库迀移;
[0009]B构建有向图关联规则算法
[0010]BI制订支持度计算策略;
[0011]B2构建有向图的存储方式;
[0012]B3—般有向图关联构建;
[0013]B4完全频繁项集有向图构建:依据频繁项集的子集都是频繁项集,非频繁项集的超集都是非频繁项集,在有向项集图存储的I,2项频繁集的基础上进行项集并操作和支持该项集的交易列表的交操作便发现所有频繁项集;
[0014]B5最大频繁项集的有向图构建。
[0015]在上述技术方案的基础上,建立数据库的具体步骤为:
[0016]Al建立关系型数据库:以音乐特征元组为元素,用二位表型的关系模型数据库表示音乐特征数据及其数据之间的联系;
[0017]A2建立Hbase型数据库:建立基于列储存的分布式Hbase型数据库,以便能后期轻松改变硬件数量,提高错误兼容性;
[0018]A3从关系型数据库向Hbase型数据库迀移。
[0019]在上述技术方案的基础上,从关系型数据库向Hbase型数据库迀移的具体步骤为:
[0020]A31由解析器(Schemaparser)解析由外部工具把传统RDBMS(关系数据库管理系统)数据库导出的表模式定义文档;
[0021]A32用表模式转换器(Convertor)把传统RDBMS的表模式定义转换成Hbase的表模式;
[0022]A33用表模式适配器(Adapter)保存、读取已经由表模式转换器所转换过的表模式定义到指定文件中,并为其他模块查找新的表模式定义提供接口 ;
[0023]A34用数据表管理器(TableManager)把从初在传统RDBMS数据库中的数据迀移到Hbase数据库中对应新定义的表中;
[0024]A35令在关系型数据库中原有的表集合为A,迀移后的在HBase数据库中的表集合为B ο
[0025]在上述技术方案的基础上,制订支持度计算策略的具体步骤为:
[0026]Bll设计Tidlist存储方式:定义一个关联项的Tidlist的长度与其数据库中交易数相等,用η个二进制位来表示一个项的Tidlist,即n/8个字节;每一个字节中的一个位取值O、I对应数据库中相应的交易不支持或支持项。
[0027]在上述技术方案的基础上,构建有向图的存储方式的具体步骤为:
[0028]B21使用邻接矩阵存储表示图G=(V,E)各顶点信息之间的关系矩阵,用定义:如果(i,j) e E,则A.edge [i][j](该边权值)的值取I,否则为O;
[0029]B211保存节点中有与其边关联的另一顶点的下标和指向同一链表中的下一个边结点的指针;
[0030]B212保存该边权值。
[0031]在上述技术方案的基础上,一般有向图关联构建的具体步骤为:
[0032]B31确定有向图的结点:将所有大于最小支持度s的项按支持度降序排列组成有向项集图的结点¥={833,(:,0};
[0033]B32添加有线图中的弧:按顺序从结点集V中选择一个结点作为出发结点;
[0034]B33依次选择点为出发结点,删除支持度不符合的点,直到结点集为空。
[0035]在上述技术方案的基础上,完全频繁项集有向图构建的具体步骤为:
[0036]B41定义候选集:一个项集的所有子集的支持度均大于或等于最小支持度的频繁项集为候选集;
[0037]B42有且只有η项频繁项集{V1,V2,…,Vn}中任何一个项在有向项集图中都存在一条指向结点vn+1的弧,则{ V1,V2,…,Vn,Vn+1}为候选集。
[0038]在上述技术方案的基础上,最大频繁项集的有向图构建的具体步骤为:
[0039]B51将数据库中的有关频繁项集的信息保存在有向项集图中,利用深度优先的搜索策略,发现最大频繁项集;
[0040]B511在访问图的某一起始结点V ;
[0041 ] B512由V出发,访问它的邻接结点再从WI出发访问的WI邻接结点W2 ;
[0042]B513从W2出发进行上述访问;
[0043]B514直到邻接表为空时或支持度不满足要求时就生成了一个最大频繁项集;
[0044]B515将生成的最大频繁项集保存在最大频繁项集的集合中;
[0045]B516返回上一层结点或选择其他邻接点继续进行m上述的访问;
[0046]B517删除那些是已经发现的最大频繁项集的子集的频繁项集;
[0047]B518直到生成所有的最大频繁项集为止。
[0048]本发明所述的基于有向图关联规则音乐云推荐算法,挖掘最大频繁项集可以有效地降低问题解的空间,对于用户有效理解数据集中隐藏的长模式具有重要的意义。算法将数据库中的有关频繁项集的信息保存在有向项集图中,基于有向项集图,利用深度优先的搜索策略,可以迅速发现所有的最大频繁项集。
【附图说明】
[0049]本发明有如下附图:
[0050]图1数据库迀移工具工作流程图;
[0051 ]图2数据迀移决策关联图;
[0052]图3优化的有向项集图;
[0053]图4基于有向图挖掘频繁项集具体过程图。
【具体实施方式】
[0054]以下结合附图对本发明作进一步详细说明。
[0055]本发明所述的基于有向图关联规则音乐云推荐算法,包括如下步骤:
[0056]A:建立数据库
[0057]建立数据库的
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1