开发者社区 > 大数据与机器学习 > 人工智能平台PAI > 正文

机器学习PAI行为序列里面的值,如何用共享embedding啊?

机器学习PAI行为序列里面的值,如何用共享embedding啊?行为序列里面没有 combiner,但是一个kv特征有combiner,然后会报shared embed info is not matched,要共享的是一个类别特征

展开
收起
真的很搞笑 2024-01-28 18:54:42 74 0
2 条回答
写回答
取消 提交回答
  • 我记得key 和seq是可以共享emb 的。在Feature config里面设置就好了 8da0124f8075f2c4a1adb9776f634435.png
    ,此回答整理自钉群“【EasyRec】推荐算法交流群”

    2024-01-28 22:25:18
    赞同 1 展开评论 打赏
  • 在阿里云PAI机器学习平台中,如果你想让一个类别特征的embedding与行为序列特征共享同一个embedding矩阵,同时另一个KV特征也共享这个embedding矩阵,但KV特征有自己的combiner,而行为序列特征没有明确指定combiner,这可能会导致共享冲突。

    行为序列特征通常会通过序列模型组件(如GRU、LSTM或Transformer等)来处理,这些组件内部会隐含地对序列中的元素进行某种形式的组合(combiner),而不是在特征层面显式定义。

    解决共享embedding匹配问题,你可以按照以下步骤操作:

    1. 确保所有要共享embedding的特征都在特征配置(FeatureConfig)中指定了相同的embedding_name属性,这样它们都会引用同一个嵌入层。

    2. 对于KV特征,配置combiner以合并多个key的嵌入向量,例如使用combiner: "mean"combiner: "sum"

    3. 对于行为序列特征,即使它没有明确的combiner属性,也需要确保在模型架构中正确处理序列特征的嵌入向量。序列模型通常会对序列元素逐个嵌入后再通过序列模型进行编码,而不是直接进行简单的向量组合。

    4. 检查模型搭建时,序列特征经过嵌入层后,是否与其他特征在统一的维度上,以便后续能够进行合理的融合或连接操作。

    如果仍然出现shared embed info is not matched的错误,可能的原因包括:

    • 特征配置中的维度不一致。
    • 序列特征在模型构建阶段没有正确地与共享的embedding矩阵对接。
    • KV特征的combiner与序列特征处理方式之间存在逻辑冲突,比如序列特征已经隐含进行了某种形式的组合,而KV特征又进行了额外的组合。
    2024-01-28 21:38:41
    赞同 展开评论 打赏

人工智能平台 PAI(Platform for AI,原机器学习平台PAI)是面向开发者和企业的机器学习/深度学习工程平台,提供包含数据标注、模型构建、模型训练、模型部署、推理优化在内的AI开发全链路服务,内置140+种优化算法,具备丰富的行业场景插件,为用户提供低门槛、高性能的云原生AI工程化能力。

相关产品

  • 人工智能平台 PAI
  • 相关电子书

    更多
    大规模机器学习在蚂蚁+阿里的应用 立即下载
    阿里巴巴机器学习平台AI 立即下载
    机器学习及人机交互实战 立即下载