更新时间:2024-04-17 GMT+08:00
分享

近线作业

近线作业简介

近线作业为推荐系统提供实时计算能力。近线作业以数据接入服务DIS中的数据为数据源,实时计算并更新用户画像、物品画像和推荐候选集等数据。使用近线作业,用户需先将业务系统埋点日志转换成实时日志指定格式,并实时写入DIS相应通道。近线作业具体实现请参见图1

图1 近线策略

近线策略的具体功能如下:

可上传3份数据至DIS:实时行为日志、实时用户日志和实时物品日志,如实时日志所示。

实时行为日志会被“基于行为数据的用户画像更新”“基于用户的标签搜索候选集”使用;

实时用户日志会被“基于用户数据更新用户画像”使用;

实时物品日志会被“基于物品数据更新物品画像”使用。

创建近线作业

创建近线作业操作步骤如下:

  1. 登录RES管理控制台,在左侧导航栏单击进入“近线作业”页面。
  2. 在页面上方单击“创建”,进入“创建近线作业”页面。
  3. 填写近线作业“名称”“场景”“描述”
    • 近线策略名称:请以“Nearline-”开始,只能由字母、数字、中划线和下划线组成,并且长度小于64个字符。
    • “场景”信息可选择您在全局配置页面创建的场景。
  4. 设置计算引擎信息,指定“服务名”“集群名称”“任务配置地址”“资源规格”等信息。
  5. 单击“添加近线策略”,根据业务需要在下拉框中选择一个合适的策略。各策略参数说明请单击策略名称进行查看。
  6. (可选)在目标策略右侧,可单击“删除”,删除该策略。
  7. 策略设置完成后,单击“确定”。作业一般需要运行一段时间,请您耐心等待。

    您可以前往近线作业列表,查看作业的基本情况。在作业列表中,刚创建的作业“状态”“计算中”时,表示作业运行结束。当作业的“状态”变为“计算失败”时,您可以单击作业的名称,进入详情页面,通过查看日志等手段处理问题。

基于行为数据的用户画像更新

基于行为数据的用户画像更新可以对用户画像进行持续更新,更新频率可达秒级。以DIS中的实时行为日志为数据源,从中分析出用户画像更新信息,并实时更新用户画像,使用户画像随着用户行为的发生而不断变化。

通过此任务可以更新的用户画像内容有:用户标签等动态信息,以及用户年龄、位置、联系方式等上下文信息。

表1 基于行为数据的用户画像更新参数说明

参数名称

说明

默认值

策略别名

策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。

默认基于行为数据的用户画像更新。

服务名

DIS。将实时近线任务需要的实时行为日志数据添加到DIS中,推荐系统通过读取该数据进行近线计算。

DIS。

通道名称

数据通道名称,不同类型的数据需要创建不同的通道。

无。

起始位置

读取DIS数据的起始位置,latest表示从最新的数据开始读取,earliest表示从通道中现存最旧的数据开始读取。

默认为latest。

行为类型

用户行为包含如下几种类型:

  • view:物品曝光
  • click:用户点击物品
  • collect:用户收藏了某个物品
  • uncollect:用户取消收藏某个物品
  • search_click:用户点击搜索结果中的物品
  • comment:用户对物品的评论
  • share:分享
  • like:点赞
  • dislike:点衰
  • grade:评分
  • consume:消费
  • use:观看视频/听音乐/阅读。

默认选取所有行为。

窗口间隔(秒)

近线策略处理的窗口间隔,单位为秒,10代表每隔10s进行一次算。

10

结果保存路径

根据行为日志,及cloudtable中已存在的用户画像和物品画像实时构造出样本通用数据,以供其他功能使用。

-

更新上下文

用户操作行为表中的“context ”字段代表动作发生的上下文信息。更新上下文就是将这些信息写入到Cloudtable中进行实时的更新。

默认关闭。

是否更新物品的热度值

根据行为日志,计算物品的热度值。近线召回策略中(如利用兴趣标签搜索候选集),召回的候选集按何种顺序排列,如要选择根据热度排序,则需要打开该功能。

默认关闭。

是否保存历史记录

根据行为日志,统计用户的历史记录。近线召回策略中(如利用兴趣标签搜索候选集),召回的候选集中过滤掉用户的历史记录依赖于此项,保存了历史记录才可使用。

默认关闭。

