孙远帅. 基于大数据的推荐算法研究[D]. 厦门大学, 2014.
读的一篇论文的总结(3)
层次相似性
项目标签的层次结构:项目标签之间有时候会存在层次,例如一个歌手有很多专辑,一个专辑会有很多歌,这些歌可以属于不同的音乐风格。
其中,称h为a的上位标签,a为h的下位标签。
层次结构的建立
第一步,基于标签近邻的扩展,主要对进行了部分标注的项目的标签进行扩展。
基本思想是利用关联规则挖掘,把拥有共同标签的项目视作共现项目,对—任何部分标注项目,为其标注关联项目的第二步是基于评分相似近邻的扩展,主要对进行第一步后仍没有标注的项目进行标签扩展。
基本思想是利用余弦距离计算项目之间相似度,利用前个最近邻项目的标签对未标注项目的标签进行扩展。这一步使用到本文中提到的最近邻算法TopKS,在评分矩阵上运行来得到每一个未标注项目的评分余弦相似度最大的前个项目,其中参数需要在实验中指定。为了不引进噪音,标签层次结构的两步骤不进行迭代,仅进行一次。
假设节点c在本体中的父节点是p,那么节点c和节点p之间的距离计算为:
在有许多共同标签的c1和c2两个项目中,其相似度为
节点c1和节点c2在标签层次结构中的相似度通过共同标签的最短距离之倒数来表示。
本文称为REHIS(首先利用算法ExpandTagGraph,从部分项目所标注的用户产生标签和项目类别信息,扩展出全部项目的层次结构,然后利用算法TopKS计算每个项目的前个最近邻项目,最后采用基于项目的协同过滤推荐框架,对每一个预测评分,聚合该用户前个最近邻项目上的评分)
总结:通过给项目标注标签,然后构建层次结构,通过层次结构之间的最短距离来计算相似度,以预测给用户推荐最适合的项目。