FM(Factorization Machine)算法兼顾特征之间的相互作用,是一种非线性模型,适用于电商、广告及直播的推荐场景。

组件配置

PAI-Studio提供的FM算法模板包括FM训练和FM预测组件,您可以在PAI-Studio控制台首页的FM算法实现推荐模型区域,单击从模板创建,快速构建FM实验。

PAI-Studio支持通过可视化或PAI命令的方式,配置该组件参数:
  • 可视化方式
    组件 页签 参数 描述
    FM训练 字段设置 特征列 数据格式为key:value,多个特征以英文逗号(,)分隔。
    标签列 输入列。仅支持DOUBLE类型。
    参数设置 任务类型 支持regressionbinary_classification类型。
    迭代数 无。
    正则化系数 使用英文逗号(,)分隔的三个浮点数,分别表示0阶项、1阶项及2阶项的正则化系数。
    学习率 如果训练发散,则降低该参数取值。
    参数初始化标准差 无。
    维度 使用英文逗号(,)分隔的三个正整数,分别表示0阶项、1阶项、2阶项长度。
    数据块大小 性能参数。
    输出表生命周期 无。
    执行调优 节点个数 单个节点内存大小配合使用。取值范围为1~9999。
    单个节点内存大小 节点个数配合使用。取值范围为1024 MB~64*1024 MB。
    FM预测 参数设置 预测结果列名 无。
    预测得分列名 无。
    详细预测信息列名 无。
    保持列 保存至输出结果表的列。
    执行调优 节点个数 单个节点内存大小配合使用。取值范围为1~9999。
    单个节点内存大小 节点个数配合使用。取值范围为1024 MB~64*1024 MB。
  • PAI命令方式
    组件 参数 是否必选 描述 默认值
    FM训练 tensorColName 特征列名称。 数据格式为key:value,多个特征使用英文逗号(,)分隔。例如1:1.0,3:1.0
    labelColName label列名。数据必须是数值类型。如果task取值为binary_classification,则label只能取01
    task 任务类型。取值范围为{regression,binary_classification} regression
    numEpochs 迭代数。 10
    dim 使用英文逗号(,)分隔的三个整数,分别表示0次项、线性项及二次项的长度。 1,1,10
    learnRate 学习率。
    说明 如果训练发散,则降低学习率
    0.01
    lambda 使用英文逗号(,)分隔的三个浮点数,分别表示0次项、线性项及二次项的正则化系数。 0.01,0.01,0.01
    initStdev 参数初始化标准差。 0.05
    FM预测 predResultColName 预测结果列名。 prediction_result
    predScoreColName 预测得分列名。 prediction_score
    predDetailColName 详细预测信息列名。 prediction_detail
    keepColNames 保存至输出结果表的列。 所有列
例如,使用如下数据作为FM算法模板的输入数据,训练生成的模型AUC约为0.97。输入数据模型评估报告