兴趣标签衰减参数

兴趣标签的衰减参数,数值越小,衰减能力越强。数值越大,衰减能力越弱。如果值为0,则代表不衰减。

0.99

兴趣标签维护长度

各标签体系下,兴趣标签的最大长度。

20

全局特征信息文件

用户在使用近线策略之前,需要提供全局特征信息文件,该文件为JSON格式,包含特征名、特征大类、特征值类型。当上传的数据中的特征有变化时,需要同步更新该文件。全局特征信息文件示例请参考全局特征信息文件

-

异常数据输出路径

单击右侧的按钮,选择数据在OBS中的存放路径,此路径下会记录不符合任务要求的输入数据。

-

用户画像存储

该数据来源于基于用户数据更新用户画像更新后的用户画像数据。服务名默认为绑定的CloudTable资源信息。指定集群名称和表名用于存储更新后的用户画像。

不涉及。

物品画像存储

该数据来源于基于物品数据更新物品画像更新后的物品画像数据。服务名默认为绑定的CloudTable资源信息。

不涉及。

过滤存储

过滤出用户发生过某行为的物品,并保存在此表中。例如,过滤出用户看过的物品,并存储在此表中。指定集群名称和表名用于存储更新后的用户画像。

不涉及。

基于用户的标签搜索候选集

基于用户的标签搜索候选集可以持续为用户召回新的候选集,召回频率可达秒级。以DIS中的实时行为日志为数据源,分析用户喜好,并以此为依据为用户召回候选集。此任务包含两种召回方式:

  • 根据兴趣标签召回候选集
  • 根据实时标签召回候选集
表2 基于用户的兴趣标签搜索候选集参数说明

参数名称

说明

默认值

策略别名

策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。

默认基于用户的标签搜索候选集。

数据源

  • 服务名:DIS。将实时近线任务需要的实时行为日志数据添加到DIS中,推荐系统通过读取该数据进行近线计算。
  • 通道名称:数据通道名称,不同类型的数据需要创建不同的通道。
  • 起始位置:读取DIS数据的起始位置,latest表示从最新的数据开始读取,earliest表示从最旧的数据开始读取。

服务名默认DIS。

通道名无。

起始位置默认为latest。

行为类型

用户行为包含如下几种类型:

  • view:物品曝光
  • click:用户点击物品
  • collect:用户收藏了某个物品
  • uncollect:用户取消收藏某个物品
  • search_click:用户点击搜索结果中的物品
  • comment:用户对物品的评论
  • share:分享
  • like:点赞
  • dislike:点衰
  • grade:评分
  • consume:消费
  • use:观看视频/听音乐/阅读。

默认选取所有行为。

窗口间隔(秒)

近线策略处理的窗口间隔,单位为秒,10代表每隔10s进行一次算。

10

过滤历史记录

生成的候选集中是否过滤历史记录,如需要过滤历史记录,则开启此项。

默认关闭。

候选集的排序策略

生成候选集的排列规则,其排列顺序包括:

  • 随机排序:不对候选集排序。
  • 热度排序:根据物品属性表里的物品热度排序,由基于行为数据的用户画像更新生成,热度越大排序越靠前。
  • 时间排序:根据时间对候选集进行排序。时间排序需要指定特征名称和推荐天数。
    • 特征名称:值为时间戳(10位)的特征的名称,任务会根据此特征对候选集进行排序。
    • 推荐天数:推荐数据的时间段,该时间段从当前开始往前推N天,默认15天。

默认热度排序。

候选集最大长度

生成候选集的最大长度,每次计算更新的候选集中的个数不会超过最大值。

默认50。

候选集的召回策略

召回候选集的策略。

  • 兴趣标签召回候选集:根据用户画像的兴趣标签召回候选集。
  • 实时标签召回候选集:根据用户实时操作的物品的标签召回候选集。

默认兴趣标签召回候选集。

兴趣宽度

生成候选集中的兴趣宽度,值越小候选集中的类型越少。

说明:

选择兴趣宽度数量对应的,权重值最高的兴趣标签个数进行检索,得到与标签匹配的物品候选集。

默认3。

全局特征信息文件

用户在使用近线策略之前,需要提供全局特征信息文件,该文件为JSON格式,包含特征名、特征大类、特征值类型。当上传的数据中的特征有变化时,需要同步更新该文件。全局特征信息文件示例请参考全局特征信息文件

