推荐系统的特征工程

构建一个好的特征工程,需要依次解决三个问题:

  • 构建特征工程应该遵循的基本原则是什么?
  • 有哪些常用的特征类别?
  • 如何在原始特征的基础上进行特征处理,生成可供推荐系统训练和推断yoga的特征向量?

1. 构建推荐系统特征工程的原则

2. 推荐系统中的常用特征

2.1 用户行为数据

2.2 用户关系数据

2.3 属性、标签类数据

2.4 内容类数据

2.5 上下文数据

2.6 统计类数据

2.7 组合类数据

组合类特征是指将不同特征进行组合后生成的新特征。
刚开始的推荐系统,推荐模型(比如逻辑回归)往往不具备特征组合的能力。在最近的深度学习推荐系统下,组合类特征不一定通过人工组合、人工筛选的方法选出,可以由模型进行自动处理。

3.常用的特征处理方法

对于推荐系统来说,模型的输入往往是由数字组成的特征向量。

  • 连续性特征
    用户年龄、统计类特征、物品的发布时间、影片的播放时长等数值型的特征。对于这类特征的处理,最常用的处理手段包括归一化、离散化、加非线性函数等方法。

    • 归一化:统一各特征量纲
    • 离散化:通过确定分位数的形式将原来的连续值进行分桶,最终形成离散值的过程。
    • 加非线性函数:直接把原来的特征通过非线性函数做变换,然后把原来的特征及变换后的特征一起加入模型进行训练。
  • 类别型特征
    用户的历史行为数据、属性标签数据等都是类别性特征,其表现形式往往是一个类别或者一个id。最常用的处理方法是one-hot编码转换成一个数值向量,面对同一个特征域非唯一的类别选择,还可以使用multi-hot编码。
    以上处理方法导致特征向量维度过大,特征过于稀疏,容易造成模型欠拟合,模型的权重参数的数量过多,导致模型收敛过慢。Embedding技术可以先将类别特征编码成Embedding向量,再与其他特征进行组合,形成最终特征向量。

4. 特征工程与业务理解

在推荐模型和特征工程趋于一体化的今天,特征工程本身就是深度学习模型的一部分。

只有深入了解业务的运行模式,了解用户在业务场景下的思考模式和行为动机,才能精确地抽取出最有价值的特征,构建成功的深度学习模型。

参考:深度学习推荐系统

猜你喜欢

转载自blog.csdn.net/weixin_44127327/article/details/112765408