推荐系统学习笔记--CH2-1--数据与特征工程


通过第一章对推荐系统的整体认知之后,本章将对推荐系统常用的算法进行学习,大纲如下图所示,本文将对第一节内容进行总结:

本章是重点和难点课程,虽然老师用通俗易懂的语言讲述了一遍,但是大量的工作需要自己课下补充学习。

业界广泛流传:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。对于推荐系统也不例外。

1. 数据

推荐系统基本参与是用户和产品两方,依赖的数据按照数据来源,大致可分为以下四类:

  1. 用户行为数据
    用户行为,反映出用户对物品的操作。包括浏览,播放,收藏,点赞,评论,转发,加购物车,购买等。
    通过用户行为,我们可以大致了解用户的好恶,它是用户对产品的直观反映。
  2. 用户属性数据
    用户属性数据,是用户自身具有的数据。包括用户的年龄,地域,性别,学历,职业,收入情况,是否单身,是否是会员。
    这些因素,可以作为推荐的间接数据。
  3. 物品属性数据
    通用户属性一样,物品属性是物品本身具有的数据,物品和用户不同,物品的种类很多,因此属性数据不尽相同。
    以视频为例,包括标题,标签,演员,年代,国别,语言,获奖情况,豆瓣评分,是否是会员权限视频。
  4. 上下文数据
    上下文数据,是用户使用产品是周围的环境情况。就类似同样一句话,在不同的场景下表达意义不一样。
    包括用户所在地域,天气,时间,日期,用户当前状态,心情以及用户使用产品的所在路径(是浏览,还是加入购物车)。

这么多数据,按照数据存在格式可以大致划分为三大类:

  1. 结构化数据
    结构化数据,可以使用关系型数据库存储的数据。
    主要是文本类的,类似用户属性,物品属性都可以是结构化。
  2. 半结构化数据
    半结构化数据,数据有一定的结构,但是并不很清晰,不能简单用一个关系型表格表示。
    比如用户行为数据,比如json格式的。
  3. 非结构化数据
    音频,图片,视频数据,现实生活中非结构化数据最多,处理起来最难,大约占95%以上。

2. 特征

2.1 什么是特征

特征通常是建立在原始数据之上的特定表示,它是一个单独可测量的属性,通常用数据集中的列表示。
特征可以从不同的维度来描述一个目标,既有数值也有非数值。

2.2 特征工程

特征工程是将原始数据转化为有效特征的过程,包括数据的清洗,数据的规整,特征的筛选,添加等,使得这些特征能够更加准确的描述模型潜在问题,提高模型对未知数据的预测准确性。
如下图所示,特征工程所处位置。

3. 特征分类

3.1 类型分类

  1. 类别特
    性别(无序,没有先后关系),等级(有序,)
  2. 数值特征
    比如身高
  3. 时空特征
    时间(时间的相对值即可,考虑时间的周期性),地理位置(地理层级关系,外卖考虑距离)

3.2 可解释性

  1. 显式特征
    可以通过人类思维和语言解释其合理性的特征。
    类别,数值,时空,TF-IDF,LDA
  2. 隐式特征
    语言解释不了,但是实际起到作用的特征。
    word2vec,矩阵分解等生成的嵌入特征

4. 特征工程

一般特征工程,主要有三大步骤:

  1. 数据预处理和特征增强
    缺失值处理:一般机器学习模型对缺失值处理比较难(除了树模型),因此需要考虑缺失值填充,对于数值特征可使用均值、中位数,对于离散特征可使用众数。
    归一化:特征之间量纲不同,数值范围不同,特征之间数值差异较大,导致模型收敛问题。因此考虑归一化,min-max归一化,分位数归一化,正态分布归一化。

  2. 特征表达与构建
    类别特征(离散特征):one-hot编码,TF-IDF编码
    数值特征(连续特征):可以直接使用(注意归一化),也可以用分桶离散化。

  3. 特征选择
    基于统计量:方差(方差表征特征的变化程度,如果太小,则特征太平,没有变化,就代表没有信息);皮尔逊相关系数(表征两个变量相关程度,极限状态下是线性相关,则只需要保留一个)
    基于模型:线性模型的系数大小(线性回归,逻辑回归);尝试增加或减少特征,来看模型效果。

5. 案例:逻辑回归CTR预估

如下图所示,通过特征工程,将用户和物品的几类特征规整到表格当中,做CTR点击率预估。

图中特征已经完成了特征工程,直接输入到逻辑模型中去训练预测即可。

6. 本章待补充学习内容

  1. 时间序列特征
  2. TF-IDF原理和应用
  3. LDA原理应用
  4. word2vec
  5. 逻辑回归复习
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值