推荐系统三十六式学习笔记:原理篇.内容推荐06|超越标签的内容推荐系统

本文主要是介绍推荐系统三十六式学习笔记:原理篇.内容推荐06|超越标签的内容推荐系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 为什么要做好内容推荐?
  • 内容源
  • 内容分析和用户分析
  • 内容推荐算法
  • 总结:

基于内容的推荐系统,有个误区,衡量其性能优劣,评判标准是标签数量够不够。其实标签只是很小一部分。而且即便是标签,衡量质量的方式也不是数目够不够;所以,今天我要讲的内容,就是脱离标签定式思维的内容推荐;

为什么要做好内容推荐?

通常一个复杂的推荐系统很可能是从基于内容推荐成长起来的。可以说基于内容的推荐系统是一个推荐系统的孩童时代,我们就来讲一讲如何养成一个基于内容的推荐系统;

为什么基于内容的推荐系统那么重要呢?因为内容数据非常易得,用心找的话总能找到一些可以使用的内容,不需要有用户行为数据就能够做出推荐系统的第一版;内容数据尤其是文本,只要深入挖掘,就可以挖掘出一些很有用的信息供推荐系统使用。

内容推荐的方式还有它的必要性。推荐系统总是需要接入新的物品,这些新的物品在一开始没有任何展示机会,显然就没有用户反馈,这时候只有内容能帮它。基于内容的推荐能把这些新物品找机会推荐出去,从而获得一些展示机会,积累用户反馈,走上巅峰、占据热门排行榜。

要把基于内容的推荐做好,需要做好“抓、洗、挖、算”四门功课。它们分别对应了下面的内容。

1、抓:做好一个基于内容的推荐系统抓取数据补充内容源,增加分析的维度,必不可收。
2、洗:抓取的数据需过滤冗余的数据,垃圾数据,政治色情等敏感数据;
3、挖:不是是抓来的数据,还是自己的数据,要深入挖掘。很多推荐系统提升效果并不是用了更复杂的推荐算法,而是对内容的挖掘做的更深入。
4、算:匹配用户的兴趣和物品的属性,计算出更合理的相关性,这是推荐系统本身的使命,不仅仅是基于内容的推荐才要做的

那么,这四门课到底如何分布在基于基于内容的推荐系统中呢?
在这里插入图片描述
简要介绍一下这张图的流程和基本元素。

内容这一端:内容源经过内容分析,得到结构化的内容库和内容模型,也就是物品画像。用户这一端:用户看过推荐列表后,会产生用户行为数据,结合物品画像,经过用户分析得到用户画像。

对于那些没有给用户推荐过的新内容,经过相同的内容分析过程后就可以经过推荐算法匹配,计算得到新的推荐列表给用户。如此周而复始,永不停息。

内容源

在互联网中,抓数据是一件可做不可说的事。只有当内容有多样性了,一个推荐系统才有存在的合法性。
爬虫技术本身非常复杂,非常有学问,这里就不展开了。
不论是爬过来的数据还是自己的数据,都少不了内容的清洗,主要是去重并过滤垃圾信息及政治、暴力、色情等敏感信息。

内容分析和用户分析

基于内容的推荐,最重要的不是推荐算法,而是内容挖掘与分析。
如果推荐物品是短视频,我们分几种情况看:
1、如果短视频本身没有任何结构化信息,如果不挖掘内容,那么除了强推或者随机小流量,没有别的合理曝光逻辑了;
2、如果对视频的文本描述,比如标题等能够有内容分类,比如是娱乐类,那么对于喜欢娱乐的用户来说就很合理;
3、如果能够进一步分析文本的主题,那么对于类似主题感兴趣的用户就可能得到展示。
4、如果还能识别出内容中主角是沈腾,那就更精准锁定一部分用户了;
5、如果再对内容本身做到嵌入分析,那么潜藏的语义信息也全部抓走了,更能表达内容了。

结构化的内容库,最重要的用途是结合用户反馈行为去学习用户画像,具体的方法上一篇中已经介绍了。容易被忽略的是第二个用途,
在内容分析过程中得到的模型:比如说
1、分类器模型
2、主题模型
3、实体识别模型
4、嵌入模型

这些模型主要用在:当新的物品刚刚进入时,需要实时地被推荐出去,这时候对内容的实时分析,提取结构化内容,再用于用户画像匹配。

内容推荐算法

对于基于内容的推荐系统,最简单的推荐算法当然是计算相似性即可,用户的画像内容就表示为稀疏的向量,同时内容端也有相应的稀疏向量,两者之间计算余弦相似度,根据相似度对推荐物品排序;如果你内容分析做的深入的话,通常效果还是蛮不错的,这种基于内容的推荐天然一个优点:可解释性非常强。

如果再进一步,要更好的利用内容中的结构化信息,因为一个直观的认识是:不同的字段重要性不同。比如说,一篇新闻,标题和正文分析出同一个人物名,评论里面涉及一些其他人物名,可以用于推荐。直观上新闻的正文和标题中的更重要。我们可以借鉴信息检索中的相关性计算方法来做推荐匹配计算:BM25F算法;

前面提到的两种办法可以做到快速实现、快速上线,但都不属于机器学习方法,那么,按照机器学习思路该怎么做呢?

一种最典型的场景:提高某种行为的转化率,如点击、收藏、转发。那么标准的做法是:收集这类行为的日志数据,转换成训练样本,训练预估模型。

