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()