Swing Recommendationは、上流のバッチデータを予測するためにSwingによって提供されるコンポーネントです。 Swing Recommendationコンポーネントを使用すると、Swing Trainコンポーネントによって生成されたモデルと予測データに基づいて、Platform for AI (PAI) でオフライン予測を実行できます。 このトピックでは、Swing Recommendationコンポーネントのパラメーター設定について説明します。
制限事項
Swing Trainコンポーネントは、MaxComputeおよびRealtime Compute for Apache Flinkのコンピューティングリソースに基づいて使用できます。
コンポーネントの設定
次のいずれかの方法を使用してコンポーネントを設定できます。
方法1: PAIコンソールでコンポーネントを設定する
Machine Learning DesignerのパイプラインページでSwing Recommendationコンポーネントを設定します。 下表に、各パラメーターを説明します。
タブ | パラメーター | 説明 |
フィールド設定 | itemCol | アイテム列の名前。 |
initRecommCol | 最初に推奨されるアイテム列の名前。 | |
reservedCols | アルゴリズムの予約された列の名前。 | |
パラメーター設定 | recommCol | レコメンデーション結果列の名前。 |
k | 最上位の推奨アイテムの数。 デフォルト値は 10 です。 | |
numThreads | コンポーネントのスレッド数。 デフォルト値は 1 です。 | |
チューニングの実行 | 数の労働者 | ワーカーノードの数。 値は正の整数でなければなりません。 このパラメーターは、Memory per workerパラメーターと一緒に使用する必要があります。 有効な値: 1 ~ 9999 |
workerあたりのメモリ | 各ワーカーノードのメモリサイズ。 単位:MB。 値は正の整数でなければなりません。 有効値: 1024〜65536 (64 × 1024) 。 |
方法2: Pythonコードを使用してコンポーネントを構成する
PyAlinkスクリプトコンポーネントを使用してPythonコードを呼び出すことができます。 詳細については、「PyAlinkスクリプト」をご参照ください。 下表に、各パラメーターを説明します。
パラメーター | 必須 | 説明 | デフォルト値 |
itemCol | 可 | アイテム列の名前。 | N/A |
recommCol | 可 | レコメンデーション結果列の名前。 | N/A |
initRecommCol | 不可 | 最初に推奨されるアイテム列の名前。 | N/A |
k | 不可 | 最上位の推奨アイテムの数。 | 10 |
reservedCols | 不可 | アルゴリズムの予約された列の名前。 | N/A |
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()
例
次の図は、Swing Recommendationコンポーネントが使用されるサンプルパイプラインを示しています。 この例では、次の手順を実行して、前の図のコンポーネントを構成します。
[Read Table-1] コンポーネントを使用して、テストデータセットを読み取ります。 [テーブルの読み取り]-1コンポーネントの [テーブル名] パラメーターを、テストデータセットを格納するテーブルの名前に設定します。 テーブルの名前を取得する方法については、Swing Trainトピックの「例」セクションを参照してください。
Swing Trainコンポーネントを使用してモデルをトレーニングします。
テストデータセットとモデルをSwing Recommendationコンポーネントにインポートし、コンポーネントパラメーターを設定します。 詳細については、このトピックの「方法1: PAIコンソールでコンポーネントを構成する」を参照してください。