每一条样本由两部分构成:一部分是特征,包含用户端的画像内容,物品端的结构化内容,可选的还有日志记录时一些上下文场景信息,如时间、地理位置、设备等等,另一部分就是用户行为,作为标注信息,包含有反馈和无反馈两类。

用这样的样本训练一个二分类器,常用模型是逻辑回归(Logistic Regression)和梯度提绳树(GBDT)或者两者的结合。在推荐匹配时,预估用户行为发生的概率,按找概率排序。这样更合理更科学,而且这一条路可以一直迭代优化下去。

总结:

基于内容的推荐一般是推荐系统的起步阶段,而且会持续存在。它的重要性不可取代。因为:
1、内容数据始终存在并且蕴含丰富的信息量,不好好利用属实可惜。
2、产品冷启动阶段,没有用户行为,别无选择。
3、新的物品要被推荐出去,首选内容推荐。

基于内容的整体框架也是比较清晰的,其中对内容的分析最为重要,推荐算法这一款可以考虑先使用相似度计算,也可以采用机器学习思路训练预估模型,当然这必须得有大量的用户行为做保证;

在这里插入图片描述

这篇关于推荐系统三十六式学习笔记:原理篇.内容推荐06|超越标签的内容推荐系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1036623

相关文章

51单片机学习记录———定时器

文章目录 前言一、定时器介绍二、STC89C52定时器资源三、定时器框图四、定时器模式五、定时器相关寄存器六、定时器练习 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示:以下是本篇文章正文内容,下面案例可供参考 一、定时器介绍 定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。 定时器作用: 1.用于计数系统,可

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

[word] word设置上标快捷键 #学习方法#其他#媒体

word设置上标快捷键 办公中,少不了使用word,这个是大家必备的软件,今天给大家分享word设置上标快捷键,希望在办公中能帮到您! 1、添加上标 在录入一些公式,或者是化学产品时,需要添加上标内容,按下快捷键Ctrl+shift++就能将需要的内容设置为上标符号。 word设置上标快捷键的方法就是以上内容了,需要的小伙伴都可以试一试呢!

Tolua使用笔记(上)

目录   1.准备工作 2.运行例子 01.HelloWorld:在C#中,创建和销毁Lua虚拟机 和 简单调用。 02.ScriptsFromFile:在C#中,对一个lua文件的执行调用 03.CallLuaFunction:在C#中,对lua函数的操作 04.AccessingLuaVariables:在C#中,对lua变量的操作 05.LuaCoroutine:在Lua中,

AssetBundle学习笔记

AssetBundle是unity自定义的资源格式,通过调用引擎的资源打包接口对资源进行打包成.assetbundle格式的资源包。本文介绍了AssetBundle的生成,使用,加载,卸载以及Unity资源更新的一个基本步骤。 目录 1.定义: 2.AssetBundle的生成: 1)设置AssetBundle包的属性——通过编辑器界面 补充:分组策略 2)调用引擎接口API

Javascript高级程序设计(第四版)--学习记录之变量、内存

原始值与引用值 原始值:简单的数据即基础数据类型,按值访问。 引用值:由多个值构成的对象即复杂数据类型,按引用访问。 动态属性 对于引用值而言,可以随时添加、修改和删除其属性和方法。 let person = new Object();person.name = 'Jason';person.age = 42;console.log(person.name,person.age);//'J

大学湖北中医药大学法医学试题及答案,分享几个实用搜题和学习工具 #微信#学习方法#职场发展

今天分享拥有拍照搜题、文字搜题、语音搜题、多重搜题等搜题模式,可以快速查找问题解析,加深对题目答案的理解。 1.快练题 这是一个网站 找题的网站海量题库,在线搜题,快速刷题~为您提供百万优质题库,直接搜索题库名称,支持多种刷题模式:顺序练习、语音听题、本地搜题、顺序阅读、模拟考试、组卷考试、赶快下载吧! 2.彩虹搜题 这是个老公众号了 支持手写输入,截图搜题,详细步骤,解题必备

《offer来了》第二章学习笔记

1.集合 Java四种集合:List、Queue、Set和Map 1.1.List:可重复 有序的Collection ArrayList: 基于数组实现,增删慢,查询快,线程不安全 Vector: 基于数组实现,增删慢,查询快,线程安全 LinkedList: 基于双向链实现,增删快,查询慢,线程不安全 1.2.Queue:队列 ArrayBlockingQueue:

通信系统网络架构_2.广域网网络架构

1.概述          通俗来讲,广域网是将分布于相比局域网络更广区域的计算机设备联接起来的网络。广域网由通信子网于资源子网组成。通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网构建,将分布在不同地区的局域网或计算机系统互连起来,实现资源子网的共享。 2.网络组成          广域网属于多级网络,通常由骨干网、分布网、接入网组成。在网络规模较小时,可仅由骨干网和接入网组成

硬件基础知识——自学习梳理

计算机存储分为闪存和永久性存储。 硬盘(永久存储)主要分为机械磁盘和固态硬盘。 机械磁盘主要靠磁颗粒的正负极方向来存储0或1,且机械磁盘没有使用寿命。 固态硬盘就有使用寿命了,大概支持30w次的读写操作。 闪存使用的是电容进行存储,断电数据就没了。 器件之间传输bit数据在总线上是一个一个传输的,因为通过电压传输(电流不稳定),但是电压属于电势能,所以可以叠加互相干扰,这也就是硬盘,U盘