作者 | gongyouliu
编辑 | auroral-L
全文共7942字,预计阅读时间50分钟。
大家好,我是强哥。一个热爱暴走、读书、写作的人!
本章目录
一、推荐系统的数据源
1. 根据产品功能要素来划分
(1)用户行为数据
(2)用户画像数据
(3)物品画像数据
(4)场景化数据
2. 根据数据载体来划分
(1)数据价值
(2)类别数据
(3)文本数据
(4)图片数据
(5)音视频数据
3. 根据数据组织形式来划分
(1)结构化数据
(2)半结构数据
(3)非结构化数据
二、数据预处理
1. 抽提(Extract)
2. 转换(Transform)
3. 加载(Load)
总结
推荐系统是机器学习的子领域,跟一般的机器学习算法一样,推荐算法依赖数据来构建推荐模型,有了模型后需要进行模型训练,最终为用户提供个性化的推荐服务(模型推断)。推荐系统由于其解决的问题的特性(推荐系统解决的是信息过滤与资源匹配的问题)以及自身的强业务相关性,构建推荐系统的数据来源及数据处理方式有自身的特点,本章我们就对推荐系统涉及到的数据源及数据预处理相关的知识进行介绍,方便我们在后续章节中构建推荐算法模型。
一、推荐系统的数据源
推荐系统根据用户在产品(APP、网站等)上的操作行为,挖掘用户的兴趣点,预测用户的兴趣偏好,最终为用户做个性化推荐。在整个推荐过程中,涉及到的要素有用户、物品、用户的操作行为、用户当前所处的场景等4类。这每类要素都是具备对应数据的。按照这种要素划分,推荐算法可以利用4类数据。另外,根据数据自身的特性,数据也可以分为数值数据、类别数据、文本数据、图片数据、音视频数据等5类。最后,根据推荐系统依赖的数据的组织形式(数据范式),又可以将数据分为结构化数据、半结构化数据、非结构化数据3大类。下面我们分别按照这3种分类方式来详细描述推荐系统所依赖的数据及这些数据的特点。
1. 根据产品功能要素来划分
根据数据来源的产品功能要素来分,推荐系统依赖的数据分为用户行为数据、用户画像数据、物品画像数据、场景化数据4大类,见下面图1,下面我们分别介绍各类数据及其特点。
图1:推荐系统依赖的4类数据源
(1) 用户行为数据
行为数据是用户在产品上的各种操作行为,比如浏览、点击、播放、购买、搜索、收藏、点赞、评论、转发、加购物车、甚至滑动、暂定、快进快退等等一切操作行为。用户在产品上的操作行为为我们了解用户提供了线索,用户的操作行为也是用户真实意图的反馈。通过挖掘用户行为,我们可以获得对用户兴趣偏好的深刻洞察。
根据用户的行为是否直接表明用户对物品的兴趣偏好,用户行为一般分为显式行为和隐式行为。显式行为是直接表明用户兴趣的行为,比如点赞、评分等。隐式行为虽不是直接表示用户的兴趣,但是该行为可以间接反馈用户的兴趣变化,只要不是用户直接评分、点赞的操作行为都算隐式反馈,包括浏览、点击、播放、收藏等等。
用户行为数据是最容易收集、数据量最多的一类数据(因为用户的任何操作行为,我们都可以进行埋点收集)。这类数据需要我们进行收集、预处理才能最终被推荐算法使用。这类数据获取也相对容易,只要我们按照规范进行埋点就能够保证数据范式正确,当然埋点也是需要经验的,目前有很多第三方服务商提供埋点实施方案,在这方面没有经验的企业是可以进行采购的。
有些产品由于自身特性,往往是很难收集到除了用户行为外的其他数据的(或者即使可以收集到,但是成本太大,比如UGC产生的数据可能就非常脏乱),因此,充分利用用户行为数据对构建高质量的推荐系统是非常关键的。
目前个人信息保护法正式实施了(2021年9月1日正式实施),另外国家也会开始管控算法业务,未来用户是可以关闭日志收集等相关服务的,这对未来的推荐算法落地是有比较大的挑战的。
(2)用户画像数据
用户画像