机器学习PAI easyrec做TagFeature特征输入时,怎么配置不做embedding层?[阿里云机器学习PAI]

机器学习PAI easyrec做TagFeature特征输入时,怎么配置不做embedding层,直接将特征原值作为输入?不要使用Excel特征配置

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
3 条回复 A 作者 M 管理员
  1. 在机器学习PAI中,EasyRec处理TagFeature特征时,如果不想使用embedding层,而是直接将特征原值作为输入,可以通过以下步骤进行配置:

    1. 首先,您需要创建一个RawFeature类型的字段,用于存储原始的标签信息。例如,如果您的标签信息是”体育,娱乐,科技”这样的字符串,那么您可以创建一个RawFeature类型的字段,将这些标签信息存储在这个字段中。

    2. 然后,在模型配置中,找到对应的特征配置部分。在这里,您可以指定这个RawFeature类型的字段作为模型的输入特征。

    3. 最后,由于您不想使用embedding层,所以在特征配置中,您需要将embedding_size设置为0。这样,模型在训练过程中就不会对这个特征进行embedding操作了。

    通过以上步骤,您就可以实现在EasyRec中使用TagFeature特征,但不使用embedding层,而是直接将特征原值作为输入的配置了。

  2. 在阿里云的机器学习PAI(Platform for AI Innovation)中,如果你想在easyrec中使用TagFeature并且不进行embedding层,你可以直接在模型的定义文件中配置。

    在PAI的easyrec模型中,TagFeature是一个特殊的特征,它不会被embedding层处理,而是直接被输入到模型中。你可以在模型的定义文件中设置is_tag_feature字段为True,这样就可以将这个特征设置为TagFeature。

    以下是一个示例:

    {    "name": "EasyRec",    "type": "EasyRecModel",    "inputs": [        {            "name": "user_id",            "type": "int64",            "is_sparse": false,            "is_tag_feature": true        },        {            "name": "item_id",            "type": "int64",            "is_sparse": false,            "is_tag_feature": true        }    ],    "outputs": [        {            "name": "prediction",            "type": "float32"        }    ]}

    在这个示例中,user_iditem_id都被设置为TagFeature,它们的值将被直接输入到模型中,而不经过embedding层。

  3. 在使用机器学习PAI easyrec训练模型时,可以使用 TagFeature 类型来输入原始特征值。在训练时,TagFeature 类型可以将原始特征值转换为可训练的形式。此外,还需要将 tag_column 和 embedding_size 参数设置为适当的值。需要注意的是,TagFeature 不支持嵌套结构,只能用于字符串类型的特征。总之,在机器学习PAI easyrec中,可以使用 TagFeature 类型来输入原始特征,并将tag_column 和 embedding_size 设置为适当的值。