电视节目推荐系统总体架构及基础算法

电视节目推荐系统总体架构及基础算法

1.总体结构

数字电视节目推荐系统主要由四个功能模块组成:

  • 用户特性文件模块
  • 节目特性文件模块
  • 协同过滤模块
  • 推荐模块

    2.节目特征建模

  1. 节目特征的描述

    对节目特征的描述一般通过如下几个方面:

    • 节目分类
    • 节目制作信息(如:主要演员、导演、制作商等)
    • 节目内容信息(如:节目内容、简介)
    • 节目播出信息(如:播出频道、播出时间、节目时间)

    节目特征可以来自各个途径的文本表述,也可以来自对节目的语音识别和图像识别形成的文本表述(这方面需要做更多的研究)

  2. 节目特征的定义

    节目特征用来描述节目的娱乐性、创新性、知识性等特点。

    常用的节目特则定义包括:

    • 节目名称
    • 类型
    • 导演
    • 演员
    • 关键词

    基于节目特征实现的个性化推荐优势在于解决冷启动问题,即使只有非常少量的用户也能够产生不错的推荐列表(只需要分析单个用户的历史行为就可以进行推荐),并且推荐的效果往往能够符合用户的“心理预期”。

  3. 节目特征的发展

    节目特征模型的准确性对推荐效果的影响非常显著,目前较为成功的商业推荐引擎会使用更加专业的描述信息来构建节目特征,常用的描述信息包括:

    • 节目标签:用户对节目评价的“关键词”
    • 微类型:由专业人员对节目类型进行细化,像netflix就有一支专业的影评团队来负责给节目标注为微类型
    • 娱乐基因:从更多的维度来描述节目,如故事背景、特效、奖项、剧情结构、价值观、亚文化等,一般成一定的体系。而这种如果采用人工标注的方式则成本会非常高昂,因此目前行业内部基本都是使用语义分析技术,从影评信息中提取基因,如Jinni目前已经支持该项技术
  4. 节目特征的定量计算

    由于节目特征是通过一系列文本数据构成,在推荐算法中为了比较不同节目之前的相似性,需要将其进行定量计算。

    目前常用的计算方法包括:

    • DICE系数
    • 编辑距离

    等等

3.用户特征描述

  1. 用户特征描述

    初始用户特征的提取。用户特征文件的自动更新:显性反馈、隐形反馈(聚类、贝叶斯、NN算法等)。

    • 显性用户特征:基于分类人群收视率社会调查及用户主动方式的特征提取,能够解决用户初始特征的确实问题,即系统冷启动和突发兴趣问题;
    • 隐形用户特征:来自于用户长期行为特征数据的提取,反映的是用户稳定的喜好特征。
  2. 用户特征的定义

    用户特征(画像)用于刻画用户收看节目的口味,最常用的模型是:用户对节目进行评分的列表构成的向量

  3. 用户特征的特种

    对不同类型节目的评分,对不同节目标签的评分。用户特征的变种,往往能够在某种推荐场景中更加准确地描述用户的“口味”,从而使得特定的推荐算法更加准确。

  4. 直接评分

    通过节目评分功能直接采集获取,较为知名的有IMBD、豆瓣电影等。显性评分能够直截了当地反映用户对节目的偏爱程度。评分方法包括:

    • 正负值(踩/顶)
    • 5分制
    • 10分制
    • 百分制
  5. 广电大数据节目推荐系统算法研究及应用-用户特征提取

    间接评分:为了解决直接评分过于稀疏的问题,采用计算间接评分的方式构建用户特征。

    间接评分的修正:点播节目以主动收视为主,直接评分的可信度较高;直播节目以被动收视为主,如果采集到用户收看每个频道时间过长,则时间线上靠后的节目的隐性评分的可信度较低;

    基于用户收视模式修正间接评分是目前推荐算法研究的前沿之一,netflix·等公司正致力该方面的研究。

  6. 家庭用户的特征提取

    在家庭中,多个家庭成员公用一个机顶盒的情况非常普遍,家庭用户的特征建模也是目前业界研究的重点。

    常用模型包括:

    • 基于用户组的特征模型:将用户的偏好整合为整个组呃偏好,这种模型适合于推荐适用于所有成员一起观看的节目;
    • 家庭内部特征模型:将家庭用户的特征按照不同的口味划分成为多个特征,每个特征都代表了一类需求,这种特征模型适用于有成员主导电视的情况,例如有孩子的家庭,每天的17点到19点可能由孩子主导电视收单动漫类节目。家庭内部口味的划分可以通过人工分类、聚类、双聚类等方法来实现。

    Jinni提供了针对多个口味特征分别推荐的算法,youtubeGroupLens等也能够提供针对家庭或者多个好友共同收看节目的推荐算法。

  7. 基于MDS聚类算法的用户特征提取

    试验记录20个用户从2006年11月1日到2007年4月30日的全部收视节目,应用MDS变换聚类算法,通过计算可以看到19个用户的收视样本都具有较为明显的聚类特征,将这些收视样本在变换空间的对应点投影到两维坐标系,我们可以清晰地看到聚类云团。

    按照变换空间像点距离聚类中心近远的排序,本文计算得到了每个用户对应于其每个类别中心的10条实义节目样本。

    经过聚类得到的对应于每个用户每个类别中心的节目样本,具有相同或相似的节目特征,基本属于相同的节目类别,这些样本节目的特征,就反映了用户的收视特征。

    由于收视记录是基于机顶盒的,也即是基于家庭的,因此上述聚类结果存在多个类别中心的现象是合理的。

4.特征的自动提取

TF-IDF自动提取多类特征

TF-IDF是一种用于资讯检索与资讯探勘的常用加权技术。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜寻引擎应用,作为文件与用户查询之间相关程度的度量或评级。

  • 节目标签提取:通过对节目内容信息,评论信息等文本进行分词,利用TF-IDF技术可以提取关键词形成节目标签。

  • 用户画像:将用户看成文档,看过的节目名称和节目标签当作文档的关键词,则可以通过TF-IDF算法,提取用户画像。

5.特征相似度匹配

深度学习计算特征相似度

在实际业务场景计算相似度时,单靠特征标签无法解决所有问题。

例如:用户A,有一个标签为琅琊榜,其偏好程度为5;用户B有一个标签为伪装者,其偏好程度为4。如果就这个两个标签计算相似度,A与B的相似度为零。但这两部电视剧为同一套制作阵容,其相似度是非常高的。这时候可以应用词向量模型。