文本获取和搜索引擎之推荐系统

coursera课程 text retrieval and search engine 第六周 推荐。学习

推荐系统

推荐系统即把恰当的内容推送给用户,相似于在一系列文档中过滤出用户想要的。通常有两种方式:.net

  1. 看用户喜欢什么样的东西,而后检验当前文档是否和用户喜欢的类似【content-based】;
  2. 看喜欢特定文档的都是什么样的用户,而后看当前用户是否和他们同样[collaborative]。
    传统的基于内容推荐模型是:
    他存在以下问题:
  • 必须作一个yes/no的决策
  • 初始的数据不多,基本基于配置
  • “学习”经过用户的yes判断,并且还要靠慢慢积累

经过向量模型能够作以下改进3d

  1. 是它利用了TR已有的模型做为相关性【分数】计算
  2. 对于初始的配置来说也能够当作是一个向量用来和文档作计算分数
  3. 经过阈值模型来作决定是否推送给用户,并对过滤的结果经过效用模型来评估
  4. 用户获得的反馈以后反过来更新阈值学习和向量模型的学习系统

向量学习系统即调整向量自己的位置,和搜索相似cdn

阈值模型困难在于:能被用户判断的数据都是送给用户的;开始的时候被标记的数据少;提供给用户一些试点的数据,看用户如何反应,太少了达不到效果,太多又会担忧都是用户用不到的数据blog

Beta-Gamma阈值学习

y轴是实际的做用(好比有点击的),x轴是排序中的位置;排序

\theta_{zero}表示继续调低阈值那么推送过去的都是无效的;\theta_{optimal}表示阈值的上界,即只要大于这个阈值,基本都是有效的。它和\theta_{zero}之间还有可能存在必定的数据是有用。衡量真实的取值则能够用\alpha来表示:文档

\theta=\alpha*\theta_{zero}+(1-\alpha)*\theta_{optimal}

通常来讲,更偏向于\theta_{zero},这样获得的数据显得更全面。可是有时候不须要显示这么多,能够经过训练来达到另外一种取值方式it

当训练的样本数足够的时候,认为已经足够了解用户了,那么 \alpha能够取较小的值,不够的时候,偏向于 \theta_{zero})便可;训练样本的权重则经过 \gamma来控制
相关文章
相关标签/搜索