-

异常数据输出路径

单击右侧的按钮,选择数据在OBS中的存放路径,此路径下会记录不符合任务要求的输入数据。

-

自定义搜索

改变默认搜索条件,按照所选自定义搜索规则进行搜索。自定义搜索的内容来自于全局特征信息文件。您可以单击添加自定义搜索,在下拉选项中选择用户的兴趣标签,单击转换为另外的标签体系进行召回。

说明:

存在不同标签体系时可使用此功能,自定义搜索条件。一般情况下不建议使用。

-

用户画像存储

指定存储用户画像的存储平台信息。服务名默认CloudTable,指定集群名称和表名用于存储更新后的用户画像。

不涉及。

物品画像存储

指定存储物品画像的存储平台信息。服务名默认CloudTable,指定集群名称和表名用于存储更新后的用户画像。

不涉及。

过滤存储

指定存储过滤集合的存储平台信息。服务名默认CloudTable,指定集群名称和表名用于存储更新后的用户画像。

不涉及

候选集存储

指定存储候选集的存储平台信息。服务名默认CloudTable,指定集群名称和表名用于存储更新后的用户画像。

不涉及。

基于用户数据更新用户画像

基于用户数据更新候选集可以持续更新用户画像,更新频率可达秒级。以DIS中的实时用户数据为数据源,实时捕捉用户数据近线,持续更新或添加用户画像数据,使用户画像处于最新状态。

表3 基于用户数据更新用户画像参数说明

参数名称

说明

默认值

策略别名

策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。

默认基于用户数据更新用户画像。

数据源

  • 服务名:DIS。将实时近线任务需要的实时用户日志数据添加到DIS中,推荐系统通过读取该数据进行近线计算。
  • 通道名称:数据通道名称,不同类型的数据需要创建不同的通道。
  • 起始位置:读取DIS数据的起始位置,latest表示从最新的数据开始读取,earliest表示从最旧的数据开始读取。

服务名默认DIS。

通道名无。

起始位置默认为latest。

窗口间隔(秒)

近线策略处理的窗口间隔,单位为秒,10代表每隔10s进行一次算。

10s。

全局特征信息文件

用户在使用近线策略之前,需要提供全局特征信息文件,该文件为JSON格式,包含特征名、特征大类、特征值类型。当上传的数据中的特征有变化时,需要同步更新该文件。全局特征信息文件示例请参考全局特征信息文件

-

异常数据输出路径

单击右侧的按钮,选择数据在OBS中的存放路径,此路径下会记录不符合任务要求的输入数据。

-

用户画像存储

指定存储用户画像的存储平台信息。

  • 服务名:默认CloudTable,用于存储更新后的用户画像。
  • 集群名称:指定对应的集群名称。
  • 表名:选择对应表名称。您可以单击设置数据版本。RES的数据版本有两种,“V1”版本即数据按照原有格式存储,未做过分区处理。“V2”版本则会依照用户的分区设置做分区处理,当分区合理时,数据将均匀分布在各个节点,有效利用Cloudtable的高并发特性,提升读写效率。其中“预分区数量”“索引分区数量”可以根据数据量进行设置,如果读写性能达不到要求,可以增加Cloudtable的RS单元数量提升性能。

-

基于物品数据更新物品画像

基于物品数据更新物品画像可持续更新物品画像,更新频率可达秒级。以DIS中的实时物品日志为数据源,持续更新或添加物品画像数据,使物品画像处于最新的状态。

表4 基于物品数据更新物品画像参数说明

参数名称

说明

默认值

策略别名

策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。

默认基于物品数据更新物品画像。

数据源

  • 服务名:DIS。将实时近线任务需要的实时物品日志数据添加到DIS中,推荐系统通过读取该数据进行近线计算。
  • 通道名称:数据通道名称,不同类型的数据需要创建不同的通道。
  • 起始位置:读取DIS数据的起始位置,latest表示从最新的数据开始读取,earliest表示从最旧的数据开始读取。

服务名默认DIS。

通道名无。

起始位置默认为latest。

窗口间隔(秒)

近线策略处理的窗口间隔,单位为秒,10代表每隔10s进行一次算。

10s。

全局特征信息文件

