基于对象特征的推荐

本文为您介绍如何基于对象特征进行商品推荐。

前提条件

已创建工作空间,详情请参见创建工作空间

背景信息

该工作流首先对一份真实电商的4月份和5月份数据进行模型训练并生成预测模型,然后通过6月份的购物数据对该预测模型进行评估,最终选择最优的模型,并将其部署为EAS服务供业务方调用。

重要

本工作流使用的数据为真实电商脱敏数据,仅用于学习,请勿商用。

该工作流数据和完整业务流程已经预置在Designer模板中,您通过拖拽组件即可快速实现一套基于协同过滤的推荐系统。同时,Designer支持模型一键部署,您可以一键将模型部署为EAS服务。

基于对象特征的推荐场景通用流程

image
  1. 将数据导入MaxCompute,生成有监督的结构化数据。

  2. 进行特征工程,例如数据的预处理和特征衍生。特征衍生的作用是扩充数据维度,使数据能更大限度地展示业务特点。

  3. 将数据拆分为两份。其中一份作为训练数据,通过分类算法生成二分类模型。另一份作为预测数据,通过预测组件对模型效果进行测试。

  4. 通过评估组件,获得模型效果。

数据集

本数据源由天池大赛提供,根据时间将其分为4月份和5月份的购买行为数据和6月份的购买行为数据,具体字段如下。

字段名

含义

类型

描述

user_id

用户编号

STRING

购物的用户ID。

item_id

物品编号

STRING

被购买物品的编号。

active_type

购物行为

STRING

  • 0:表示点击。

  • 1:表示购买。

  • 2:表示收藏。

  • 3:表示加入购物车。

active_date

购物时间

STRING

购物发生的时间。

工作流的原始数据示例如下。原始示例数据

实现基于对象特征的推荐

  1. 进入Designer页面。

    1. 登录PAI控制台

    2. 在左侧导航栏单击工作空间列表,在工作空间列表页面中单击待操作的工作空间名称,进入对应工作空间内。

    3. 在工作空间页面的左侧导航栏选择模型开发与训练 > 可视化建模(Designer),进入Designer页面。

  2. 构建工作流。

    1. Designer页面,单击预置模板页签。

    2. 在模板列表,单击基于对象特征的推荐下的创建

    3. 新建工作流对话框,配置参数(可以全部使用默认参数)。

      其中:工作流数据存储配置为OSS Bucket路径,用于存储工作流运行中产出的临时数据和模型。

    4. 单击确定

      您需要等待大约十秒钟,工作流可以创建成功。

    5. 在工作流列表,双击基于对象特征的推荐工作流,进入工作流。

    6. 系统根据预置的模板,自动构建工作流,如下图所示。

      c4a0febf78030c372ff758f0946722da.png

      区域

      描述

      特征工程。将仅有4个字段的原始数据通过特征工程的方法进行数据维度扩充,该实验中的特征包括推荐对象的特征和被推荐对象的特征:

      • 推荐对象为用户(User),扩充的维度为每个User的总购买量、总点击量及总点击购买率(点击量除以购买率,用于描述用户购物的果断性)。

      • 被推荐对象为商品(Item),扩充的维度为每个Item的购买量、点击量及点击购买率(购买量除以点击率)。

      特征工程后,数据集从原始的4个字段扩充到10个字段,如下图所示。特征工程后的数据

      该实验使用了逻辑回归算法进行模型训练。

      您可以单击逻辑回归二分类-1组件,在右侧字段设置页签,选中是否生成PMML复选框,即可生成PMML模型。

      模型评估,即使用预留的一部分未参与模型训练的数据评估模型质量。通常,推荐场景都属于二分类实验,可以使用混淆矩阵和二分类评估组件评估模型预测结果。

  3. 运行实验并查看输出结果。

    1. 单击画布上方的运行

    2. 实验运行结束后,右键单击画布中的逻辑回归二分类-1,在快捷菜单,单击模型选项 > 导出PMML,即可导出训练完成的基于对象特征的推荐模型。

    3. 右键单击画布中的预测,在快捷菜单,单击查看数据 > 预测结果输出,即可查看模型预测结果。

  4. 查看模型评估结果。

    1. 右键单击画布中的二分类评估-1,在快捷菜单,单击可视化分析

    2. 二分类评估-1区域,单击评估图表页签,查看ROC曲线。

      AOC曲线其中蓝色区域的面积为AUC值,面积越大表示模型质量越高。

    3. 右键单击画布中的混淆矩阵-1,在快捷菜单,单击可视化分析

    4. 混淆矩阵-1区域的混淆矩阵页签,查看预测评估指标。

      混淆矩阵评估结果

  5. 在线部署模型。

    如果模型效果达到预期,则可以单击画布上方的模型列表,将其部署为在线服务。具体操作,请参见单模型部署在线服务