CN103678635B - 基于标签有向图的网络音乐聚合推荐方法 - Google Patents

基于标签有向图的网络音乐聚合推荐方法 Download PDF

Info

Publication number
CN103678635B
CN103678635B CN201310705668.1A CN201310705668A CN103678635B CN 103678635 B CN103678635 B CN 103678635B CN 201310705668 A CN201310705668 A CN 201310705668A CN 103678635 B CN103678635 B CN 103678635B
Authority
CN
China
Prior art keywords
music
label
directed graph
user
gview
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201310705668.1A
Other languages
English (en)
Other versions
CN103678635A (zh
Inventor
王永滨
王珉
李樱
伏文龙
尚文倩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Communication University of China
Original Assignee
Communication University of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Communication University of China filed Critical Communication University of China
Priority to CN201310705668.1A priority Critical patent/CN103678635B/zh
Publication of CN103678635A publication Critical patent/CN103678635A/zh
Application granted granted Critical
Publication of CN103678635B publication Critical patent/CN103678635B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/635Filtering based on additional data, e.g. user or group profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

基于标签有向图的网络音乐聚合推荐方法属于网络音乐聚合领域。能够解决现有传统标签分类推荐中无法反映用户分类偏好顺序的问题。本发明充分考虑了用户、标签、音乐与认知序所构成的四元关系,利用这种关系网络进一步提高音乐推荐的精度与网络用户满意度。此技术将网络音乐特征与用户兴趣特征用有向图描述,将音乐特征有向图集合分成若干有向图类,使得每个簇中的有向图之间最大程度的同构,而不同簇中的有向图之间最大程度的相异(代表有向图之间差异)。进行相似度匹配时,不需要在整个音乐有向图集上查询,只要在与目标用户兴趣有向图相似度最高的若干有向图聚类中就能查询到目标的大部分适用有向图。进而,能够达到快速、准确地为音乐网站用户进行音乐推荐的目的。

Description

基于标签有向图的网络音乐聚合推荐方法
技术领域
本发明属于基于音乐标签的网络音乐聚合领域,用于满足网络环境中为用户推荐网络音乐等个性化音乐需求。基于标签的音乐推荐技术为网络音乐聚合服务带来了新的表现力,但是这些研究主要围绕平面分类标签。平面分类标签技术存在的问题是标签之间属于离散关系,也即标签之间属于并列关系和无序关系,无法体现出用户对音乐标注的分类偏好,无法反映用户在分类时的认知序。为更精准地进行音乐推荐,必须改善改善平面分类这一问题。本发明提供了一种基于标签有向图的网络音乐聚合推荐方法。通过此方法,可以为用户更有效、准确的推荐网络音乐。
背景技术
作为Web2.0环境下的一个核心理论,社会标签自从产生后就得到了大众的广泛关注。当前,社会标签的应用研究主要集中在图书馆信息服务、图书馆编目、博物馆、企业以及教育领域。这种标签技术体现了用户、网络资源和标签之间的三维关系。它提供了一个观察用户与资源之间关系的视角,为反映用户偏好提供了依据,是实现个性化服务的重要途径。有必要进一步提升标签的价值,充分利用标签可以反映用户偏好和音乐资源内容的特点,并将其应用到个性化推荐系统中,以此解决推荐系统的推荐精度偏低的问题,提高推荐系统的准确性和交互性。
关于这方面的研究在国外刚刚开始,国内的相关技术还很少。标签推荐技术依据其推荐策略可分成基于内容的标签推荐技术、协同标签推荐技术、基于社会关系的标签推荐技术、基于图的标签推荐技术、基于加权的标签推荐技术等方面。
基于内容的标签推荐技术的主要思想是,标签是用户自发标注在音乐上,其反映了音乐的分类、内容和主题。因此,音乐在内容上的相似度表明所标注的标签也应是相似的。基于内容的标签推荐技术一般应用在音乐可以进行特征描述的领域,如文档、产品等。这种方法采用分类和聚类的方法进行文档分类,相关的文档聚集形成文档类别,标签是用来标注文档的,因此,相关的文档也会有类似的标签,利用文档之间的相似度确定相似的标签,由此为用户推荐合适的标签。此技术考虑了标签与音乐内容之间的相互关系,为标签的语义指明了新方向。然而,这种技术缺乏对用户主体的考虑。
协同标签推荐技术是根据用户在音乐上的标注行为特征和标签规律确定相似的音乐群或用户群,即利用标签来确定音乐之间的相似度和用户之间的相似度,然后利用这些相似音乐群或用户群所使用的标签进行推荐。协同标签推荐技术不考虑音乐本身的描述特征,用于不易提取音乐特征的领域进行标签推荐,如图像、音频等非文档音乐。协同标签推荐系统应用最广泛的推荐策略是标签的共现思想。这种技术在基于内容的标签推荐技术基础上,将用户、标签与音乐统一考虑,给出了基于标签对用户之间、音乐之间相似度的一种度量策略。但是,此方法缺乏对用户兴趣识别、音乐特征识别及其用户兴趣与音乐特征相似度的度量方法。因此,这种技术灵活性差、难以适应网络环境下多样化聚合的需求。
基于社会网络的网络音乐聚合技术,核心是通过用户社会关系进行个性化的协同标签推荐。首先,利用用户在音乐上所标注的标签建立用户与音乐之间的关系;然后,依据标签的共现和相似度建立音乐与音乐之间的关系;最后,利用用户在社会网络中的联系建立用户与用户之间的关系,由此形成三维关系的图模型,利用随机游走算法在三维关系图模型上形成用户的标签群,利用标签群为用户推荐符合用户偏好的标签。社会标签系统中的三维关系通过映射的方法分成用户与标签之间、用户与音乐之间的二维关系,采用经典的协同过滤方法寻找用户的近邻,由近邻的标签集为用户进行标签推荐。这种技术充分利用了权威邻居用户对目标用户的影响作用,权威用户的标签可以辅助当前用户对同一音乐的标注。严格来讲,此技术仍然是以用户相似度为中心,给出了用户、标签两种元素下的推荐策略,缺乏对音乐特征和用户自身偏好的分析支持。
基于图的标签推荐技术是将用户、音乐、标签三者的关系构成三维的图结构,利用图结构进行标签推荐。其主要思想是重要性传递理论,重要的用户采用了重要的标签所标注的音乐,意味着该音乐也是重要的,同理,标注在重要音乐上的标签,该标签也是重要的。基于此思想,标签系统中音乐、用户、标签三者的关系通过这种方式互相增强,形成了完全的三维关系图结构,采用基于图遍历的算法完成标签推荐,常见的推荐思想是采用随机游走算法在关系形成的图结构中为用户确定推荐的标签。此技术仍然是以用户相似度为中心,给出了用户、标签两种元素下的推荐策略。缺乏对音乐特征和用户自身偏好的直接分析支持。
基于标签的个性化推荐技术比较广泛的应用是利用标签形成加权标签向量为用户偏好建模。现有的研究与技术中,基本围绕用户在音乐上标注标签的频率、次数、出现的特点等信息,采用概率计算模型等方法统计这些信息的规律,然后把规律转换成可计算的量,用这些量来反映用户的偏好,从而完成个性化推荐系统中的协同过滤推荐算法。例如last.fm音乐搜索网站使用标签的频率表达用户偏好,这不仅具有基于曲目的推荐算法同样的推荐准确性,还具有多样性和新颖性。但是,此技术具有两个明显不足之处:(1)缺乏对音乐特征的考虑;(2)用户偏好方法仅是给出单个标签偏好度量的策略,并未考虑用户多标签组合偏好的情况。
综上,上述基于标签的音乐推荐技术主要围用户、音乐与标签之间的关系展开,为网络音乐推荐系统带来了新的表现力。但是,基于标签的音乐推荐系统中,主要利用标签共现的思想,这些研究都是建立在标签采取平面分类技术的基础上。平面分类法存在的问题是标签之间属于离散关系,无法体现出用户对音乐标注归类之时的分类认知序。本发明建立在一种四元立体关系上,采取有向标签反映用户对音乐分类标注时的认知顺序,形成用户、标签、音乐与认知序的四元关系。采取四元关系,定位于创新性的提高了音乐聚合推荐的精度。
发明内容
本发明的目的在于提供一种网络音乐的推荐技术解决方案,能够解决现有传统标签分类推荐中无法反映用户分类偏好顺序的问题,也能够进一步提高音乐推荐的准确性。本发明的网络音乐推荐解决方案围绕用户、音乐、标签及其认知序等四元素建立四元关系。利用这种四元关系网络进一步提高音乐推荐的精度与网络用户满意度,为网络音乐聚合推荐精度的提高开辟了新方向。
本发明的目的是提供一种网络音乐推荐解决方案:一种基于标签有向图的网络音乐聚合推荐方法,包括以下四个步骤:
步骤一:实现音乐标注:用于采集用户在网络音乐访问时对网络音乐的标注数据,形成标签序列数据记录。从用户视角,可以记录用户对不同音乐的每一次标注过程,都产生一个标签序列;从音乐视角,可以记录当前音乐被不同用户的不同标注。标签序列数据是整个推荐系统的原始数据,它记载了标注时的标签顺序。
步骤二:实现特征建模:从用户角度,在用户自己的标签序列集中挖掘、提取用户兴趣特征有向图;从音乐角度,在音乐的标签序列集中挖掘、提取网络音乐特征有向图。特征有向图用以抽象表达用户兴趣特征模型或网络音乐特征模型。
步骤三:实现音乐聚类:为了高效的音乐推荐,本步骤的核心是利用有向图同构度技术,实现音乐特征有向图集合的聚类划分,形成聚类簇。
步骤四:实现音乐推荐:当用户登录网络音乐网站时,为目标用户快速准确的实现音乐推荐,达到兴趣适应的目的。
本发明的网络音乐推荐解决方案包括上述四个步骤,步骤一至步骤四呈现先后依赖关系,参见图1.网络音乐聚合系统的特征架构。
下面详细描述本发明的网络音乐聚合解决方案,具体说明如下:
步骤一:音乐标注
在当前步骤中,用户可以登录音乐网站进行音乐标注,并记录标注序列及其标注顺序。标注顺序一定程度上反映了用户对当前音乐分类的顺序偏好。音乐认知序是指用户先后使用不同分类词对音乐进行标注所形成的先后顺序。本发明的音乐标注方法特征在于记录用户标注音乐分类时分类顺序。在传统用户、标签与音乐之间的三元关系基础上,形成一种四元音乐服务模型,由用户、标签、音乐与认知序构成。基于四元音乐服务模型的标注行为中用户为主体、网络音乐为客体、标签为载体、认知序为标注时先后顺序。
音乐标注操作过程为:
[S1.1]用户通过身份认证成功后登录到音乐网站系统中,选择自己偏好的网络音乐;
[S1.2]开始访问选中的音乐,诸如播放、查看详细信息;
[S1.3]系统读取当前音乐网站已存在的音乐标签,以自由分类的方式自动显示为类别信息;
[S1.4]用户根据自己对当前网络音乐的特征感知,在音乐类别标签中选择当前网络音乐所属分类;
[S1.5]用户持续再感知当前网络音乐的特征,继续在音乐类别标签中选择当前音乐的所属于的分类;
[S1.6]若用户认为在音乐类别标签中无法找到当前音乐适合的类别,可以通过系统的自定义标签功能,根据对音乐特征的感知分析,自由的创建分类标签。
[S1.7]用户自由的创建分类标签时,系统自动默认当前音乐归属于当前分类。
[S1.8]在上述步骤中,用户每次点击设置分类标签,系统一方面自动记录标签与音乐之间的分类关系,同时记录用户标注的先后顺序;
[S1.9]系统自动根据用户选择的标签顺序,形成标注序列。
标注序列是一种标签顺序排列,系统可以根据使用标注词的顺序为用户形成标注序列。
标签词之间存在前置关系和后置关系,具体如图2所示。该图中表示了某一用户针对某一音乐所使用的标签序列。
在标注行为中标签标注及标注认知序称为<k1,...,kz,...,kx>,简称标签序列,其中x为此次标注过程中所用的标签数量,从认知序角度k1表示标注的第1个标签,kz表示标注的第z个标签,kx表示标注的第x个标签。
[S1.10]标签序列关联至用户及其网络音乐
标签序列<k1,...,kz,...,kx>不是孤立的,应与用户、网络音乐建立关联。建立关联的目的是形成用户标注记录以及音乐被标注的记录。关联行为分为关联用户与关联网络音乐,具体如下:
(1)关联用户
为用户与标签序列建立关联,将标签序列存储为用户标签序列。若用户为Users,其中s为当前用户的ID编号;<k1,...,kz,...,kx>为标注行为所产生的标签序列;gusers表示<k1,...,kz,...,kx>关联Users后的标签序列,其中gusers与Users中s的意义与数值保持一致,均为当前用户的ID编号。关联用户形成如下记录:
guser s = &lang; User s ; k s 1 , . . . , k s z , . . . , k s x &rang;
其中:x为此次标注过程中所用的标签数量;从用户Users角度,表示用户Users标注的第1个标签,表示用户Users标注的第z个标签,表示用户Users标注的第x个标签。
(2)关联音乐
为音乐与标签序列建立关联,将标签序列存储为音乐标签序列。若网络音乐为Musicj,其中j为当前音乐的ID编号;<k1,...,kz,...,kx>为标注行为所产生的标签序列;gmusicj表示<k1,...,kz,...,kx>关联Musicj后的标签序列,其中gmusicj与Musicj中j的意义与数值保持一致,均为当前网络音乐的ID编号。关联网络音乐形成如下记录:
gmusic j = &lang; Music j ; k j 1 , . . . , k j z , . . . , k j x &rang;
其中:x为此次标注过程中所用的标签数量,与关联用户中x相同,表示同一个标签序列中标签的数目;从网络音乐Musicj角度,表示网络音乐Musicj被标注的第1个标签,表示网络音乐Musicj被标注的第z个标签,表示网络音乐Musicj被标注的第x个标签。
[S1.11]创建标签序列历史记录
标签序列的历史记录用于以时间为序记录用户所进行的标注以及网络音乐所被进行的标注。因此,标签序列的历史记录分为用户标注的历史记录以及网络音乐被标注的历史记录。
具体如下:
(1)创建用户标注的历史记录
对于用户Users,其中s为当前用户的ID编号,可以针对不同网络音乐进行不断地标注形成标签序列。假设以时间为顺序积累了m个标签序列,定义该集合为:
g SetToUser s = { guser s 1 , . . . , guser s m } .
其中:表示某音乐用户Users在不同时间、针对不同音乐进行标注的标签序列,第1次标注的标签序列称为后续以此类推,第m次标注的标签序列称为
上述步骤[S1.1-S1.11]为音乐用户输出用户的标签序列集。(2)创建网络音乐被标注的历史记录
网络音乐Musicj(其中j为当前音乐的ID编号)可以被不同用户进行不断地进行标注形成标签序列,假设以时间为顺序积累了n个标签序列,定义该集合为:
gSetToMu sic j = { gmusic j 1 , . . . , gmusic j n }
其中:表示不同用户在不同时间针对同一音乐Musicj进行标注的标签序列,第1次标注的标签序列称为后续以此类推,第n次标注的标签序列称为
上述步骤[S1.1-S1.11]为网络音乐输出网络音乐的标签序列集。
步骤二:特征建模
本发明的上述内容中给出了如何持续不断的进行音乐标注而形成用户标签序列集 g SetToUser s = { guser s 1 , . . . , guser s m } 和音乐标签序列集 gSetToMu sic j = { gmusic j 1 , . . . , gmusic j n } 的过程。本发明在此步骤中给出了将用户标签序列集和音乐标签序列集转换为特征有向图的方法,包括用户特征和网络音乐特征的有向图。本发明的特征在于用有向图模型表达用户兴趣特征和网络音乐特征。当前步骤二说明了本发明给出的特征建模解决方案如何分别对用户标签序列集和网络音乐标签序列集,利用数学建模方法形成用户兴趣特征有向图和网络音乐特征有向图。本发明中用户兴趣特征和网络音乐特征有向图如下图3所示。其中的k1至k15表示节点;旁边的括号中的数值表示节点出现的次数,两个节点之间出现的括号中的数值表示有向边出现的次数。
本发明特征建模解决方案以相关标签序列的集合为输入,最终输出形成一种标签有向图,在本发明中又称为特征有向图。标签有向图由标签节点及其频度属性、有向边及其频度属性构成。本发明的特征在于为标签节点和有向边分别引入了频度属性值,用来代表出现次数。通过特征建模解决方案形成标签有向图的核心是统计度量技术。本发明采用了标签节点频度度量方法和有向边频度度量方法,下面给出本发明所提出的特征建模解决方案具体内容。
假设标签序列集合为G={g1,…,gw},其中w为标签序列的总数,g1,…,gw分别为G中不同的标签序列。G既可以代表用户标签序列集此时w=m;也可以代表音乐标签序列集此时w=n。
相关定义如下:
定义1.标签词频度的度量Count(t)
给定标签为t,t为标签序列集合G={g1,…,gw}(w≥1,w为标签序列的总数)中的任意标签。设定属性tFreq代表t在标签序列集合G={g1,…,gw}(w≥1,w为标签序列的总数)中的出现总数,代表标签t的使用频度,因此可称为频度属性。
t的频度属性tFreq度量函数为Count(t)。Count(t)作用是遍历统计当前标签序列集合G={g1,…,gw}中标签t的总计使用次数。
tFreq = Count ( t ) = &Sigma; &lambda; = 1 w Find ( g &lambda; , t ) (公式1)
其中,gλ表示标签序列集合G={g1,…,gw}(w≥1,w为标签序列的总数)中的第λ个标签序列(1≤λ≤w)。
如果标签t∈gλ,则Find(gλ,t)=1;否则Find(gλ,t)=0。
定义2.有向边频度的度量Count(e)
有向边代表两个节点之间的连接边是有向的,代表一种顺序关系。假设有向边e为tα→tβ(其中tα是tβ为标注序列中先后用来分类的两个标签,α与β在此用来区分标签编号并无其它真正数值上的意义),在标注序列中有向边e代表两个标签tα与tβ存在邻接关系。对有向边e为tα→tβ,则tα是tβ前置标签。
设定属性eFreq代表有向边e在标签序列集合G={g1,…,gw}(w≥1,w为标签序列的总数)中的出现总数,代表使用频度,因此可称为频度属性。
有向边d的频度函数Count(e),度量法则是遍历统计标签序列集合G={g1,…,gw}中有向边e的出现次数。
eFreq = Count ( e ) = &Sigma; &lambda; = 1 w Find ( g &lambda; , e ) (公式2)
其中,gλ表示标签序列集合G={g1,…,gw}中的第λ个标签序列(1≤λ≤w)。
如果有向边e∈gλ,则Find(gλ,e)=1,否则Find(gλ,e)=0。
在本发明所创新提出的标签节点频度度量方法和有向边频度度量方法基础上,本发明给出将标签序列集G={g1,…,gw}(w为标签序列的总数)通过特征建模解决方案形成特征有向图gview的方法。具体实施步骤包括:
[S2.1]初始定义gview代表标签有向图,gview初始为空;
[S2.2]读取输入中提供的标签序列集G={g1,…,gw};
[S2.3]遍历G={g1,…,gw}(w≥1,w为标签序列的总数)中每个标签序列,利用标签节点频度度量方法Count(t)度量G={g1,…,gw}(w≥1,w为标签序列的总数)中每个不同标签节点t的频度属性,获得标签节点t的频度属性值tFreq=Count(t);
[S2.4]将G={g1,…,gw}标签节点合并添加到有向图gview中作为标签节点,每个标签节点t的频度属性由上述第3步获得,即tFreq=Count(t);
[S2.5]遍历G={g1,…,gw}(w≥1,w为标签序列的总数)中每个标签序列,利用有向边频度度量方法度量G={g1,…,gw}中每个不同有向边e的频度属性Count(e),获得不同有向边的频度属性值eFreq=Count(e);
[S2.6]将G={g1,…,gw}(w≥1,w为标签序列的总数)中的有向边合并添加到gview中,每个有向边e的频度属性由上述第5步获得,即eFreq=Count(e);
[S2.7]输出有向图gview。
通过上述第[S2.1]至[S2.7]步,可以形成有向图gview,图形结构类似于图3所示。
本发明的特征建模步骤主要目的为形成音乐网站用户的兴趣特征有向图和网络音乐的特征有向图。
对用户Users的不同标签序列集gSetToUsers={gusers 1,…,gusers m},m为当前用户Users标签序列集合的元素总数,采用本发明特征建模方案后,统计形成gviewUsers。对不同用户的标签序列集合建模后分别形成如下集合:
GviewSetToUser={gviewUser1,...,gviewUsers,...,gviewUserM}
其中:
gviewUsers,其中1≤s≤M,是指用户系统中第s个用户通过特征建模方案所形成的用户兴趣特征有向图,其中M表示音乐网站用户总数,M≥1。
对网络音乐Musicj的不同标签序列集n为网络音乐Musicj标签序列集合的元素总数,采用本发明特征建模方案后,统计形成gviewMusicj。对不同网络音乐得标签序列集合建模后分别形成了如下有向图集合:
GviewSetToMusic={gviewMusic1,...,gviewMusicj,...,gviewMusicN}
其中:
gviewMusicj,其中1≤j≤N,是指网络音乐库中第j首音乐通过特征建模方案所形成的音乐特征有向图,其中N表示音乐库中的音乐总量,N≥1。
总结,本发明的当前步骤输出每个用户的兴趣特征有向图与每个网络音乐的特征有向图。
本发明定位于为用户更有效、准确的推荐网络音乐。在获得每个用户的兴趣特征有向图与每个网络音乐的特征有向图之后,按照如下方式进行处理:
(1)将用户的兴趣特征有向图作为目标有向图,转入步骤四中音乐推荐过程。将在步骤四中音乐推荐过程说明如何利用目标有向图达到为用户推荐音乐的目的。
(2)将网络音乐的特征有向图进行分类,为网络音乐建立分类的方案转入步骤三种音乐聚类过程进行说明。
步骤三:音乐聚类
在本发明中音乐聚类阶段,核心任务是根据音乐特征有向图分布和规律,将已有音乐集合按照有向图相似性规则划分为若干音乐子集。
聚类是根据数据对象的相似性或相异度进行的一种数据分类划分技术。为了完成本发明的音乐聚类,本发明给出了支持音乐聚类的有向图相似性度量方法,并且本发明在所提出的有向图相似性度量方法上,创新性的给出了音乐特征有向图的聚类方案,弥补了现有聚类方法的不足。
在当前步骤三音乐聚类中,本发明首先给出了通用的有向图相似性度量方法。本发明的特征创新性的丰富了有向图同构理论,从结构角度分析了两个有向图的相似度。在传统图同构技术中,不支持兼顾考虑节点或边有属性值及其有向边等因素。所以,传统图同构技术并不适应于本发明的有向图领域。为了更好的将同构度思想引入到本发明中,本发明进行了同构理论定制创新,提出了有向图同构的度量方法。如下定义3至定义7是有向图同构度度量的理论支持,说明如下:
定义3.标签有向图
标签有向图gview=<V,E,LV,LE>,其中:
gview为有向图;
V为gview中节点的集合;
E为gview中有向边的集合;
LV为gview中节点的频度值;
LE为gview中有向边的频度值;
定义4.同构标签子图
给定两个标签有向图gview=(V,E,LV,LE)和gview'=(V',E',LV',LE'),其中:
假设存在一个标签有向图fview,满足如下两个规则:
(1)如果任意节点v∈fview,都有v∈gview且v∈gview’;
(2)如果任意有向边e∈fview,都有e∈gview且e∈gview’。
则称标签有向图fview是gview与gview’的同构标签子图。gview与gview’是fview的父图。
定义5.有向图同构性
若gview与gview’有同构子图,则称有向图gview与有向图gview’存在有向图同构性。
定义6.子图同构度
假设:与其它有向图存在同构性有向图为gview,同构子图为fview。
假设:V与E表示同构子图fview中的标签节点集合和有向边的集合。从上述特征建模技术中的频度视角,fview图中V与E在gview存在频度属性值。从频度属性角度,定义子图fview在父图gview上的同构度φ(fview,gview)为:
(公式3)
其中:
(1)sum(v,fview)表示累加计算得出子图fview中的总节点数;
(2)LV(v,gview)表示获取有向图节点v在有向图gview上的频度属性值tFreq;
(3)sum(e,fview)表示累加计算得出子图fview中的有向边总数;
(4)LE(e,gview)表示获取有向边e在有向图gview上的频度属性值eFreq;
φ(fview,gview)综合考虑了子图fview中节点量和有向边的规模,并考虑这两者的频度属性值相对父图gview所占百分比;反映出如下规律:
(1)fview中节点越多,与父图gview同构度越高;
(2)fview中有向边越多,与父图gview同构度越高;
(3)fview中节点的频度属性和在父图gview中的节点频度属性和所占百分比越高,与父图gview同构度越高;
(4)fview中有向边的频度属性和在父图gview中的有向边频度属性和所占百分比越高,与父图gview同构度越高;
定义7.有向图同构度
假设,两个有向图为gview与gview’,存在同构子图为fview。子图fview与gview、gview’的同构度分别为φ(fview,gview)、φ(fview,gview'),则有:
&mu; ( gview , gview &prime; ) = [ &phi; ( fview , gview ) ] 2 + [ &phi; ( fview , gview &prime; ) ] 2 (公式4)
其中:
(1)φ(fview,gview)为子图fview与父图gview的同构度,计算法则见(公式3);
(2)φ(fview,gview')为子图fview与父图gview’的同构度,计算法则见(公式3);
(3)μ(gview,gview')表示存在同构子图fview的两个有向图gview、gview’之间的同构度μ。
可以得出:
(1)子图fview与父图gview的同构度φ(fview,gview)越高,父图gview、gview’之间的同构度μ越高;
(2)子图fview与父图gview’的同构度φ(fview,gview')越高,父图gview、gview’之间的同构度μ越高。
由于领域的差异化,聚类技术目前主要采用向量相似性技术为主,已有聚类技术现状中缺乏适用于有向图的聚类技术。本发明关注于有向图聚类问题,为此,本发明创新的给出音乐特征有向图领域的聚类问题解决方案。
假设在网络音乐网站上,网络音乐库中网络音乐共有N首(N≥1,为网络音乐库中音乐总量)。
MusicSet={Music1,...,Musicj,...,MusicN}
其中:Musicj表示音乐库中的第j首音乐,1≤j≤N。
根据步骤二对MusicSet进行特征建模,获得音乐特征有向图集合
GviewSetToMusic={gviewMusic1,...,gviewMusicj,...,gviewMusicN}
其中:gviewMusicj,其中1≤j≤N,是指网络音乐库中第j首音乐通过特征建模方案所形成的音乐特征有向图,其中N表示音乐库中的音乐总量,N≥1。
音乐特征有向图集合GviewSetToMusic聚类问题可以这样描述:
(1)将有向图集合通过聚类方法分成若干有向图聚类簇;
(2)每个聚类簇中的有向图之间具有最大程度的同构度;
(3)不同聚类簇中的有向图之间最大程度的相异(代表有向图之间差异)。
通过聚类方法将数据对象进行划分时,经常产生聚类领域所谓冷启动和稀疏等现象。为了避免这两种问题,更加高效地完成本发明中的音乐聚类过程,采取人工动态设置分组数量的方法。将音乐特征有向图集合GviewSetToMusic分成d组,其中,d由音乐网站管理者根据音乐集总量所动态设置的分类规模参数。即:
GviewSetToMusic={C1,...,Ci,...,Cr...,Cd}(d代表分组数,一般d≥3);
Ci∩Cr=Φ(Ci、Cr为不同的分组,两者交集为空)。
其中:
i≠r,对任意的1≤i≤d,1≤r≤d,且
求解上述聚类分组(又称聚类簇)的过程称为音乐特征有向图聚类过程。
Ci={gviewMusici 1,gviewMusici 2,...gviewMusici h}(1≤i≤d,d代表分组数)称为音乐特征有向图集合GviewSetToMusic的第i个聚类簇,其中h为聚类划分后聚类簇Ci的有向图总数。这些音乐有向图聚类簇满足以下要求:
(1)每组至少应包含一个音乐有向图;
(2)每个音乐有向图必须属于且只属于某一音乐有向图聚类簇。
CCi(1≤i≤d)为对应聚类簇Ci(1≤i≤d)的聚类中心(Center of Ci,简称CCi),一般聚类中心是对应聚类簇的特征代表。本发明中采用均值策略求解聚类簇的聚类中心,在本发明中聚类中心也是有向图。下面说明利用均值策略求解有向图聚类中心CCi(1≤i≤d)的具体步骤。
如上所述,假设Ci={gviewMusici 1,...,gviewMusici y,...,gviewMusici h}为有向图集合GviewSetToMusic的第i个聚类簇,其中h为聚类簇Ci的有向图总数,1≤i≤d,其中gviewMusici y表示第i个聚类簇中第y个音乐特征有向图。
[S3.1.1]读入音乐特征有向图聚类
Ci={gviewMusici 1,...,gviewMusici y,...,gviewMusici h};
[S3.1.2]创建聚类中心有向图CCi(此处i与聚类中Ci中i保持一致),初始为空;
[S3.1.3]从Ci={gviewMusici 1,...,gviewMusici y,...,gviewMusici h}中按编号1,…,y,…,h从中顺序选择一个有向图gviewMusici y(1≤i≤d,1≤y≤h);
[S3.1.4]将gviewMusici y中每个节点v添加到聚类中心有向图CCi中,添加方法如下:
1)如果已经存在节点v∈CCi(说明节点v已经添加到聚类中心有向图CCi),则不需要在CCi再增加新节点v,将聚类中心的v节点频度属性CCi.v.tFreq累加,采取如下法则进行累加:
CCi.v.tFreq=CCi.v.tFreq+gviewMusici y.v.tFreq,其中gviewMusici y.v.tFreq代表gviewMusici y中待合并节点v的频度属性值,CCi.v.tFreq表示聚类中心CCi中已存在的节点v的频度属性值;
2)如果不存在节点v∈CCi(说明节点v尚未添加到聚类中心有向图CCi),即当前有则需要在CCi再增加新节点v,将聚类中心v节点频度属性CCi.v.tFreq赋值为gviewMusici y中待合并节点v的频度属性值,采取如下法则进行赋值:
CCi.v.tFreq=gviewMusici y.v.tFreq,其中gviewMusici y.v.tFreq代表gviewMusici y中待合并节点v的频度属性值。
[S3.1.5]将gviewMusici y中每个有向边e添加到聚类中心有向图CCi中,添加方法如下:
1)如果已经存在有向边e∈CCi(说明有向边e已经添加到聚类中心有向图CCi),则不需要在CCi再增加新有向边e,将聚类中心有向边e的频度属性CCi.e.eFreq累加,采取如下法则进行累加:
CCi.e.eFreq=CCi.e.eFreq+gviewMusici y.e.eFreq,其中gviewMusici y.e.eFreq代表gviewMusici y中待合并有向边e的频度属性值,CCi.e.eFreq表示聚类中心CCi中已存在的有向边e的频度属性值;
2)如果不存在有向边e∈CCi(说明有向边e尚未添加到聚类中心有向图CCi),则需要在CCi再增加新有向边e,将聚类中心有向边e的频度属性CCi.e.dFreq赋值为gviewMusici y中待合并有向边e的频度属性,采取如下法则进行赋值:
CCi.e.eFreq=gviewMusici y.e.eFreq,其中gviewMusici y.e.eFreq代表待合并有向边e的频度属性值,CCi.e.eFreq表示聚类中心CCi中合并后有向边e的频度属性值;
[S3.1.6]循环步骤[S3.1.3]至第[S3.1.5]步,直至Ci(1≤i≤d)中各有向图中节点和有向边元素合并至聚类中心CCi(1≤i≤d)中。
[S3.1.7]本发明使用均值频度属性代表聚类中心CCi(1≤i≤d)中每个节点v和每个有向边e的频度属性,因此将第[S3.1.6]步得到的聚类中心CCi(1≤i≤d)的每个节点v和每个边e的频度属性累加和进行均值化处理,其中聚类划分后聚类簇Ci的有向图总数为h,执行如下策略:
1)对聚类中心CCi(1≤i≤d)中每个节点v的频度属性均值化:
代表向上取整,等式左面的CCi.v.tFreq表示聚类中心CCi中节点v的频度属性值(使用均值属性值表示)。
2)针对聚类中心CCi(1≤i≤d)中每个有向边e的频度属性值均值化:
代表向上取整,等式左面的CCi.e.eFreq表示聚类中心CCi中有向边e的频度属性值(使用均值属性值表示)。
[S3.1.8]输出聚类簇Ci(1≤i≤d)的对应聚类中心有向图CCi(1≤i≤d)。
下面给出本发明中音乐有向图集合的聚类划分解决方案,具体包括步骤:
[S3.2.1]初始创建下述变量:
①创建聚类簇的数目d,初始为0;
②创建聚类簇集合C={C1,C2,…,Cd},其中d个聚类簇C1,C2,…,Cd均初始为空,用C={C1,C2,…,Cd}表示聚类划分过程中的最新划分结果;
③创建聚类中心集合CC={CC1,CC2,…,CCd},每个聚类中心CCi代表第i个聚类簇Ci的平均特征(1≤i≤d),初始为空。其中CC1代表聚类C1的平均特征,CC2代表聚类C2的平均特征,CCd代表聚类Cd的平均特征;
④创建聚类簇集合Cprev={Cprev_1,Cprev_2,…,Cprev_d},其中d个聚类簇Cprev_1,Cprev_2,…,Cprev_d初始为空,用Cprev={Cprev_1,Cprev_2,…,Cprev_d}表示聚类划分过程中的上次划分结果。
[S3.2.2]设置上述变量的初始所需数据值:
①对聚类簇数目d采用前文所述按需动态设置的策略,赋值为一个大于3的整数;
②将有向图集合GviewSetToMusic随机划分为d组,将划分结果赋值为C={C1,C2,…,Cd},保证每个聚类簇C1,C2,…,Cd中至少有一个音乐特征有向图;
③利用均值策略方案步骤[S3.1.1]至步骤[S3.1.8],为每个聚类簇C1,C2,…,Cd求解有向图聚类中心CCi(1≤i≤d),得到CC={CC1,CC2,…,CCd};
④聚类簇集合Cprev={Cprev_1,Cprev_2,…,Cprev_d}的数据值在下述[S3.2.3]循环确定。
[S3.2.3]执行下述循环步骤:
设置聚类簇集合Cprev=C,即Cprev_1=C1,Cprev_2=C2,…,Cprev_d=Cd,用户支持音乐特征有向图的循环再聚类。
从Cprev_1,Cprev_2,…,Cprev_d中逐一选择每一个聚类簇Cprev_i(1≤i≤d);
如果Cprev_i(1≤i≤d)不为空,则从聚类簇Cprev_i(1≤i≤d)中逐一选择每一个有向图其中:
1≤a≤|Cprev_i|,||代表求取集合中元素规模;
计算μ(CC1),...,μ(CCd)(参见公式3);
根据同构度μ大小,判断与哪一个聚类中心的同构度最高,将归并至最高同构度聚类中心对应的聚类中。
利用均值策略方案步骤[S3.1.1]至步骤[S3.1.8],为每个聚类簇C1,C2,…,Cd求解有向图聚类中心CCi(1≤i≤d),得到CC={CC1,CC2,…,CCd};
[S3.2.4]循环直至聚类簇C与聚类簇Cprev相同时退出上述循环步骤;
[S3.2.5]返回音乐特征有向图的聚类划分结果聚类簇C={C1,C2,…,Cd}。
通过本发明的音乐特征有向图聚类方案,生成的d个音乐特征有向图聚类簇,对应有d个聚类中心;d个聚类中心作为d个音乐特征有向图聚类簇的均值代表。
聚类簇集合表示为C={C1,C2,…,Cd};
聚类中心表示为CC={CC1,CC2,…,CCd};
其中CCi(i=1,2,…,d)表示该聚类Ci(i=1,……,d)中所有音乐特征有向图的均值描述。
步骤四:音乐推荐
本发明音乐推荐解决方案是利用步骤三中音乐特征有向图聚类划分的结果与步骤二中用户的兴趣特征有向图的进行相似性匹配,挖掘与用户兴趣特征有向图同构度较高的音乐特征有向图,进而达到为用户推荐音乐的目的。
与目标用户兴趣特征有向图相似的音乐特征有向图,大部分分布在与目标用户兴趣特征有向图同构度较高的若干个音乐特征有向图聚类簇中。因此,不需要在整个音乐特征有向图集上查询与目标用户兴趣特征有向图相似的有向图,只要在与目标用户兴趣特征有向图同构度较高的若干音乐特征有向图聚类簇中就能查询到大部分适用有向图。由于与目标用户兴趣特征有向图相似度较高的若干音乐特征有向图聚类相对于整个有向图集而言,其有向图选择分析的复杂度要小得多,所以本发明提出的方法可以快速识别与目标用户兴趣特征有向图同构度较高的音乐特征有向图列表。在此基础上,本发明给出了网络音乐推荐的快速解决方案,该方案具体操作步骤构成如下:
[S4.1]读入如下参数
①目标用户兴趣特征有向图gviewToUser,来自于本发明步骤二中所确定的用户兴趣特征有向图集合GviewSetToUser,gviewToUser∈GviewSetToUser;
②音乐特征有向图聚类划分结果C={C1,C2,…,Cd}(d≥2,d代表聚类簇的数目),来自于本发明步骤三中所确定的音乐特征有向图聚类划分结果;
③音乐特征有向图聚类中心CC,存在CC={CC1,CC2,…,CCd}(d≥2,d代表聚类中心的数目),来自于本发明步骤三,用来描述聚类C中每个聚类簇的代表性特征;
④ξ代表同构度临界值,常取经验值ξ=3.0,ξ越高代表同构度要求越严格;
⑤p代表所希望推荐的个数,常有p≥6;
[S4.2]创建推荐列表gList[p](p代表推荐的对象规模,参见上述参数p的定义),gList初始为空。
[S4.3]对每个音乐特征有向图聚类Ci的聚类中心CCi(1≤i≤d),采用本发明提出的同构度计算方法μ(CCi,gviewToUser),其中(1≤i≤d,gviewToUser表示匹配查询的目标用户兴趣特征有向图),得到聚类中心CCi与目标用户兴趣特征有向图gviewToUser的同构度。
[S4.4]创建邻居聚类簇集合Cneighbor={Cneighbor_1,...Cneighbor_b,...},用于存储与目标有向图gviewToUser相近邻居聚类集合。
[S4.5]判断μ(CCi,gviewToUser)(1≤i≤d)是否大于同构度临界值ξ,如果大于则将聚类簇CCi加到邻居聚类簇集合Cneighbor中;如果小于则跳过执行下一步。
[S4.6]在获得邻居聚类簇集合Cneighbor中,执行下述循环:
针对上述计算得出的邻居聚类簇集合Cneighbor,从邻居聚类簇集合Cneighbor中逐一选择每一个聚类簇Cneighbor_b(1≤b≤|Cneighbor|,||代表求取邻居聚类簇集中聚类规模);
从邻居聚类Cneighbor_b中逐一选择每一个音乐有向图(1≤f≤|Cneighbor_b|,||代表求取邻居聚类Cneighbor_b中音乐特征有向图的规模,
计算μ(gviewToUser)(1≤f≤|Cneighbor_b|,计算法则参见公式3);
根据同构度μ大小,按照自高到低的顺序将(1≤f≤|Cneighbor_b|)添加到gList中;
[S4.7]通过上述循环获得邻居有向图集合gList,通过音乐特征有向图与音乐之间一对一的关联关系,得到为用户推荐的音乐列表,具体如下所述:
定义音乐列表变量MusicList[p],p代表推荐的对象规模,参见上述参数p的定义;
为gList中每个有向图元素gList[1]、gList[2]、…、gList[p]找到其所代表的网络音乐,并将其添加到音乐列表MusicList中。
[S4.8]将网络音乐列表MusicList推荐给用户。
假设目标用户为user,所推荐的最佳音乐集合为MusicList,MusicList可以作为推荐列表进行输出,推荐给用户user。
本发明中给出了MusicList的整体满足目标用户user兴趣适应度的度量方法。根据本发明中有向图同构度计算可以得出推荐精度:
G user &OverBar; = &Sigma; g &Element; gList &mu; ( g , gviewToUser ) p (公式5)
其中表示最佳有向图集对目标用户有向图gviewToUser的整体平均同构度;p代表推荐的对象规模,参见上述参数p的定义;目标用户user的兴趣特征有向图为gviewToUser。数值越大,代表推荐列表中的音乐对目标用户user的兴趣适用性越高、推荐精度越高;数值越小,代表推荐列表中的音乐对目标用户user的兴趣适用性越低、推荐精度越差。
由于有向图聚类中心集合CC的规模小于整个有向图空间集合GviewSetToMusic,即||CC||<<||GviewSetToMusic||,因此分析聚类中心对目标有向图gviewToUser同构度的时间代价相对要小。在进行目标有向图gviewToUser的最佳有向图查询时,只需要分别在对目标有向图相似度最高的邻居聚类中进行查询,而不是在整个有向图空间GviewSetToMusic中查询,因此能够高效的求解目标有向图的最适用有向图集。
如上所述,本发明设计并实现了一种为用户进行网络音乐聚合推荐的新技术。此技术将网络音乐特征与用户兴趣特征用有向图描述,将音乐特征有向图集合分成若干有向图类(称为簇,cluster),使得每个簇中的有向图之间最大程度的同构,而不同簇中的有向图之间最大程度的相异(代表有向图之间差异)。进行相似度匹配时,不需要在整个音乐特征有向图集上查询与目标用户兴趣有向图相似的音乐特征有向图,只要在与目标用户兴趣有向图相似度最高的若干音乐特征有向图聚类中就能查询到大部分适用有向图。因此,能够达到快速、准确的为音乐网站用户进行音乐推荐的目的。
附图说明
图1.网络音乐聚合系统的特征架构
图2.标签序列
图3.特征有向图模型
图4.音乐推荐过程
图5.推荐结果对比图
具体实施方式
为了使本发明所解决的技术问题、技术方案及实施效果更加清楚明白,以下对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。本发明实施方法按照专利方案构成可以分为四个阶段,如图4所示:
[P1]实施音乐标注:用于采集用户在网络音乐访问时对网络音乐的标注数据,形成标签序列数据记录。从用户视角,可以记录用户对不同音乐的每一次标注过程,都产生一个标签序列;从音乐视角,可以记录当前音乐被不同用户的不同标注。标签序列数据是整个推荐系统的原始数据,它记载了标注时的标签顺序。
[P2]实施特征建模:从用户角度,在用户自己的标签序列集中挖掘、提取用户兴趣特征有向图,用户兴趣特征有向图用来抽象表达用户兴趣;从音乐角度,在音乐的标签序列集中挖掘、提取网络音乐特征有向图,音乐特征有向图用来抽象表达音乐特征。
[P3]实施音乐聚类:为了高效的音乐推荐,本步骤核心是利用有向图同构度度量技术,实现音乐特征有向图集合的聚类划分。
[P4]实施音乐推荐:当用户登录网络音乐网站时,为目标用户快速准确的实现音乐推荐。
本发明的网络音乐推荐解决方案包括上述四个步骤,步骤一至步骤四呈现先后依赖关系。下面分别描述本发明各步骤的具体实施方法。
一、关于实施本发明的第一阶段音乐标注的方法
本发明公开了一种通过网站音乐标注进行数据采集和记录的方法,该方法包括以下步骤:
[P1.1]用户首先在网络音乐网站注册用户身份。
[P1.2]用户注册后,系统授予了用户对音乐播放与标签标注的权限。
[P1.3]在网络音乐网站,用户选择一个网络音乐进行播放时,系统给出用户可以使用的常用标签词,这些标签词是系统提供给用户可以自由分类的关键词。系统存储将自由分类标签词,存储形成标签词词库,简称tagDB。
tagDB={tag1,tag2,tag3,tag4,tag5,tag6,tag7,tag8…}。
[P1.4]在这时,用户也可自定义新的标签词,这时新的标签词也将自动更新至tagDB中。
[P1.5]在用户顺序设定音乐的分类归属时,系统自动记忆用户的标注及其顺序。
假定如下:
用户ID为:userID,在用户标注库userTagDB应保持唯一;
音乐ID为:musicID,在音乐标注musicTagDB库中应保持唯一;
标注序列为:tagm1,tagm2,tagm3,…,tagmx。其中,tagm1,tagm2,tagm3,…,tagmx是用户选择使用的标签词,来自于tagDB。
[P1.6]在存储时分别存储如下两项记录:
(1)按用户记忆分类序
库userTagDB中记录格式<userID;tagm1,tagm2,tagm3,…,tagmx>。
该记录表示,对于当前音乐,用户在分类方面形成了一定的分类认知序,也即:
tagm1→tagm2→tagm3→…→tagmx
(2)按音乐记忆分类序
库musicTagDB中记录格式<musicID;tagm1,tagm2,tagm3,…,tagmx>
该记录表示,对于当前用户,音乐在特征方面形成了一定的特征认知序,也即:
tagm1→tagm2→tagm3→…→tagmx
本发明通过如下表数据(数据来源于Baidu音乐频道)进行说明。
表1用户U“TaTa”对音乐音乐R“民俗风”的标注
二、关于实施本发明的第二阶段特征建模的方法
本发明公开了一种标签序列数据分析、挖掘形成特征有向图的方法,该方法具体实施包括以下步骤:
[P2.1]在音乐网站中将特征建模技术实现成为一个数据挖掘功能,由音乐网站管理员执行此功能操作。
[P2.2]管理员登录系统中,执行[音乐特征分析]功能可以将音乐的标签序列数据进行挖掘形成有向图,存储到音乐特征有向图数据库并以可显示到页面中进行有向图可视化展示,实际效果如图3所示。
[P2.3]管理员登录系统中,执行[用户特征分析]功能可以将用户的标签序列数据进行挖掘形成有向图,存储到用户有向图数据库并可以显示到页面中进行有向图可视化展示,实际效果如图3所示。
[P2.4]管理员登录系统中,进入音乐库,选择某一首音乐执行[查看音乐特征],系统按照音乐ID检索音乐特征有向图数据库,判断是否发现音乐特征有向图:
如果存在当前音乐的音乐特征有向图,显示到一个页面中;
如果不存在当前音乐的音乐特征有向图,将音乐的标签序列数据进行挖掘形成有向图,并追加到音乐特征有向图数据库。
[P2.5]管理员登录系统中,进入用户子系统,选择某一用户执行[查看用户特征],系统按照用户ID检索用户有向图数据库,判断是否发现用户有向图:
如果存在当前用户的用户有向图,显示到一个页面中;
如果不存在当前用户的用户有向图,将用户的标签序列数据进行挖掘形成有向图,并追加到用户有向图数据库。
下面结合模拟数据进行进一步说明本发明所给出的特征建模方法如何得出特征有向图。具体如下表2所示。
表2特征建模过程
三、关于实施本发明的第三阶段音乐聚类的方法
本发明同时公开了一种对有向图进行聚类的方法。音乐聚类功能,是由音乐网站中音乐管理员执行的。音乐网站管理员应定期随着音乐网站经营服务过程中定期、及时进行音乐聚类划分。在此过程中,音乐网站的核心功能是首先将音乐特征有向图集合分成若干有向图聚类,使得每个簇中的有向图之间最大程度的相似,而不同簇中的有向图之间最大程度的相异(代表有向图之间差异)。具体实施步骤包括:
[P3.1]管理员登录到音乐网站的后台系统中;
[P3.2]进入音乐库子系统;
[P3.3]执行[音乐聚类]功能;
[P3.4]系统自动读取网络音乐的有向图集合,读入到系统中;
[P3.5]系统自动执行音乐聚类方案,按照有向图相似性进行有向图分组,形成若干音乐聚类簇;
[P3.6]系统自动检验音乐聚类簇稳定性,判断最近两次音乐聚类簇划分结果的一致性;
[P3.7]如果最近两次音乐聚类簇划分结果不一致,表明不稳定,系统重新自动进行聚类划分;
[P3.8]如果两次音乐聚类簇结果呈现出稳定性,系统自动的停止聚类划分;
[P3.9]系统自动输出音乐特征有向图聚类簇划分结果、音乐聚类簇的聚类中心,显示到页面中;
[P3.10]系统存储音乐特征有向图聚类簇划分结果、音乐聚类簇的聚类中心。
四、关于实施本发明的第四阶段音乐推荐的方法
本发明核心是公开了一种基于有向图进行音乐推荐的方法。在进行音乐推荐时,首先要选定目标用户,然后找到与目标用户兴趣相近的网络音乐推荐给用户。本发明不需要在整个音乐库中查询与目标用户兴趣相似的音乐,只要在与目标用户兴趣相似度最高的若干音乐聚类中查询。这种音乐推荐方法具有快速、准确推荐的能力。实施音乐推荐过程如下图4所示,具体实施步骤包括:
[P4.1]进入到音乐网站的服务门户中;
[P4.2]用户选择[系统登录],系统验证并识别用户身份;
[P4.3]系统自动分析当前用户的兴趣特征有向图是否为空;
[P4.4]若当前用户的兴趣特征有向图为空,说明不具备推荐音乐的前提条件,系统不显示[您可能喜欢的音乐列表]栏目;
[P4.5]若当前用户的兴趣特征有向图存在,说明具备被推荐音乐的前提条件,系统自动为当前用户显示[您可能喜欢的音乐列表]。该列表的生成转入下步:
[P4.6]系统自动读取当前用户的用户ID;
[P4.7]系统自动根据用户ID从用户兴趣特征有向图数据库中,获得当前用户的兴趣特征有向图;
[P4.8]系统自动根据当前用户兴趣特征有向图,与[P3]中的音乐特征有向图聚类进行快速匹配;
[P4.9]系统自动得到推荐音乐特征有向图列表,该列表中的音乐特征有向图与当前用户的兴趣特征有向图最为相似,并按相似度高低排序;
[P4.10]针对推荐的音乐特征有向图列表,根据音乐特征有向图与音乐之间一对一的关联关系,获得音乐推荐列表;
[P4.11]系统自动将音乐推荐列表更新至[您可能喜欢的音乐列表]中,显示在用户页面中。
为更好的说明本发明所发明方法的性能,下面通过算法适用性与实验验证进行分析。
第一,本发明方法的适用性分析
从聚合角度,现有聚合方式可以包括单标签聚合、基于加权的多标签聚合、面向用户兴趣聚合推荐网络音乐、面向音乐特征聚合推荐类似音乐、面向用户兴趣的类似用户发现、查看好友的音乐偏好、查找偏好同一音乐的其他用户、查看用户的兴趣历史变化、统计排行榜等九种,并伴随着聚合推荐功能在网络音乐领域的推广,聚合推荐应越来越完善。下面逐一剖析本发明所提出的方法的适用性:
(1)对于单标签推荐技术
单标签技术提供了利用标签与音乐之间的二维关系,进行关联索引的技术。被标注为同一标签词的音乐,按照被标注次数排列显示给使用者。本发明方法与之形成有效的互补关系。单标签推荐和有向图相似度度量两者不存在矛盾与冲突。
(2)对于加权的多标签聚合
本发明方法与之形成有效的扩展关系。加权的多标签推荐和有向图相似度度量两者共同考虑标签的标注频度作为标签的标注属性值,但是本发明方法同时关注了标签词之间的认知偏好,是一种综合标注频度与认知偏好的系统方法。本发明的有向图标注技术,将能够更加明确的对多标签结果进行进一步区分,更有利于聚合排序。
(3)对于面向用户兴趣聚合推荐网络音乐
可通过本发明所提出的用户兴趣有向图与音乐特征有向图进行匹配,充分利用本发明所提出有向图聚类方法与协同过滤推荐技术,更加高效完成发现各聚类的最近邻居达到聚合推荐的目的。
(4)面向音乐特征聚合推荐类似音乐
可通过本发明所提出的音乐特征有向图之间的相似度进行度量排序,充分利用本发明所提出有向图聚类方法与协同过滤推荐技术,更加高效完成发现目标音乐的最近邻居音乐,达到聚合推荐的目的,发现与当前音乐特征相似的其他音乐。
(5)对于面向用户兴趣的类似用户发现
可通过本发明所提出的用户兴趣有向图之间的相似度进行度量排序,也可采用本发明所提出有向图聚类方法与协同过滤推荐技术,更加高效完成发现各聚类的最近邻居用户,达到聚合推荐的目的,发现兴趣相似的邻居用户。
(6)查看好友的音乐偏好
首先识别与当前用户存在好友关系的邻居用户。其一、可通过社区网络关系识别当前用户的好友;其二,可以通过上述“面向用户兴趣的类似用户发现”技术,动态发现“兴趣好友”。
设当前用户U的好友集合为,F={f1,f2,...,fn}。
其次,循环为好友fi的用户兴趣有向图与音乐特征有向图进行匹配,充分利用本发明所提出有向图聚类方法与协同过滤推荐技术,更加高效完成发现各聚类的最近邻居NNS={NN1,NN2,…,NNt}。
然后,为NNSi形成并集
最好,识别音乐后并返回给当前用户。
(7)查找偏好同一音乐的其他用户
以当前音乐特征有向图为中心,与用户兴趣有向图集合进行相似度度量,充分利用本发明所提出有向图聚类方法与协同过滤推荐技术,更加高效完成发现各聚类的最近邻居NNSi={NN1i,NN2i,…,NNti},识别偏好用户并返回、进行列表显示。
(8)对于用户兴趣历史变化
本发明方法采取动态统计用户兴趣有向图、音乐特征有向图策略,可以形成一种时态有向图序列模型,因此可以有效表达不同时期用户兴趣的历史变化。针对某一用户兴趣时态有向图可以表示为
g t = { g 1 t 1 , g 2 t 2 , g 3 t 3 , &CenterDot; &CenterDot; &CenterDot; } (公式6)
其中,时间序列t={t1,…,tn},对应的兴趣特征序列g={g1,…,gn}。
(9)对于统计排行
本发明方法采取音乐特征有向图,其中节点与边采取了添加频度次数的属性,因此可以采取统计策略进行有效支持。假设音乐R,其特征有向图为gR。定义音乐R的热度Hot(R)为:
Hot(R)=∑Value(gR.t)×wt+∑Value(gR.d)×wd (公式7)
其中,gR.d为gR中有向边,Value(gR.d)为gR.d的边的频度属性值;gR.t为gR中节点,Value(gR.t)为gR.t的节点频度属性值;wt+wd=1。例如取wt=0.8,wd=0.2。
采用类似方法,也可完成用户活跃度的统计排行。定义用户U的活跃度Live(U)为:
Live(U)=∑Value(gu.t)×wt+∑Value(gu.d)×wd (公式8)
其中,gu.d为gu中有向边,Value(gu.d)为gu.d的边的频度属性值;gu.t为gu中节点,Value(gu.t)为gu.t的节点频度属性值;wt+wd=1。例如取wt=0.8,wd=0.2。
第二、实验验证分析
在现在的音乐推荐技术中,主要围绕着音乐上发布时间、热点或次数、按单标签的属性作为线索推荐给当前用户,这种研究可以称为单属性推荐法。单属性推荐不能充分结合用户兴趣,呈现出推荐随意化、侧重混乱等问题。为更好的全面结合用户的兴趣特征模型,本发明设计并实现了采集用户标注信息、挖掘用户兴趣的策略。本发明方法的创新性主要体现在算法的运行效率与精准推荐。为对比说明,下面给出在实验推荐过程中利用本发明方法与按音乐的发布时间、按音乐的点击次数与随机推荐等三种其它方式进行对比,测评50个用户在推荐音乐集上的音乐评价,反映用户对音乐推荐的满意度。表3表示推荐了6个最相似音乐,实验数据如下:
表3推荐个数为6时推荐结果对比表
如上所述,通过该专利方法为目标对象形成了明显的满意度有序序列。通过与按音乐的发布时间、按音乐的点击次数与随机推荐等三种其它方式进行对比,可以发现本发明所给出的方法能够更好的按照与用户兴趣相似进行有序推荐。具体如图5所示。
另外,从算法效率角度,相对于面向整个音乐库进行相似度匹配选择而言,其有向图选择分析的复杂度要小得多,因此本发明提出的方法可以快速查询与用户兴趣适用的大部分网络音乐。由此可见本发明提出的方法不仅具有较好的适用性,而且也可以加大有向图选择的效果和效率,有效提高音乐推荐系统的质量。

Claims (2)

1.基于标签有向图的网络音乐聚合推荐方法,其特征在于步骤如下:
步骤一:音乐标注
在当前步骤中,用户登录音乐网站进行音乐标注,并记录标注序列及其认知序;音乐认知序是指用户先后使用不同分类词对音乐进行标注所形成的先后顺序;四元音乐服务模型,由用户、标签、音乐与认知序构成;音乐标注操作过程为:
[S1.1]用户通过身份认证成功后登录到音乐网站系统中,选择自己感兴趣的网络音乐;
[S1.2]开始访问选中的音乐;
[S1.3]系统读取当前音乐网站已存在的音乐标签,以自由分类的方式自动显示为类别信息;
[S1.4]用户根据自己对当前网络音乐的特征感知,在音乐类别标签中选择当前网络音乐所属分类;
[S1.5]用户持续再感知当前网络音乐的特征,继续在音乐类别标签中选择当前音乐的所属于的分类;
[S1.6]若用户认为在音乐类别标签中无法找到当前音乐适合的类别,通过系统的自定义标签功能,根据对音乐特征的感知分析,自由的创建分类标签;
[S1.7]用户自由的创建分类标签时,系统自动默认当前音乐归属于当前分类;
[S1.8]在上述步骤中,用户每次点击设置分类标签,系统一方面自动记录标签与音乐之间的分类关系,同时记录用户标注的先后顺序;
[S1.9]系统自动根据用户选择的标签顺序,形成标注序列;
标注序列是一种标签顺序排列,系统根据使用标注词的顺序为用户形成标注序列;标签词之间存在前置关系和后置关系,表示了某一用户针对某一音乐所使用的标签序列;
在标注行为中标签标注及标注认知序称为<k1,...,kz,...,kx〉,简称标签序列,其中x为此次标注过程中所用的标签数量,从认知序角度k1表示标注的第1个标签,kz表示标注的第z个标签,kx表示标注的第x个标签;
[S1.10]标签序列关联至用户及其网络音乐
标签序列〈k1,...,kz,...,kx〉不是孤立的,应与用户、网络音乐建立关联;关联行为分为关联用户与关联网络音乐,具体如下:
(1)关联用户
为用户与标签序列建立关联,将标签序列存储为用户标签序列;若用户为Users,其中s为当前用户的ID编号;〈k1,...,kz,...,kx〉为标注行为所产生的标签序列;gusers表示〈k1,...,kz,...,kx〉关联Users后的标签序列,其中gusers与Users中s的意义与数值保持一致,均为当前用户的ID编号;关联用户形成如下记录:
guser s = < User s ; k s 1 , ... , k s z , ... , k s x >
其中:x为此次标注过程中所用的标签数量;从用户Users角度,表示用户Users标注的第1个标签,表示用户Users标注的第z个标签,表示用户Users标注的第x个标签;
(2)关联音乐
为音乐与标签序列建立关联,将标签序列存储为音乐标签序列;若网络音乐为Musicj,其中j为当前音乐的ID编号;〈k1,...,kz,...,kx〉为标注行为所产生的标签序列;gmusicj表示〈k1,...,kz,...,kx〉关联Musicj后的标签序列,其中gmusicj与Musicj中j的意义与数值保持一致,均为当前网络音乐的ID编号;关联网络音乐形成如下记录:
gmusic j = < Music j ; k j 1 , ... , k j z , ... , k j x >
其中:x为此次标注过程中所用的标签数量,与关联用户中x相同,表示同一个标签序列中标签的数目;从网络音乐Musicj角度,表示网络音乐Musicj被标注的第1个标签,表示网络音乐Musicj被标注的第z个标签,表示网络音乐Musicj被标注的第x个标签;
[S1.11]创建标签序列历史记录
标签序列的历史记录用于以时间为序记录用户所进行的标注以及网络音乐所被进行的标注;标签序列的历史记录分为用户标注的历史记录以及网络音乐被标注的历史记录;具体如下:
(1)创建用户标注的历史记录
对于用户Users,其中s为当前用户的ID编号,针对不同网络音乐进行不断地标注形成标签序列;假设以时间为顺序积累了m个标签序列,定义集合为:
gSetToUser s = { guser s 1 , ... , guser s m } ;
其中:表示某音乐用户Users在不同时间、针对不同音乐进行标注的标签序列,第1次标注的标签序列称为后续以此类推,第m次标注的标签序列称为
上述步骤[S1.1-S1.11]为音乐用户输出用户的标签序列集;
(2)创建网络音乐被标注的历史记录
网络音乐Musicj,被不同用户进行不断地进行标注形成标签序列,假设以时间为顺序积累了n个标签序列,其中j为当前音乐的ID编号,定义集合为:
gSetToMusic j = { gmusic j 1 , ... , gmusic j n }
其中表示不同用户在不同时间针对同一音乐Musicj进行标注的标签序列,第1次标注的标签序列称为后续以此类推,第n次标注的标签序列称为
上述步骤[S1.1-S1.11]为网络音乐输出网络音乐的标签序列集;
步骤二:特征建模
将用户标签序列集和音乐标签序列集转换为特征有向图的方法,包括用户特征和网络音乐特征的有向图;假设标签序列集合为G={g1,…,gw},其中w为标签序列的总数,g1,…,gw分别为G中不同的标签序列;G既能够代表用户标签序列集此时w=m;也能够代表音乐标签序列集此时w=n;
相关定义如下:
定义1.标签词频度的度量Count(t)
给定标签为t,t为标签序列集合G={g1,…,gw}中的任意标签;设定属性tFreq代表t在标签序列集合G={g1,…,gw}中的出现总数,代表标签t的使用频度,因此称为频度属性;
t的频度属性tFreq度量函数为Count(t),Count(t)作用是遍历统计当前标签序列集合G={g1,…,gw}中标签t的总计使用次数;
其中,gλ表示标签序列集合G={g1,…,gw}中的第λ个标签序列,1≤λ≤w;
如果标签t∈gλ,则Find(gλ,t)=1,否则Find(gλ,t)=0;
定义2.有向边频度的度量Count(e)
有向边代表两个节点之间的连接边是有向的,代表一种顺序关系;假设有向边e为tα→tβ;其中tα是tβ为标注序列中先后用来分类的两个标签,α与β在此用来区分标签编号并无其它真正数值上的意义,在标注序列中有向边e代表两个标签tα与tβ存在邻接关系;对有向边e为tα→tβ,则表示tα是tβ前置标签;
设定属性eFreq代表有向边e在标签序列集合G={g1,…,gw}中的出现总数,代表使用频度,因此可称为频度属性;
有向边d的频度函数Count(e),度量法则是遍历统计标签序列集合G={g1,…,gw},其中w≥1,w为标签序列的总数中有向边e的出现次数;
其中,gλ表示标签序列集合G={g1,…,gw}中的第λ个标签序列,1≤λ≤w;
如果有向边e∈gλ,则Find(gλ,e)=1,否则Find(gλ,e)=0;
将标签序列集G={g1,…,gw}通过特征建模解决方案形成特征有向图gview的方法,其中w≥1,w为标签序列的总数,具体步骤包括:
[S2.1]初始定义gview代表标签有向图,gview初始为空;
[S2.2]读取输入中提供的标签序列集G={g1,…,gw};
[S2.3]遍历G={g1,…,gw}中每个标签序列,利用Count(t)度量G={g1,…,gw}中每个不同标签节点t的频度属性,获得标签节点t的频度属性值tFreq=Count(t);
[S2.4]将G={g1,…,gw}标签节点合并添加到有向图gview中作为标签节点,每个标签节点t的频度属性由上述第[S2.3]步获得,即tFreq=Count(t);
[S2.5]遍历G={g1,…,gw}中每个标签序列,利用有向边频度度量方法度量G={g1,…,gw}中每个不同有向边e的频度属性Count(e),获得不同有向边的频度属性值eFreq=Count(e);
[S2.6]将G={g1,…,gw}中的有向边合并添加到gview中,每个有向边e的频度属性由上述第[S2.5]步获得,即eFreq=Count(e);
[S2.7]输出有向图gview;
通过上述第[S2.1]至[S2.7]步,形成有向图gview;
对用户Users的不同标签序列集m为当前用户Users标签序列集合的元素总数,特征建模方案后,统计形成gviewUsers;对不同用户的标签序列集合建模后分别形成如下集合:
GviewSetToUser={gviewUser1,...,gviewUsers,...,gviewUserM}
其中:
gviewUsers,其中1≤s≤M,是指用户系统中第s个用户通过特征建模方案所形成的用户兴趣特征有向图,其中M表示音乐网站用户总数,M≥1;
将音乐Musicj的不同标签序列构成集合n为网络音乐Musicj标签序列集合的元素总数,采用特征建模方案后,统计形成gviewMusicj;对不同网络音乐得标签序列集合建模后分别形成了如下有向图集合:
GviewSetToMusic={gviewMusic1,...,gviewMusicj,...,gviewMusicN}
其中:
gviewMusicj,其中1≤j≤N,是指网络音乐库中第j首音乐通过特征建模方案所形成的音乐特征有向图,其中N表示音乐库中的音乐总量,N≥1;
步骤三:音乐聚类
如下定义3至定义7是音乐聚类的理论支持,说明如下:
定义3.标签有向图
标签有向图gview=<V,E,LV,LE>,其中:
gview为有向图;
V为gview中节点的集合;
E为gview中有向边的集合;
LV为gview中节点的频度值;
LE为gview中有向边的频度值;
定义4.同构标签子图
给定两个标签有向图gview=(V,E,LV,LE)和gview'=(V',E',LV',LE'),其中假设存在一个标签有向图fview,满足如下两个规则:
(1)如果任意节点v∈fview,都有v∈gview且v∈gview’;
(2)如果任意有向边e∈fview,都有e∈gview且e∈gview’;
则称标签有向图fview是gview与gview’的同构标签子图,gview与gview’是fview的父图;
定义5.有向图同构性
若gview与gview’有同构子图,则称有向图gview与有向图gview’存在有向图同构性;
定义6.子图同构度
假设:与其它有向图存在同构性有向图为gview,同构子图为fview;
假设:V与E表示同构子图fview中的标签节点集合和有向边的集合;从上述特征建模技术中的频度视角,fview图中V与E在gview存在频度属性值;从频度属性角度,定义子图fview在父图gview上的同构度φ(fview,gview)为:
其中:
(1)sum(v,fview)表示累加计算得出子图fview中的总节点数;
(2)LV(v,gview)表示获取有向图节点v在有向图gview上的频度属性值tFreq;
(3)sum(e,fview)表示累加计算得出子图fview中的有向边总数;
(4)LE(e,gview)表示获取有向边e在有向图gview上的频度属性值eFreq;
φ(fview,gview)综合考虑了子图fview中节点量和有向边的规模,并考虑这两者的频度属性值相对父图gview所占百分比;反映出如下规律:
(1)fview中节点越多,与父图gview同构度越高;
(2)fview中有向边越多,与父图gview同构度越高;
(3)fview中节点的频度属性和在父图gview中的节点频度属性和所占百分比越高,与父图gview同构度越高;
(4)fview中有向边的频度属性和在父图gview中的有向边频度属性和所占百分比越高,与父图gview同构度越高;
定义7.有向图同构度
假设,两个有向图为gview与gview’,存在同构子图为fview;子图fview与gview、gview’的同构度分别为φ(fview,gview)、φ(fview,gview'),则有:
其中:
(1)φ(fview,gview)为子图fview与父图gview的同构度,计算法则见公式3;
(2)φ(fview,gview')为子图fview与父图gview’的同构度,计算法则见公式3;
(3)μ(gview,gview')表示存在同构子图fview的两个有向图gview、gview’之间的同构度μ;
其中:
(1)子图fview与父图gview的同构度φ(fview,gview)越高,父图gview、gview’之间的同构度μ越高;
(2)子图fview与父图gview’的同构度φ(fview,gview')越高,父图gview、gview’之间的同构度μ越高;
假设在网络音乐网站上,网络音乐库中网络音乐共有N首,N≥1,为网络音乐库中音乐总量;
MusicSet={Music1,...,Musicj,...,MusicN}
其中:Musicj表示音乐库中的第j首音乐,1≤j≤N;
根据步骤二的方法对MusicSet进行特征建模,获得音乐特征有向图集合
GviewSetToMusic={gviewMusic1,...,gviewMusicj,...,gviewMusicN}
其中:gviewMusicj,其中1≤j≤N,是指网络音乐库中第j首音乐通过特征建模方案所形成的音乐特征有向图,其中N表示音乐库中的音乐总量,N≥1;
将音乐特征有向图集合GviewSetToMusic分成d组,其中,d由音乐网站管理者根据音乐集总量所动态设置的分类规模参数;即:
GviewSetToMusic={C1,...,Ci,...,Cr...,Cd},d≥3,d代表分组数;
Ci∩Cr=Φ,Ci、Cr为不同的分组,两者交集为空;
其中:
i≠r,对任意的1≤i≤d,1≤r≤d,且
求解上述聚类分组的过程称为音乐特征有向图聚类过程;
Ci={gviewMusici 1,gviewMusici 2,...gviewMusici h}称为音乐特征有向图集合GviewSetToMusic中的第i个聚类簇,其中h为聚类划分后聚类簇Ci的有向图总数,1≤i≤d,d代表分组数;这些音乐有向图聚类簇满足以下要求:
(1)每组至少应包含一个音乐有向图;
(2)每个音乐有向图必须属于且只属于某一音乐有向图聚类簇;
CCi为对应聚类簇Ci的聚类中心,聚类中心是对应聚类簇的特征代表;
利用均值策略求解有向图聚类中心CCi的具体步骤如下:
如上所述,假设Ci={gviewMusici 1,...,gviewMusici y,...,gviewMusici h}为有向图集合GviewSetToMusic的第i个聚类簇,其中h为聚类簇Ci的有向图总数,1≤i≤d,其中gviewMusici y表示第i个聚类簇中第y个音乐特征有向图;
[S3.1.1]读入音乐特征有向图聚类:
Ci={gviewMusici 1,...,gviewMusici y,...,gviewMusici h};
[S3.1.2]创建聚类中心有向图CCi,此处i与聚类中Ci中i保持一致,CCi初始为空;
[S3.1.3]从Ci={gviewMusici 1,...,gviewMusici y,...,gviewMusici h}中按编号1,…,y,…,h从中顺序选择一个有向图gviewMusici y,1≤i≤d,1≤y≤h;
[S3.1.4]将gviewMusici y中每个节点v添加到聚类中心有向图CCi中,添加方法如下:
1)如果已经存在节点v∈CCi,说明节点v已经添加到聚类中心有向图CCi,则不需要在CCi再增加新节点v,将聚类中心的v节点频度属性CCi.v.tFreq累加,采取如下法则进行累加:
CCi.v.tFreq=CCi.v.tFreq+gviewMusici y.v.tFreq,其中gviewMusici y.v.tFreq代表gviewMusici y中待合并节点v的频度属性值,CCi.v.tFreq表示聚类中心CCi中已存在的节点v的频度属性值;
2)如果不存在节点v∈CCi,说明节点v尚未添加到聚类中心有向图CCi,即当前有则需要在CCi再增加新节点v,将聚类中心v节点频度属性CCi.v.tFreq赋值为gviewMusici y中待合并节点v的频度属性值,采取如下法则进行赋值:
CCi.v.tFreq=gviewMusici y.v.tFreq,其中gviewMusici y.v.tFreq代表gviewMusici y中待合并节点v的频度属性值;
[S3.1.5]将gviewMusici y中每个有向边e添加到聚类中心有向图CCi中,添加方法如下:
1)如果已经存在有向边e∈CCi,说明有向边e已经添加到聚类中心有向图CCi,则不需要在CCi再增加新有向边e,将聚类中心有向边e的频度属性CCi.e.eFreq累加,采取如下法则进行累加:
CCi.e.eFreq=CCi.e.eFreq+gviewMusici y.e.eFreq,其中gviewMusici y.e.eFreq代表gviewMusici y中待合并有向边e的频度属性值,CCi.e.eFreq表示聚类中心CCi中已存在的有向边e的频度属性值;
2)如果不存在有向边e∈CCi,说明有向边e尚未添加到聚类中心有向图CCi,则需要在CCi再增加新有向边e,将聚类中心有向边e的频度属性CCi.e.dFreq赋值为gviewMusici y中待合并有向边e的频度属性,采取如下法则进行赋值:
CCi.e.eFreq=gviewMusici y.e.eFreq,其中gviewMusici y.e.eFreq代表待合并有向边e的频度属性值,CCi.e.eFreq表示聚类中心CCi中合并后有向边e的频度属性值;
[S3.1.6]循环步骤[S3.1.3]至第[S3.1.5]步,直至Ci中各有向图中节点和有向边元素合并至聚类中心CCi中;
[S3.1.7]使用频度属性均值代表聚类中心CCi中每个节点v和每个有向边e的频度属性,因此将第[S3.1.6]步得到的聚类中心CCi的每个节点v和每个边e的频度属性累加和进行均值化处理,其中聚类划分后聚类簇Ci的有向图总数为h,执行如下策略:
1)对聚类中心CCi中每个节点v的频度属性均值化,其中1≤i≤d:
代表向上取整,等式左面的CCi.v.tFreq表示聚类中心CCi中节点v的频度属性值,使用均值属性值表示;
2)针对聚类中心CCi中每个有向边e的频度属性值均值化:
代表向上取整,等式左面的CCi.e.eFreq表示聚类中心CCi中有向边e的频度属性值,使用均值属性值表示;
[S3.1.8]输出聚类簇Ci的对应聚类中心有向图CCi
音乐有向图集合的聚类划分解决方案,具体包括步骤:
[S3.2.1]初始创建下述变量:
①创建聚类簇的数目d,初始为0;
②创建聚类簇集合C={C1,C2,…,Cd},其中d个聚类簇C1,C2,…,Cd均初始为空,用C={C1,C2,…,Cd}表示聚类划分过程中的最新划分结果;
③创建聚类中心集合CC={CC1,CC2,…,CCd},每个聚类中心CCi代表第i个聚类簇Ci的平均特征,初始为空;其中CC1代表聚类C1的平均特征,CC2代表聚类C2的平均特征,CCd代表聚类Cd的平均特征;
④创建聚类簇集合Cprev={Cprev_1,Cprev_2,…,Cprev_d},其中d个聚类簇Cprev_1,Cprev_2,…,Cprev_d初始为空,用Cprev={Cprev_1,Cprev_2,…,Cprev_d}表示聚类划分过程中的上次划分结果;
[S3.2.2]设置上述变量的初始所需数据值:
①对聚类簇数目d采用前文按需动态设置的策略,赋值为一个大于3的整数;
②将音乐有向图集合GviewSetToMusic随机划分为d组,将划分结果赋值为C={C1,C2,…,Cd},保证每个聚类簇C1,C2,…,Cd中至少有一个音乐特征有向图;
③利用均值策略方案步骤[S3.1.1]至步骤[S3.1.8],为每个聚类簇C1,C2,…,Cd求解有向图聚类中心CCi得到CC={CC1,CC2,…,CCd};
④聚类簇集合Cprev={Cprev_1,Cprev_2,…,Cprev_d}的数据值在下述[S3.2.3]循环确定;
[S3.2.3]执行下述循环步骤:
设置聚类簇集合Cprev=C,即Cprev_1=C1,Cprev_2=C2,…,Cprev_d=Cd,用户支持音乐特征有向图的循环再聚类;
从Cprev_1,Cprev_2,…,Cprev_d中逐一选择每一个聚类簇Cprev_i,其中1≤i≤d;
如果Cprev_i不为空,则从聚类簇Cprev_i中逐一选择每一个有向图其中:
1≤a≤|Cprev_i|,| |代表求取集合中元素规模;
计算参见公式4;
根据同构度μ大小,判断与哪一个聚类中心的同构度最高,将归并至最高同构度聚类中心对应的聚类中;
利用均值策略方案步骤[S3.1.1]至步骤[S3.1.8],为每个聚类簇C1,C2,…,Cd求解聚类中心有向图CCi,得到CC={CC1,CC2,…,CCd};
[S3.2.4]循环直至聚类簇C与聚类簇Cprev相同时退出上述循环步骤;
[S3.2.5]返回音乐特征有向图的聚类划分结果聚类簇C={C1,C2,…,Cd};
通过音乐特征有向图聚类方案,生成的d个音乐特征有向图聚类簇,对应有d个聚类中心;d个聚类中心作为d个音乐特征有向图聚类簇的均值代表;
聚类簇集合表示为C={C1,C2,…,Cd};
聚类中心表示为CC={CC1,CC2,…,CCd};
其中CCi表示该聚类Ci中所有音乐特征有向图的均值有向图;
步骤四:音乐推荐
具体操作步骤如下:
[S4.1]读入如下参数
①目标用户兴趣特征有向图gviewToUser,来自于步骤二中所确定的用户兴趣特征有向图集合GviewSetToUser,gviewToUser∈GviewSetToUser;
②音乐特征有向图聚类划分结果C={C1,C2,…,Cd},取d≥3,d代表聚类簇的数目,来自于步骤三中所确定的音乐特征有向图聚类划分结果;
③音乐特征有向图聚类中心CC,存在CC={CC1,CC2,…,CCd}来自于步骤三,用来描述聚类C中每个聚类簇的代表性特征;
④ξ代表同构度临界值,常取经验值ξ=3.0,ξ越高代表同构度要求越严格;
⑤p代表所希望推荐的个数,常有p≥6;
[S4.2]创建推荐列表gList[p],p代表推荐的对象规模,参见上述参数p的定义,gList初始为空;
[S4.3]对每个音乐特征有向图聚类Ci的聚类中心CCi,1≤i≤d,采用提出的同构度计算方法μ(CCi,gviewToUser),其中,1≤i≤d,gviewToUser表示匹配查询的目标用户兴趣特征有向图,得到聚类中心CCi与目标用户兴趣特征有向图gviewToUser的同构度;
[S4.4]创建邻居聚类簇集合Cneighbor={Cneighbor_1,...Cneighbor_b,...},用于存储与目标有向图gviewToUser相近的邻居聚类集合;
[S4.5]判断μ(CCi,gviewToUser)是否大于同构度临界值ξ,如果大于则将聚类簇CCi加到邻居聚类簇集合Cneighbor中;如果小于则跳过执行下一步;
[S4.6]在获得邻居聚类簇集合Cneighbor中,执行下述循环:
针对上述计算得出的邻居聚类簇集合Cneighbor,从邻居聚类簇集合Cneighbor中逐一选择每一个聚类簇Cneighbor_b,1≤b≤|Cneighbor|,| |代表求取邻居聚类簇集中聚类规模;
从邻居聚类Cneighbor_b中逐一选择每一个音乐有向图1≤f≤|Cneighbor_b|,||代表求取邻居聚类Cneighbor_b中音乐特征有向图的规模,
计算1≤f≤|Cneighbor_b|,计算法则参见公式4;
根据同构度μ大小,按照自高到低的顺序将添加到gList中,1≤f≤|Cneighbor_b|;
[S4.7]通过上述循环获得邻居有向图集合gList,通过音乐特征有向图与音乐之间一对一的关联关系,得到为用户推荐的音乐列表,具体如下所述:
定义音乐列表变量MusicList[p],p代表推荐的对象规模,参见上述参数p的定义;
为gList中每个有向图元素gList[1]、gList[2]、…、gList[p]找到其所代表的网络音乐,并将其添加到音乐列表MusicList中;
[S4.8]将网络音乐列表MusicList推荐给用户;
假设目标用户为user,所推荐的最佳音乐集合为MusicList,MusicList作为推荐列表进行输出,推荐给用户user。
2.根据权利要求1所述的基于标签有向图的网络音乐聚合推荐方法,其特征在于步骤如下:有向图同构度计算得出推荐精度:
其中表示最佳有向图集对目标用户有向图gviewToUser的整体平均同构度;p代表推荐的对象规模,目标用户user的兴趣特征有向图为gviewToUser。
CN201310705668.1A 2013-12-19 2013-12-19 基于标签有向图的网络音乐聚合推荐方法 Expired - Fee Related CN103678635B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310705668.1A CN103678635B (zh) 2013-12-19 2013-12-19 基于标签有向图的网络音乐聚合推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310705668.1A CN103678635B (zh) 2013-12-19 2013-12-19 基于标签有向图的网络音乐聚合推荐方法