用户在使用近线策略之前,需要提供全局特征信息文件,该文件为JSON格式,包含特征名、特征大类、特征值类型。当上传的数据中的特征有变化时,需要同步更新该文件。全局特征信息文件示例请参考全局特征信息文件

-

异常数据输出路径

单击右侧的按钮,选择数据在OBS中的存放路径,此路径下会记录不符合任务要求的输入数据。

-

候选集

是否维护维新入库物品候选集。

  • 时间特征名称:特征值为10位时间戳的特征名称。
  • 候选集最大长度:维护的候选集的最大长度。
  • 保留天数:保留时间为最近N天的候选集。

false

物品画像存储

指定存储物品画像的存储平台信息:

  • 服务名:默认CloudTable,用于存储更新后的物品画像。
  • 集群名称:指定对应的集群名称。
  • 表名:选择对应表名称。您可以单击设置数据版本。RES的数据版本有两种,“V1”版本即数据按照原有格式存储,未做过分区处理。“V2”版本则会依照用户的分区设置做分区处理,当分区合理时,数据将均匀分布在各个节点,有效利用Cloudtable的高并发特性,提升读写效率。其中“预分区数量”“索引分区数量”可以根据数据量进行设置,如果读写性能达不到要求,可以增加Cloudtable的RS单元数量提升性能。

-

流式训练

流式训练接入用户行为数据,进行在线训练,以分钟级更新在线服务依赖的排序模型,减少排序模型的效果衰减。

前提条件

  1. 已存在运行成功的排序策略。建议“优化器类型”选择“ftrl”
  2. 已存在运行成功的在线服务。该在线服务“排序方式”“点击率预估”并且“模型文件路径”1排序策略生成的模型存储路径。
    • 流式训练仅支持2019年12月4日0点之后创建的排序策略和在线服务。
    • 流式训练使用到的排序策略不支持“核函数特征交互神经网络-PIN”算法。
    • 建议您定期“重新执行”条件1对应的离线排序任务。重新执行排序策略后,在线服务和流式训练作业将自动同步新产生的模型,无需重新配置或重新执行在线服务和流式训练作业。
    • 在线服务可以减少排序模型的效果衰减,但仍需定期重新执行离线任务。
表5 流式训练参数说明

参数名称

说明

默认值

策略别名

策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。

默认流式训练。

数据源

  • 服务名:添加已经进行资源绑定的DIS资源。
  • 输入流位置:行为数据流的输入配置。将实时近线任务需要的实时物品日志数据添加到输入流指定的DIS通道中,推荐系统通过读取该数据进行近线计算。
    • 通道名称:DIS的数据通道名称,不同类型的数据需要创建不同的通道。
    • 起始位置:读取DIS数据的起始位置,latest表示从最新的数据开始读取,earliest表示从最旧的数据开始读取。
  • 输出流位置:行为数据流处理后的输出配置。选择对应的DIS通道名称进行存放。输出流存放的数据属于流式训练作业的中间数据,用户无需获取或发送数据到输出流绑定的数据通道,只需确保该通道仅供本作业作为输出流使用。

服务名默认DIS。

通道名无。

起始位置默认为latest。

窗口间隔(秒)

近线策略处理的窗口间隔,单位为秒,10代表每隔10s进行一次算。

10s。

算子参数

  • 在线服务名:使用的在线服务的名称。该在线服务需满足前提条件的要求。
  • 流程名:在线服务对应的在线流程名称。
  • 异常数据输出路径:单击右侧的按钮,选择数据在OBS中的存放路径,此路径下会记录不符合任务要求的输入数据。

-

训练设置

  • 计算节点规格:您可以根据业务需求选择节点规格,“8核|16GiB”“8核|32GiB”“8核|64GiB”“16核|128GiB”
  • 模型更新间隔:模型更新时间间隔,更新模型文件。

默认“8核|16GiB”

时间间隔10min

优化策略相关参数

  • 优化器类型:ftrl。适用于处理超大规模数据的,含大量稀疏特征的在线学习的常见优化算法
  • 学习率:优化算法的参数,决定优化器在最优方向上前进步长的参数。默认0.1。
  • 初始梯度累加和:梯度累加和用来调整学习步长。默认0.1。
  • L1正则项系数:叠加在模型的1范数之上,用来对模型值进行限制防止过拟合。默认0。
  • L2正则项系数:叠加在模型的2范数之上,用来对模型值进行限制防止过拟合。默认0。

-

相关文档