华为云用户手册

  • 逻辑斯蒂回归-LR 逻辑斯蒂回归算法是一种广义的线性回归分析模型,常用于数据挖掘、疾病自动诊断、经济预测等领域。逻辑斯蒂回归算法通过在线性回归的基础上叠加一个sigmoid激活函数将输出值映射到[0,1]之间,是机器学习领域里常用的二分类算法。单击查看逻辑斯蒂回归详情信息。 表1 逻辑斯蒂回归参数说明 参数名称 说明 计算节点信息 用户可使用的计算资源种类。包括“8核|16GiB”、“8核|32GiB”、“8核|64GiB”、“16核|128GiB”。 训练数据的obs路径 单击选择特征工程排序样本预处理生成的训练数据所在的OBS路径。 即特征工程“排序样本预处理”结果保存路径下具体的训练文件路径。 测试数据的obs路径 单击选择特征工程排序样本预处理生成的测试数据所在的OBS路径。 即特征工程“排序样本预处理”结果保存路径下具体的测试文件路径。 特征值数量统计文件 该文件标识了每一个域下的特征数量,排序数据处理接口会生成这个文件,需要用户提供此文件完整路径。文件路径为特征工程中排序样本预处理作业输出数据的结果保存路径的“fields_feature_size”目录下文件名称是part-00000开头的文件,需要用户提供文件的OBS路径。 最大迭代轮数 模型训练的最大迭代轮数,默认50。 提前终止训练轮数 在测试集上连续N轮迭代AUC无提高时,迭代停止,训练提前结束,默认5。 初始化方法 模型参数的初始化方法。 normal:正态分布 平均值:默认0 标准差:0.001 uniform :均匀分布 最小值:默认-0.001,均匀分布的最小值,必须小于最大值。 最大值:默认0.001,均匀分布的最大值,必须大于最小值。 xavier: 初始化初始值为 均值为0,方差为 Var(wi)=1/nin 的均匀分布(高斯或者随机分布)。其中 nin 是该神经元的输入数目。 优化器类型 grad:梯度下降算法 学习率:优化算法的参数,决定优化器在最优方向上前进步长的参数。默认0.001。 adam:自适应矩估计算法 结合AdaGrad和 RMS Prop两种优化算法的优点,对梯度的一阶矩估计(First Moment Estimation,即梯度的均值)和二阶矩估计(Second Moment Estimation,即梯度的未中心化的方差)进行综合考虑,依次计算出更新步长。 学习率:优化算法的参数,决定优化器在最优方向上前进步长的参数。默认0.001。 数值稳定常量:为保证数值稳定而设置的一个微小常量。默认1e-8。 adagrad:自适应梯度算法 对每个不同的参数调整不同的学习率,对频繁变化的参数以更小的步长进行更新,而稀疏的参数以更大的步长进行更新。 学习率:优化算法的参数,决定优化器在最优方向上前进步长的参数。默认0.001。 初始梯度累加和:梯度累加和用来调整学习步长。默认0.1。 ftrl:Follow The Regularized Leader 适用于处理超大规模数据的,含大量稀疏特征的在线学习的常见优化算法。 学习率:优化算法的参数,决定优化器在最优方向上前进步长的参数。默认0.1。 初始梯度累加和:梯度累加和用来调整学习步长。默认0.1。 L1正则项系数:叠加在模型的1范数之上,用来对模型值进行限制防止过拟合。默认0。 L2正则项系数:叠加在模型的2范数之上,用来对模型值进行限制防止过拟合。默认0。 L2正则项系数 叠加在模型的2范数之上,用来对模型值进行限制防止过拟合。默认0。 正则损失计算方式 正则损失计算当前有两种方式。 full:指针对全量参数计算。 batch:则仅针对当前批数据中出现的参数计算 说明: batch模式计算速度快于full模式。 保存根路径 单击选择训练结果在OBS中的保存根路径,训练完成后,会将模型和日志文件保存在该路径下。该路径不能包含中文。
  • 业务规则-人工导入 业务规则-人工导入是指用户自定义物品列表,并将此列表排序后作为候选集,以供在线服务调用。 表19 参数说明 参数名称 说明 策略名 策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。默认召回策略的名称。 OBS地址 用户可从此OBS地址中选择自定义物品列表。 输入数据 数据格式(.csv文件): itemId1,score1 itemId2,score2 itemId为物品id,score为物品分数。score不是必选,如果不选则算法默认给物品分配分数。算法将物品列表根据分数排序后作为候选集 用户可从OBS中选择保存有人工编辑推荐结果的列表(即物品ID)。 表20 输出数据 名称 类型 描述 MANUALRULE_REC_OFFLINE_UIREC_CANDIDATES CANDIDATES_SET 人工编辑候选集。 例如,127,1
  • 基于属性匹配的召回策略 基于属性匹配的召回策略会用用户画像和物品画像的相关属性进行匹配,为用户召回属性匹配程度高的若干个物品。 表21 参数说明 参数名称 说明 默认值 策略别名 策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。 默认召回策略的名称。 全局特征信息文件 用户在使用近线策略之前,需要提供全局特征信息文件,该文件中包含了离线数据中用户、物品的所有特征字段及对应数据类型,并且特征类型要始终保持一致。全局特征信息文件示例请参考全局特征信息文件。 - 匹配类型 画像匹配类型,包括: 用户匹配物品 物品匹配用户 用户自匹配 物品自匹配 用户匹配物品 匹配特征对 用户和物品相关联特征。请根据实际情况配置参数,如果属性匹配特征对相似度较高内存不够时需提升配置。您可以单击进入“添加匹配特征对”页面进行配置。设置特征对的别名、根据全局特征信息文件匹配用户特征名和物品特征名,设置权重。 - 推荐个数 推荐给用户的物品最大个数。 10 行数 该值越大筛选相似项条件越严格。 5 条数 该值越小筛选相似项条件越严格。 4 用户画像存储 该数据来源于基于用户数据更新用户画像更新后的用户画像数据或者初始用户画像-物品画像-标准宽表生成的用户画像。 - 物品画像存储 该数据来源于基于物品数据更新物品画像更新后的物品画像数据或者初始用户画像-物品画像-标准宽表生成的物品画像。 - 最大推荐结果数 最多生成多少个推荐结果。 该参数会运用在“输出数据”的推荐候选集上。 100
  • 基于UCB算法的推荐 基于UCB算法的推荐综合考虑了用户操作行为表中,物品发生的某几种行为类型及次数,然后给每一个物品都计算一个得分,最终返回得分最高的若干个物品。 表22 参数说明 参数名称 说明 默认值 策略别名 策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。 默认召回策略的名称 数据源 数据源类型有初始格式和通用格式2种可选。 初始格式 用户操作行为表:单击选择OBS中存储的用户操作行为表。当选择数据格式为csv时,根据情况单击设置数据参数。 通用格式 通用格式数据:特征工程“初始用户画像-物品画像-标准宽表生成”算子生成的用户推荐系统的数据。从用户特征表、物品特征表以及用户行为表中提取用户、物品特征和用户行为,并生成json数据,即内部通用格式。 默认选择初始格式 行为时间跨度(天) 指定历史行为时间段,选取数据中最靠后的时间往前N天的行为数据计算用户偏好。建议至少设置30天。 30天 行为权重 当用户行为信息中存在多种行为类型时,可通过指定行为的权重,来统一量化行为类型对应的评分。 用户行为权重项包含如下几种类型: view:物品曝光 click:用户点击物品 collect:用户收藏了某个物品 search_click:用户点击搜索结果中的物品 comment:用户对物品的评论 share:分享 like:点赞 grade:评分 consume:消费 use:观看视频/听音乐/阅读。 您可以单击“增加行为权重”,新增一个行为权重。通过和来自定义权重大小。 单击可以删除对应行的行为权重。 物品曝光 1.0 最小行为次数 在物品上产生过行为的最小用户数,其中一个用户在一个物品上只计算一次行为。 30 折中参数 令alpha为Exploration 和 Exploitation之间的折中参数,其取值范围为[0,1],alpha越趋近于0,则物品的得分对历史得分高的物品越有利,即 Exploitation。反之,alpha越趋近于1,则物品的得分越倾向于探索新物品,即Exploration。 0.5 最大推荐结果数 最多生成多少个推荐结果。 该参数会运用在“输出数据”的推荐候选集上。 100 表23 输入数据 数据 是否必须 描述 USER_BEHAVIOR 是 用户操作行为表。 表24 输出数据 名称 类型 描述 UCB_REC_OFFLINE_CANDIDATES CANDIDATES_SET UCB算法生成的候选集。
  • 业务规则-基于历史行为记忆生成候选集 业务规则-基于历史行为记忆生成候选集可以从用户历史行为数据中筛选出发生过某些行为的物品(例如,筛选出曾经点击过5次的物品)。此策略适用于“看了又看”,“买了又买”等推荐场景。 表16 参数说明 参数名称 说明 默认值 策略别名 策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。 默认召回策略的名称 数据源 数据源类型有初始格式和通用格式2种可选。 初始格式 用户操作行为表:单击选择OBS中存储的用户操作行为表。当选择数据格式为csv时,根据情况单击设置数据参数。 通用格式 通用格式数据:特征工程“初始用户画像-物品画像-标准宽表生成”算子生成的用户推荐系统的数据。从用户特征表、物品特征表以及用户行为表中提取用户、物品特征和用户行为,并生成json数据,即内部通用格式。 默认选择初始格式 行为时间跨度(天) 指定历史行为时间段,选取数据中最靠后的时间往前N天的行为数据计算用户偏好。建议至少设置30天。 30天 行为类型 默认物品曝光,配置参数请参见表1中说明。 物品曝光;1次 最大推荐结果数 最多生成多少个推荐结果。 该参数会运用在“输出数据”的推荐候选集上。 100 表17 输入数据 数据 是否必须 描述 USER_BEHAVIOR 是 用户操作行为表。 表18 输出数据 名称 类型 描述 CUSTOMRULE_REC_OFFLINE_UIREC_CANDIDATES CANDIDATES_SET CustomRule生成的用户-物品列表候选集。
  • 基于交替最小二乘的矩阵分解推荐 基于交替最小二乘的矩阵分解推荐:基于用户-物品的行为信息作为原始矩阵,利用ALS优化算法对原始矩阵进行矩阵分解,分解之后的用户隐向量矩阵和物品隐向量矩阵可以用来生成预估的新的用户-物品评分矩阵,提取出评分最高的若干个物品作为召回结果。 表13 参数说明 参数名称 说明 默认值 策略别名 策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。 默认召回策略的名称 数据源 数据源类型有初始格式和通用格式2种可选。 初始格式 用户操作行为表:单击选择OBS中存储的用户操作行为表。当选择数据格式为csv时,根据情况单击设置数据参数。 通用格式 通用格式数据:特征工程“初始用户画像-物品画像-标准宽表生成”算子生成的用户推荐系统的数据。从用户特征表、物品特征表以及用户行为表中提取用户、物品特征和用户行为,并生成json数据,即内部通用格式。 默认选择初始格式 行为时间跨度(天) 指定历史行为时间段,选取数据中最靠后的时间往前N天的行为数据计算用户偏好。建议至少设置30天。 30天 行为权重 当用户行为信息中存在多种行为类型时,可通过指定行为的权重,来统一量化行为类型对应的评分。 用户行为权重项包含如下几种类型: view:物品曝光 click:用户点击物品 collect:用户收藏了某个物品 search_click:用户点击搜索结果中的物品 comment:用户对物品的评论 share:分享 like:点赞 grade:评分 consume:消费 use:观看视频/听音乐/阅读。 您可以单击“增加行为权重”,新增一个行为权重。通过和来自定义权重大小。 单击可以删除对应行的行为权重。 物品曝光 1.0 隐向量维度 在ALS算法中使用,指定用户隐向量、物品隐向量的隐含因子的维度大小。如果离线计算失败,建议调小至10以下。 10 最大迭代次数 指定迭代优化的最大迭代次数。如果离线计算失败,建议调小至10以下。 10 正则化系数 在ALS算法中使用,指定正则化系数,作为优化目标中参数项代价的系数,用于避免过拟合现象发生。 0.01 最大推荐结果数 最多生成多少个推荐结果。 该参数会运用在“输出数据”的推荐候选集上。 100 表14 输入数据 数据 是否必须 描述 USER_BEHAVIOR 是 用户操作行为表。 表15 输出数据 名称 类型 描述 ALSCF_REC_OFFLINE_UIREC_CANDIDATES CANDIDATES_SET AlsCF算法生成的用户-物品列表候选集。
  • 基于用户的协同过滤推荐 采用经典算法基于用户的协同过滤(UserCF)进行召回。 表10 参数说明 参数名称 说明 默认值 策略别名 策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。 默认召回策略的名称 数据源 数据源类型有初始格式和通用格式2种可选。 初始格式 用户操作行为表:单击选择OBS中存储的用户操作行为表。当选择数据格式为csv时,根据情况单击设置数据参数。 通用格式 通用格式数据:特征工程“初始用户画像-物品画像-标准宽表生成”算子生成的用户推荐系统的数据。从用户特征表、物品特征表以及用户行为表中提取用户、物品特征和用户行为,并生成json数据,即内部通用格式。 默认选择初始格式 行为时间跨度(天) 指定历史行为时间段,选取数据中最靠后的时间往前N天的行为数据计算用户偏好。建议至少设置30天。 30天 行为权重 当用户行为信息中存在多种行为类型时,可通过指定行为的权重,来统一量化行为类型对应的评分。 用户行为权重项包含如下几种类型: view:物品曝光 click:用户点击物品 collect:用户收藏了某个物品 search_click:用户点击搜索结果中的物品 comment:用户对物品的评论 share:分享 like:点赞 grade:评分 consume:消费 use:观看视频/听音乐/阅读。 您可以单击“增加行为权重”,新增一个行为权重。通过和来自定义权重大小。 单击可以删除对应行的行为权重。 物品曝光 1.0 用户最近邻域数 在UserCF算法中使用,指定某个用户的若干个最近邻用户,构成该用户近邻集合。 50 相似性度量方式 请参见表7中说明。 基于余弦夹角的相似性计算 行数 用于筛选用户最近邻域的条件组合参数。该值越大,筛选条件越严格。 5 条数 用于筛选用户最近邻域的条件组合参数。该值越小,筛选条件越严格。 4 最大推荐结果数 最多生成多少个推荐结果。 该参数会运用在“输出数据”的推荐候选集上。 100 表11 输入数据 数据 是否必须 描述 USER_BEHAVIOR 是 用户操作行为表。 表12 输出数据 名称 类型 描述 USERCF_REC_OFFLINE_CANDIDATES CANDIDATES_SET UserCF算法生成的用户-物品列表候选集。
  • 基于特定行为热度推荐 基于特定行为热度推荐通过统计用户操作行为表中物品发生某行为的次数,按照次数从高到低返回物品列表。比如可以统计物品被购买的次数,而返回被购买次数最高的若干个物品。 表1 参数说明 参数名称 说明 默认值 策略别名 策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。 默认召回策略的名称 数据源 数据源类型有初始格式和通用格式2种可选。 初始格式 用户操作行为表:单击选择OBS中存储的用户操作行为表。当选择数据格式为csv时,根据情况单击设置数据参数。 通用格式 通用格式数据:特征工程“初始用户画像-物品画像-标准宽表生成”算子生成的用户推荐系统的数据。从用户特征表、物品特征表以及用户行为表中提取用户、物品特征和用户行为,并生成json数据,即内部通用格式。 默认选择初始格式 时间选择 时间选择包括数据时间和行为时间跨度。 数据时间:用于匹配在起始时间和终止时间内的行为数据。 行为时间跨度:指定历史行为时间段,选取数据中最靠后的时间往前N天的行为数据计算用户偏好。建议至少设置30天。 默认选择数据时间的当月所有数据 行为类型 在特定行为热度策略中使用,选择一种行为类型后基于该种行为热度进行推荐。 用户行为包含如下几种类型: view:物品曝光 click:用户点击物品 collect:用户收藏了某个物品 uncollect:用户取消收藏某个物品 search_click:用户点击搜索结果中的物品 comment:用户对物品的评论 share:分享 like:点赞 dislike:点衰 grade:评分 consume:消费 use:观看视频/听音乐/阅读。 物品曝光 行为次数统计方法 统计物品记录数的方式。 pv:page view,即页面浏览量或点击量。 uv:unique visitor,即同一个访客只记录一条数据。 默认pv 排序算法类型 物品热度是否随着时间衰减。 不衰减:normal。 衰减:time。 不衰减 最大推荐结果数 最多生成多少个推荐结果。 该参数会运用在“输出数据”的推荐候选集上。 100 表2 输入数据 数据 是否必须 描述 USER_BEHAVIOR 是 用户操作行为表。 表3 输出数据 名称 类型 描述 HOT_REC_OFFLINE_CANDIDATES CANDIDATES_SET 特定行为热度推荐算法生成的候选集。
  • 基于综合行为热度推荐 基于综合行为热度推荐与基于特定行为热度推荐的召回原理大体相同,不同点是用统计几种行为的加权热度代替了特定行为热度。 表4 参数说明 参数名称 说明 默认值 策略别名 策略显示名称,由中文、英文、数字、下划线、空格或者中划线组成,并且不能以空格开始和结束,长度为1~60个字符。 默认召回策略的名称 扩展功能 组合作业的资源选择数据源类型为“通用格式”时,会出现扩展功能选项。 创建“基于综合行为热度推荐”的召回策略时,当开启扩展功能,数据源类型仅支持通用格式。 该功能表名是否使用分组推荐功能,根据全局特征信息文件勾选的用户特征或物品特征进行分组。 扩展功能开启: 扩展功能关闭: 默认关闭 数据源 数据源类型有初始格式和通用格式2种可选。 初始格式 用户操作行为表:初始单击选择OBS中存储的用户操作行为表。当选择数据格式为csv时,根据情况单击设置数据参数。 通用格式 通用格式数据:特征工程“初始用户画像-物品画像-标准宽表生成”算子生成的用户推荐系统的数据。从用户特征表、物品特征表以及用户行为表中提取用户、物品特征和用户行为,并生成json数据,即内部通用格式。 默认选择初始格式 时间选择 时间选择包括数据时间和行为时间跨度。 数据时间:用于匹配在起始时间和终止时间内的行为数据。 行为时间跨度:指定历史行为时间段,选取数据中最靠后的时间往前N天的行为数据计算用户偏好。建议至少设置30天。 默认选择数据时间的当月所有数据 行为权重 当用户行为信息中存在多种行为类型时,可通过指定行为的权重,来统一量化行为类型对应的评分。 用户行为权重包含: view:物品曝光 click:用户点击物品 collect:用户收藏了某个物品 uncollect:用户取消收藏某个物品 search_click:用户点击搜索结果中的物品 comment:用户对物品的评论 share:分享 like:点赞 dislike:点衰 grade:评分 consume:消费 use:观看视频/听音乐/阅读 您可以单击“增加行为权重”,新增一个行为权重。通过和来自定义权重大小。 单击可以删除对应行的行为权重。 物品曝光 1.0 全局特征信息文件 开启扩展功能时,此配置项生效。其中“数据源类型”您可以选择“用户特征”或者“物品特征”进行设置。 全局特征信息文件:单击选择该文件的OBS存储路径,当涉及更新时,单击更新全局特征信息文件,并重新设置依赖此文件的配置项。 用户特征:从下拉选项中勾选全局特征信息文件中提取的用户特征用于进行分组推荐。 物品特征:从下拉选项中勾选全局特征信息文件中提取的物品特征用于进行分组推荐。 - 行为次数统计方法 统计物品记录数的方式。 pv:page view,即页面浏览量或点击量。 uv:unique visitor,即同一个访客只记录一条数据。 默认pv 排序算法类型 物品热度是否随着时间衰减。 不衰减:normal。 衰减:time。 不衰减 最大推荐结果数 最多生成多少个推荐结果。 该参数会运用在“输出数据”的推荐候选集上。 100 表5 输入数据 数据 是否必须 描述 USER_BEHAVIOR 是 用户操作行为表。 表6 输出数据 名称 类型 描述 WEIGHT_BEHAVIORS_REC_OFFLINE_CANDIDATES CANDIDATES_SET 综合行为热度推荐算法生成的候选集。
  • 创建召回策略 在“创建召回策略”页面,您可以对目标数据选择不同策略进行离线计算,得到合适的候选集。 创建召回策略操作步骤如下: 在“离线作业”下,单击“召回策略”页签,单击上方“创建”,进入“创建召回策略”页面。 在“创建召回策略”页面,填写召回策略“名称”、“场景”和“描述”。 召回策略名称:请以“Retrieval-”开始,只能由字母、数字、中划线和下划线组成,并且长度小于64个字符。 “场景”信息可选择您在全局配置页面创建的场景。 设置计算引擎和信息,指定“服务名”、“集群名称”、“任务配置地址”、“资源规格”等信息。 单击“添加召回策略”,根据业务需要在下拉框中选择一个合适的策略。具体策略参数说明请单击上方策略名称查看。 图2 添加召回策略 (可选)在目标召回策略右侧,单击“查看输入输出”,可以查看输入数据和输出数据。 (可选)在目标召回策略右侧,单击“设置参数”,可以对所选策略进行参数设置。 (可选)在目标召回策略右侧,单击“删除”,可以删除该策略。 策略设置完成后,单击“确定”。作业一般需要运行一段时间,根据您的数据量和资源不同,训练时间将耗时几分钟到几十分钟不等,请您耐心等待。 您可以前往召回策略列表,查看作业的基本情况。在作业列表中,刚创建的作业“状态”为“计算中”,当作业“状态”变为“计算成功”时,表示作业运行结束,生成的候选集ID将使用于在线服务,为用户生成推荐列表。当作业“状态”变为“计算失败”时,您可以单击作业的名称,进入详情页面,通过查看日志等手段处理问题。
  • 示例 { "user_features":[ { "feature_name":"provinceId", "feature_type":"BASIC_INFO", "feature_value_type":"string" }, { "feature_name":"salary", "feature_type":"BASIC_INFO", "feature_value_type":"numerical" }, { "feature_name":"hobbies", "feature_type":"BASIC_INFO", "feature_value_type":"strArray" }, { "feature_name":"user_tags", "feature_type":"TAGS", "feature_value_type":"map" }, { "feature_name":"payment_type", "feature_type":"CONTEXT", "feature_value_type":"string" } ], "item_features":[ { "feature_name":"product_name", "feature_type":"BASIC_INFO", "feature_value_type":"string" }, { "feature_name":"order_price", "feature_type":"BASIC_INFO", "feature_value_type":"numerical" }, { "feature_name":"categories", "feature_type":"BASIC_INFO", "feature_value_type":"strArray" }, { "feature_name":"item_tags", "feature_type":"TAGS", "feature_value_type":"map" } ] }
  • 实时用户日志 实时用户日志用于在实时流中对用户画像表进行写入。 表2 用户实时日志字段描述 字段名 类型 描述 是否必选 userId String 全局唯一用户ID。 是 BASICINFO Json 用户基本属性值。其中字段的值只能是数值型,字符串或字符串数组。 否 TAGS Json 用户的兴趣标签。其中字段的值只能是Map类型。 可传入不同类型的标签信息(如人工标签,关键词标签等)。 此标签体系需与物品标签体系相同。如果无历史兴趣标签,则无需传入此字段。推荐系统将会根据特定行为匹配的标签进行计算并完成更新。 说明: 传入TAGS字段会直接覆盖原程序中已计算出的兴趣标签权重。 否 CONTEXT Json 用户上下文信息。其中字段的值只能是数值型,字符串或字符串数组。 否
  • 实时物品日志示例 { "itemId":"item123", "BASICINFO":{ "weight":12, "brand":"male", "price":333 }, "TAGS":{ "artificialLabel":{ "tag1":0.84, "tag2":0.22, "tag3":0.88 }, "keywordLabel":{ "tag4":0.22, "tag5":0.99 } } }
  • 实时用户日志示例 { "userId":"user123", "BASICINFO":{ "age":15, "gender":"male", "salary":31693.84172, "hobbies":[ "体育", "美术", "音乐", "格斗", "书法" ] }, "TAGS":{ "artificialLabel":{ "tag1":0.84, "tag2":0.22, "tag3":0.88 }, "keywordLabel":{ "tag4":0.22, "tag5":0.99 } }, "CONTEXT":{ "provinceId":"3853", "cityId":"3868", "districtId":"3873" } }
  • 实时物品日志 实时物品日志用于在实时流中对物品画像表进行写入。 表3 物品实时日志字段描述 字段名 类型 描述 是否必选 itemId String 全局唯一物品ID。 是 BASICINFO Json 物品基本属性值。其中字段的值只能是数值型,字符串或字符串数组。 否 TAGS Json 物品标签。其中字段的值只能是Map类型。 可传入不同类型的标签信息(如人工标签,关键词标签等)。 说明: 如果此字段为空,则RES无法根据行为计算用户的兴趣标签。 否 表4 物品实时日志示例表 itemId BASICINFO TAGS item123 weight brand price artificialLabel keywordLabel 12 "male" 333 {"tag1":0.84,"tag2":0.22,"tag3":0.88} {"tag4":0.22,"tag5":0.99}
  • 实时行为日志 实时行为日志的作用包括: 更新用户的兴趣标签。 记录所选行为类型的历史记录。 更新用户的上下文信息。 召回候选集。 表1 实时行为日志字段描述 字段名 类型 描述 是否必选 userId String 用户ID。 是 objectType String 发生行为对象的类型, item是用户和商品本身发生的行为。 是 actionObject String 对应行为发生的对象的值,如果是和商品发生关系:则是商品的id(itemId)的值。 是 actionType String 行为类型: 物品曝光 用户点击物品 用户收藏了某个物品 用户取消收藏某个物品 用户点击搜索结果中的物品 用户对物品的评论 分享 点赞 点衰 评分 消费 观看视频/听音乐/阅读 是 actionMeasure String 发生行为的度量,金额,评分,次数(整数)等。 默认值: 评分和观看视频/听音乐/阅读可由用户根据实际情况自行定义,如观看两分钟,值为 “1.5”,观看5分钟,值为“1.8”。 其余行为的默认值为1.0。 是 actionContent String 发生行为为评论时,需要记录评论内容。 行为为搜索时,需要记录搜索的关键字。 否 actionDateTime String 行为发生的时间,采用UTC标准时间,单位以秒计。 否 actionLocation String 行为发生的位置,精度维度格式:[latitude, longitude]。 否 context Json 动作发生的上下文信息,内容为json对象,也可作为行为表的扩展字段。例如,用户当前的设备id,ip地址等信息。 否 subSite String 行为发生的位置ID,比如,在首页推荐里面点击,在详情页里面浏览。 否 traceId String 用于追踪每个被推荐物品的唯一ID。用于推荐效果的计算。 否 flowId String 用于计算每一个在线服务的效果。flowId由推荐系统的API返回给用户,用户需把flowId写到用户行为日志中。 否
  • 操作步骤 登录RES管理控制台,在左侧导航栏选择进入“在线服务”页面。 在页面上方单击“创建”进入“创建在线服务”,在页面填写相关参数。 填写基本信息并选择服务类型。您可以根据实际情况填写“名称”、“场景”和“描述”信息。其中“场景”信息可选择您在全局配置页面创建的场景。 图1 基本信息 根据业务需求选择服务类型。包括“推荐引擎”、“排序”和“文本标签”。 单击“添加在线流程”,并进行命名,您最多可以部署5个在线流程。根据选择的服务类型配置在线流程,包括融合、过滤、排序和模型及配置等关键信息。具体参数信息参见表1。服务类型选择推荐引擎。 图2 创建在线服务 表1 创建在线服务参数说明 参数名称 子参数 说明 融合 “推荐结果设置” “添加推荐候选集”(选择离线或近线任务所生成的推荐候选集进行排序) 任务别名和UUID:单击操作列表的“选择”添加离线或近线的任务名称和候选集ID。 优先级:优先级高的推荐结果将确保展示在优先级低的之前。 同优先级数据占比:优先级相同的推荐候选集,该占比展示推荐数量,同优先级下的数据占比之和需要等于100%。 “添加在线候选集”(根据设置的参数在线进行召回,必须添加全局特征信息文件才可设置参数) 任务别名和UUID:分别默认为“在线候选集召回”和“online-recall”,无需改动。 优先级、同优先级数据占比:同添加推荐候选集。 设置参数:单击操作列的“设置参数”进行召回策略参数的配置。根据业务需求选择召回类型为物品或者用户,配置在线召回特征。在线召回的特征属性来自于公共配置的全局特征信息文件。 可单击“添加推荐候选集、添加在线候选集”配置多个候选集,作为当前在线流程的排序候选集。 说明: 在线候选集的延迟较推荐候选集较高,如无特殊需求,建议选择推荐候选集。 容错 容错用于数据请求异常时的固定人工输出召回集。需要在离线作业创建召回策略进行人工策略的计算。单击“选择”获取人工导入策略的任务别名和UUID。 离线过滤 过滤 过滤数据来源于过滤规则产生的候选集,单击“选择”获取过滤的任务别名和UUID。 在线过滤 【去重】物品属性 属性名从画像算子生成,如“product_color”,则对产品颜色相同的物品进行去重。 【去重】忽略长度 截断物品ID末尾指定长度后的字符串进行去重,如指定长度为2,则SKU_A1234和SKU_A1244只会保留其中一个。 属性过滤规则 指定定制化用户属性以及物品属性过滤规则,属性过滤规则用于过滤最终用户的推荐结果。例如,对于一线城市的用户过滤敏感信息物品,使之不进入候选集。单击增加属性过滤规则。 用户属性:指定在用户属性中需要过滤的字段,包含属性名和属性值。来源于画像数据,即特征工程中初始用户画像-物品画像-标准宽表生成算子作业输出的数据,用户属性来自于公共配置的全局特征信息文件。如过滤籍贯是广东且性别为男性的用户。 物品属性:指定在物品属性中需要过滤的字段,包含属性名和属性值。来源于画像数据,即特征工程中初始用户画像-物品画像-标准宽表生成算子作业输出的数据,物品属性的名称来自于公共配置的全局特征信息文件。如过滤产品颜色为红色且产品品牌为华为的物品。 排序方式 “点击率预估” 特征工程:排序数据来源于排序算子作业产生的候选集。单击“选择”获取排序策略的任务别名和UUID。 模型文件路径:排序策略生成的模型存储路径。 “属性权重” 属性权重:输入属性,权重默认1.0 。也可单击“增加属性权重”。 公共配置 “全局特征信息文件” 为json格式文件。指定在去重过滤即属性过滤中物品属性和用户属性的特征信息文件,如物品属性需要“feature_name”、“feature_type”、“feature_value_type”字段来表示特征名,特征类型以及特征值类型。需预先存储在OBS中。 “画像” 画像为特征工程中初始用户画像-物品画像-标准宽表生成算子的结果。且此画像会用于去重过滤、属性过滤以及排序的计算中。单击“选择”获取特征工程作业产生的UUID。 模型及配置 - 设置模型名称、模型版本、计算节点规格、计算节点个数和分流(%)。 模型名称和模型版本选择调用API接口的模型名称和模型版本。“计算节点规格”默认2核|8GiB,“计算节点个数”默认为2,“分流”之和必须是100%。 完成该项配置后,单击“下一步”进入规格确认页面,核对无误后,单击“完成”。当您通过在线服务列表查看在线服务的状态由“初始化”、“部署中”变更为“运行中”时即完成在线服务的部署。在线服务一般需要运行一段时间,根据您的数据量和资源不同,运行时间将耗时几分钟到几十分钟不等,请您耐心等待。
  • 删除离线作业 您可以对“计算成功”、“计算失败”等状态的作业进行删除,“启动中”、“计算中”状态的作业不支持删除操作。 登录RES管理控制台。在左侧菜单栏中选择“离线作业”下的目标推荐作业,进入作业列表。 在作业列表页面,您可以单击目标作业“操作”列的“删除”。 在删除页面,您可以直接单击“是”只删除该作业。也可以勾选下方的“同时删除作业产生的CloudTable数据”,选择该作业对应的数据进行离线删除。 图1 删除作业 离线作业删除后,将不可恢复,请谨慎操作。
  • 召回策略 您可以根据业务需要,选择合适的召回策略。召回策略用于配置离线计算逻辑,通过启动离线计算任务进行候选推荐结果集的生成。 各个召回策略的详细参数设置和输入输出请单击下方链接查看。 基于特定行为热度推荐 基于综合行为热度推荐 基于物品的协同过滤推荐 基于用户的协同过滤推荐 基于交替最小二乘的矩阵分解推荐 业务规则-基于历史行为记忆生成候选集 业务规则-人工导入 基于属性匹配的召回策略 配置召回策略操作步骤如下: 在“创建组合作业”页面,配置完资源选择参数之后,进入“召回策略”页签,单击“添加召回策略”,根据业务需要在下拉框中选择一个合适的策略,如图2所示。 图2 召回策略 (可选)在目标召回策略右侧,单击“查看输入输出”,可以查看输入数据和输出数据。 (可选)在目标召回策略右侧,单击“设置参数”,可以对所选策略进行参数设置。 具体策略的参数说明可单击上方策略名称进行查看,策略设置完成后,单击“下一步”。
  • 排序策略 排序策略是用于对召回策略生成的候选集进行二次排序。如果使用排序策略,需在特征工程中提交排序样本预处理,创建完成后才可以正常使用排序策略。 各个策略的详细参数设置和输入输出请单击下方链接查看。 逻辑斯蒂回归-LR 因子分解机-FM 域感知因子分解机-FFM 深度网络因子分解机-DeepFM 核函数特征交互神经网络-PIN 在“创建组合作业”页面,配置完过滤规则参数之后,进入“排序策略”页签,如图3所示。用户可以根据业务需要在“添加排序策略”下拉框中选择一个合适的排序策略,请参见排序策略对所选排序策略进行参数设置。 图3 排序策略 (可选)在目标排序策略,单击“删除”,可以删除对应排序策略。 具体策略的参数说明可单击上方策略名称进行查看,策略设置完成之后,单击“下一步”进入“预览设置”页面。
  • 预览配置 在“预览设置”页面,展示了创建作业的名称、资源信息、召回策略信息、过滤规则和排序规则详细信息。 预览结束后,单击“完成”,组合作业创建完成。作业一般需要运行一段时间,根据您的数据量和资源不同,训练时间将耗时几分钟到几十分钟不等。 您可以前往组合作业列表,查看作业的基本情况。在组合作业列表中,刚创建的离线作业“状态”为“计算中”,当离线作业的“状态”变为“计算成功”时,表示作业运行结束,生成的候选集ID将使用于在线服务,为用户生成推荐列表。当离线作业的“状态”变为“计算失败”时,您可以单击作业的名称,进入详情页面,通过查看日志等手段处理问题。
  • 基本配置 基本配置主要包括设置组合作业的名称和描述。 登录RES管理控制台,在左侧导航栏的“离线作业”下,单击“组合作业”进入组合作业页面。 在“组合作业”页面上方,单击“创建”,进入“创建组合作业”页面。 填写“名称”、“场景”和“描述”,其中带*标志的参数为必填参数。 组合作业名称请以“Standard-”开始,只能由字母、数字、中划线和下划线组成,并且长度小于64个字符。 “场景”信息可选择您在全局配置页面创建的场景。 完成该项配置后,单击“下一步”。
  • 资源选择 您在使用RES时需要选择计算引擎、存储平台和数据源。计算引擎对数据进行计算,存储平台将处理的数据进行存储。其选择的服务资源即为“资源中心”绑定的资源。 在RES管理控制台完成“基本配置”之后,进入“资源选择”页签。 填写组合作业相关配置参数,请参见表1。 表1 创建组合作业参数说明 模块 参数名称 说明 计算引擎 服务名 计算引擎用于推荐系统的离线计算和近线计算。默认 DLI 。 集群名称 选择“资源中心”绑定的DLI集群名称。 任务配置地址 在创建作业时, 会自动生成一个JSON格式的配置源文件,该文件存储在指定的OBS路径中,计算引擎可以通过读取配置源文件来进行离线计算。 资源名 指定DLI运行作业的资源规格。 可选择“全局配置”添加的计算资源或默认值。 存储平台 服务名称 CloudTable作为存储平台,用于用户推荐在线数据和推荐候选集的存储。此处选择已经完成资源绑定的CloudTable。 集群名称 选择“资源中心”绑定的CloudTable集群名称。 表名 存储的表格名称。 您可以单击设置数据版本。RES的数据版本有两种,“V1”版本即数据按照原有格式存储,未做过分区处理。“V2”版本则会依照用户的分区设置做分区处理,当分区合理时,数据将均匀分布在各个节点,有效利用Cloudtable的高并发特性,提升读写效率。其中“预分区数量”和“索引分区数量”可以根据数据量进行设置,如果读写性能达不到要求,可以增加Cloudtable的RS单元数量提升性能。 数据源 初始格式 选择提前已经存储在OBS上的如下数据源: 用户属性表 物品属性表 用户操作行为表 如上数据表的数据格式规范请参见离线数据源。 在对应表的“数据源”列中,单击选择数据的OBS存储路径。 在对应表的“数据格式”列中,数据格式可选:csv/json。 当选择数据格式为csv时,在弹框中设置数据参数,具体参数如下: 表头,有或无,根据用户数据格式选取。 分隔符,选择逗号(,)、竖线(|)、制表符(\t)和自定义。 引用字符,单引号(')、双引号(")和自定义。 转义字符,反斜杠(\)和自定义。 在对应表的“操作”列中,单击“清除数据”可以删除对应表的数据源。 通用格式 通用数据由特征工程“初始用户画像-物品画像-标准宽表生成”算子生成。其路径与“初始用户画像-物品画像-标准宽表生成”结果保存路径一致。 说明: 在使用通用格式数据之前,需要先进行特征工程算子计算。 通用格式数据:从用户属性表、物品属性表和用户操作行为表中提取用户、物品特征和用户行为,并生成JSON数据,即内部通用格式。 通用格式时间:用户行为数据时间范围,可只有起始时间、结束时间或为空。 完成该项配置后,单击“下一步”。
  • 步骤1:准备数据 RES在公共OBS桶中提供了猜你喜欢的示例数据集,命名为“test-data”,因此,本文的操作示例使用此数据集进行构建。您需要执行如下操作,将数据集上传至您的OBS目录下,即准备工作中您创建的OBS目录。 单击下载样例数据,将“test-data”数据集下载至本地。 在本地,将“test-data”压缩包解压。例如,解压至本地“test-data”文件夹下。 在“test-data”文件夹下,将behavior.txt中的每条数据的actionTime字段的值修改到当前时间附近。将item.txt中的每条数据的publishTime字段的值修改到当前时间附近,将item.txt中的每条数据的expireTime字段的值修改成大于当前时间的值,避免数据因为过期被过滤掉。 查询当前时间戳,网址https://tool.lu/timestamp。 图1 查询当前时间戳 将behavior.txt中的每条数据的actionTime字段的值修改到当前时间附近。 图2 修改behavior.txt文件 将item.txt中的每条数据的publishTime字段的值修改到当前时间附近,将item.txt中的每条数据的expireTime字段的值修改成大于当前时间的值。 图3 修改item.txt文件 将“test-data”文件夹下的所有文件上传至准备工作中您创建的OBS路径下。
  • 步骤1:准备数据 RES在公共OBS桶中提供了猜你喜欢的示例数据集,命名为“test-data”,因此,本文的操作示例使用此数据集进行构建。您需要执行如下操作,将数据集上传至您的OBS目录下,即准备工作中您创建的OBS目录。 单击下载样例数据,将“test-data”数据集下载至本地。 在本地,将“test-data”压缩包解压。例如,解压至本地“test-data”文件夹下。 在“test-data”文件夹下,将behavior.txt中的每条数据的actionTime字段的值修改到当前时间附近。将item.txt中的每条数据的publishTime字段的值修改到当前时间附近,将item.txt中的每条数据的expireTime字段的值修改成大于当前时间的值,避免数据因为过期被过滤掉。 查询当前时间戳,网址https://tool.lu/timestamp。 图1 查询当前时间戳 将behavior.txt中的每条数据的actionTime字段的值修改到当前时间附近。 图2 修改behavior.txt文件 将item.txt中的每条数据的publishTime字段的值修改到当前时间附近,将item.txt中的每条数据的expireTime字段的值修改成大于当前时间的值。 图3 修改item.txt文件 将“test-data”文件夹下的所有文件上传至准备工作中您创建的OBS路径下。
  • 步骤5:获取预测结果 在线服务发布执行成功后,您可以进入在线服务,发起预测请求进行测试。 在“自定义场景”列表页面,单击目标场景名称,进入“自定义场景详情”页面。 单击“预测”页签,进入预测页面。 预测方式选择“代码”,在“预测代码”部分输入预测代码。单击“预测”,右侧出现排序后的预测结果。 由于此处是测试服务,为保证测试效果,此处选用测试数据中的用户ID进行预测,建议为user894。 图9 预测结果 预测代码 { "id":"user894", "rec_num": 10 } 预测结果 { "flow_id": "hot-flow", "rec_num": 10, "candidates": [ { "id": "item332", "score": 1, "source": "hot-recall-DIREC" }, { "id": "item709", "score": 0.995, "source": "hot-recall-DIREC" }, { "id": "item338", "score": 0.99, "source": "hot-recall-DIREC" }, { "id": "item960", "score": 0.98499995, "source": "hot-recall-DIREC" }, { "id": "item469", "score": 0.97999996, "source": "hot-recall-DIREC" }, { "id": "item236", "score": 0.97499996, "source": "hot-recall-DIREC" } ] }
  • 计费模式 RES目前提供按需、预付套餐包共2种计费方式。 按需购买:这种购买方式比较灵活,可以即开即停。 预付套餐包:客户预先购买一定的资源使用量配额,在按需使用过程中,系统优先扣减配额,超出配额的使用量才需要额外根据按需费用付费。购买的预付套餐包为在有效期内单位规格的计算时长。例如,您购买了计算型CPU(1U4G)实例20000小时,指单位规格1CU运行20000小时。如果在数据源或者场景中配置计算规格为4CU的话,则可以运行5000小时。同理,存储资源和在线服务也是这种模式。套餐包的有效期为一年,如果在一年内没用完相应的资源,系统会自动清除剩余的资源配额。
  • RES权限 默认情况下,管理员创建的 IAM 用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得策略定义的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。 RES部署时通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域(如华北-北京1)对应的项目(cn-north-1)中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问RES时,需要先切换至授权区域。 根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。例如:针对E CS 服务,管理员能够控制IAM用户仅能对某一类云服务器资源进行指定的管理操作。多数细粒度策略以API接口为粒度进行权限拆分,RES支持的API授权项请参见《权限策略和授权项》。 如表1所示,包括了RES的所有系统权限。 表1 RES系统策略 系统策略名称 描述 类别 RES FullAccess 推荐系统服务管理员权限,拥有该权限的用户可以操作并使用所有推荐系统服务。 系统策略 RES ReadOnlyAccess 推荐系统服务只读权限,拥有该权限的用户仅能查看推荐系统服务数据。 系统策略 RES常用操作与系统策略的授权关系如表2所示,您可以参照该表选择合适的系统策略。 表2 常用操作与系统策略的关系 操作 RES FullAccess RES ReadOnlyAccess 新增工作空间 √ x 查询工作空间详情 √ √ 查询工作空间列表 √ √ 修改工作空间 √ x 删除工作空间 √ x 新增数据源 √ x 查询数据源详情 √ √ 查询数据源列表 √ √ 修改数据源 √ x 删除数据源 √ x 新增场景 √ x 查询场景 √ √ 查询场景列表 √ √ 修改场景 √ x 删除场景 √ x 运行场景 √ x 新增作业 √ x 查询作业详情 √ √ 查询作业列表 √ √ 修改作业算子 √ x 删除作业 √ x 运行作业 √ x
  • 与其他云服务的关系 表1 RES与其他服务的关系 相关服务 交互功能 数据湖探索 数据湖 探索(Data Lake Insight,简称DLI)用于推荐系统的离线计算和近线计算。DLI的更多信息请参见《数据湖探索文档》。 对象存储服务 对象存储服务(Object Storage Service,简称OBS)存储RES的推荐数据源,实现安全、高可靠和低成本的存储需求。OBS的更多信息请参见《对象存储服务文档》。 数据接入服务 数据接入服务(Data Ingestion Service,简称DIS)提供推荐数据源的实时日志。DIS的更多信息请参见《数据接入服务文档》。 统一身份认证 服务 统一身份认证服务(Identity and Access Management,简称IAM)为RES提供了华为云统一入口鉴权功能和OBS与DIS的委托授权。IAM的更多信息请参见《统一身份认证服务文档》。 ModelArts ModelArts是面向AI开发者的一站式开发平台,排序策略使用Modelarts的深度学习计算能力训练得到排序模型。ModelArts的更多信息请参见《ModelArts服务文档》。
  • 配额说明 为防止资源滥用,平台限定了各服务资源的配额,对用户的资源数量和容量做了限制。 表1 RES服务配额 资源 限制条件 建议 推荐引擎预测接口中最多请求结果数量 20 可提工单支持更高规格。 单份画像数据中最多支持的特征数量 30 单场景在线服务最多支持每秒请求的次数(TPS) 200 数据源个数 5 场景个数 10 单场景下推荐预测返回的结果集个数 20 如果当前资源配额限制无法满足使用需要,您可以申请扩大配额。配额查看及修改请参见关于配额。
共100000条