swing推荐是swing的批处理预测组件,您可以使用该组件基于swing训练模型和预测数据进行离线预测。本文为您介绍swing推荐的参数配置。
使用限制
支持运行的计算资源为MaxCompute和Flink。
组件配置
您可以通过以下任意一种方式,配置swing推荐参数。
方式一:可视化方式
在Designer工作流页面配置组件参数。
页签 | 参数名称 | 描述 |
字段设置 | Item列列名 | Item列的名称。 |
初始推荐列列名 | 初始推荐列的名称。 | |
算法保留列名 | 算法保留列的名称。 | |
参数设置 | 推荐结果列名 | 推荐结果列的名称。 |
推荐TOP数量 | 推荐的TOP数量,默认为10。 | |
组件多线程线程个数 | 组件多线程的线程个数,默认为1。 | |
执行调优 | 节点个数 | 节点个数,与参数单个节点内存大小配对使用,正整数。范围为[1, 9999]。 |
单个节点内存大小,单位M | 单个节点内存大小,单位MB,正整数。范围[1024, 64*1024]。 |
方式二:Python代码方式
使用PyAlink脚本组件配置该组件参数。您可以使用PyAlink脚本组件进行Python代码调用,详情请参见PyAlink脚本。
参数名称 | 是否必选 | 描述 | 默认值 |
itemCol | 是 | Item列的名称。 | 无 |
recommCol | 是 | 推荐结果列的名称。 | 无 |
initRecommCol | 否 | 初始推荐列的名称。 | 无 |
k | 否 | 推荐的TOP数量。 | 10 |
reservedCols | 否 | 算法保留列的名称。 | 无 |
numThreads | 否 | 组件多线程的线程个数。 | 1 |
Python代码方式的使用示例如下。
df_data = pd.DataFrame([
["a1", "11L", 2.2],
["a1", "12L", 2.0],
["a2", "11L", 2.0],
["a2", "12L", 2.0],
["a3", "12L", 2.0],
["a3", "13L", 2.0],
["a4", "13L", 2.0],
["a4", "14L", 2.0],
["a5", "14L", 2.0],
["a5", "15L", 2.0],
["a6", "15L", 2.0],
["a6", "16L", 2.0],
])
data = BatchOperator.fromDataframe(df_data, schemaStr='user string, item string, rating double')
model = SwingTrainBatchOp()\
.setUserCol("user")\
.setItemCol("item")\
.setMinUserItems(1)\
.linkFrom(data)
predictor = SwingRecommBatchOp()\
.setItemCol("item")\
.setRecommCol("prediction_result")
predictor.linkFrom(model, data).print()