Publications (2)

Publication Number Publication Date
CN103678635A CN103678635A (zh) 2014-03-26
CN103678635B true CN103678635B (zh) 2017-01-04

Family

ID=50316180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310705668.1A Expired - Fee Related CN103678635B (zh) 2013-12-19 2013-12-19 基于标签有向图的网络音乐聚合推荐方法

Country Status (1)

Country Link
CN (1) CN103678635B (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9204174B2 (en) * 2012-06-25 2015-12-01 Sonos, Inc. Collecting and providing local playback system information
CN105335595A (zh) 2014-06-30 2016-02-17 杜比实验室特许公司 基于感受的多媒体处理
CN104376083B (zh) * 2014-11-18 2017-06-27 电子科技大学 一种基于关注关系和多用户行为的图推荐方法
JP6463845B2 (ja) * 2015-02-11 2019-02-06 アビニシオ テクノロジー エルエルシー データ系統図のフィルタリング
CN105069653A (zh) * 2015-08-07 2015-11-18 合肥工业大学 一种针对推荐系统解释的交互方法
CN106354703A (zh) * 2016-08-17 2017-01-25 浪潮通用软件有限公司 一种确定公式的计算顺序的方法及装置
CN106547622B (zh) * 2016-10-31 2020-01-17 中国人民解放军91655部队 基于计算模块的网络资源态势呈现数据优化处理方法
CN107347183B (zh) * 2016-12-26 2020-02-18 福建师范大学 一种基于pmc检测模型的移动网络中恶意用户的检测方法
CN107317930B (zh) * 2017-06-26 2020-12-15 南京沄海区块链科技有限公司 一种桌面图标的布局方法、装置及计算机可读存储介质
CN107885845B (zh) * 2017-11-10 2020-11-17 广州酷狗计算机科技有限公司 音频分类方法及装置、计算机设备及存储介质
CN110020086B (zh) * 2017-12-22 2021-10-26 中国移动通信集团浙江有限公司 一种用户画像查询方法及装置
CN108509497B (zh) * 2018-02-23 2022-08-09 创新先进技术有限公司 信息推荐方法、装置和电子设备
CN109062955A (zh) * 2018-06-25 2018-12-21 广东神马搜索科技有限公司 项目间关联关系挖掘方法、装置、计算设备及存储介质
CN109255073B (zh) * 2018-08-28 2022-03-29 麒麟合盛网络技术股份有限公司 一种个性化推荐方法、装置及电子设备
CN109446422B (zh) * 2018-10-24 2021-09-14 湖北大学 一种基于离群用户过滤的服务推荐方法
CN109783725B (zh) * 2018-12-15 2021-07-20 华南理工大学 一种融入用户好奇心机制的推荐方法
US10970350B2 (en) 2019-08-15 2021-04-06 Advanced New Technologies Co., Ltd. Method and apparatus for processing user interaction sequence data
CN110598847B (zh) * 2019-08-15 2020-08-28 阿里巴巴集团控股有限公司 处理交互序列数据的方法及装置
CN112559864B (zh) * 2020-12-14 2023-03-31 西安电子科技大学 一种基于知识图谱增强的双线性图网络推荐方法和系统
CN112732971A (zh) * 2021-01-21 2021-04-30 广西师范大学 一种基于标签的协同过滤音乐推荐方法
CN114218487B (zh) * 2021-12-16 2023-02-03 天翼爱音乐文化科技有限公司 一种视频推荐方法、系统、装置及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2323049A1 (en) * 2008-09-05 2011-05-18 Sony Corporation Content recommendation system, content recommendation method, content recommendation device, program, and information storage medium
CN102523511A (zh) * 2011-11-09 2012-06-27 中国传媒大学 一种网络节目聚合及节目推荐系统和方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2323049A1 (en) * 2008-09-05 2011-05-18 Sony Corporation Content recommendation system, content recommendation method, content recommendation device, program, and information storage medium
CN102523511A (zh) * 2011-11-09 2012-06-27 中国传媒大学 一种网络节目聚合及节目推荐系统和方法

Also Published As

Publication number Publication date
CN103678635A (zh) 2014-03-26

Similar Documents

Publication Publication Date Title
CN103678635B (zh) 基于标签有向图的网络音乐聚合推荐方法
Son et al. Content-based filtering for recommendation systems using multiattribute networks
Xiaojun An improved clustering-based collaborative filtering recommendation algorithm
Li et al. Using multidimensional clustering based collaborative filtering approach improving recommendation diversity
CN103902538B (zh) 基于决策树的信息推荐装置及方法
CN109241405A (zh) 一种基于知识关联的学习资源协同过滤推荐方法及系统
CN103678618B (zh) 一种基于社交网络平台的Web服务推荐方法
CN107833117B (zh) 一种考虑标签信息的贝叶斯个性化排序推荐方法
CN109918563B (zh) 一种基于公开数据的图书推荐的方法
Guo et al. Local community detection algorithm based on local modularity density
CN117575011B (zh) 一种基于大数据的客户数据管理方法及系统
CN111159563A (zh) 用户兴趣点信息的确定方法、装置、设备及存储介质
Ramkumar et al. A survey on mining multiple data sources
Chen et al. DPM-IEDA: dual probabilistic model assisted interactive estimation of distribution algorithm for personalized search
Wan et al. To your surprise: Identifying serendipitous collaborators
US20130198215A1 (en) Method for Forming Database on Basis of Relationship Between Video Data, and Database Formation System
CN118071400A (zh) 基于图计算技术在信息消费领域的应用方法及系统
Yue et al. An improved label propagation algorithm based on community core node and label importance for community detection in sparse network
Gasparetti et al. Community Detection and Recommender Systems.
Blenn et al. Crawling and detecting community structure in online social networks using local information
Zhang et al. Cross-graph convolution learning for large-scale text-picture shopping guide in e-commerce search
Helal et al. Leader‐based community detection algorithm for social networks
Zhao et al. Exploiting homophily-based implicit social network to improve recommendation performance
CN109086373B (zh) 一种构建公平的链接预测评估系统的方法
Lee et al. On finding fine-granularity user communities by profile decomposition

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170104

Termination date: 20211219