次の方法で共有


スコア マッチボックス レコメンダー

重要

Machine Learning Studio (クラシック) のサポートは、2024 年 8 月 31 日に終了します。 その日までに、Azure Machine Learning に切り替えすることをお勧めします。

2021 年 12 月 1 日以降、新しい Machine Learning Studio (クラシック) リソースは作成できません。 2024 年 8 月 31 日まで、既存の Machine Learning Studio (クラシック) リソースを引き続き使用できます。

ML Studio (クラシック) のドキュメントは廃止予定であり、今後更新されない可能性があります。

マッチボックス レコメンダーを使用したデータセットの予測をスコア付けします

カテゴリ: Machine Learning/スコア

注意

適用対象: Machine Learning Studio (クラシック)のみ

類似のドラッグ アンド ドロップ モジュールは Azure Machine Learning デザイナーで使用できます。

モジュールの概要

この記事では、Machine Learning Studio (クラシック) のスコアマッチボックスレコメンダーモジュールを使用して、Microsoft Research の matchbox アルゴリズムに基づいて、トレーニング済みの推奨モデルに基づいて予測を作成する方法について説明します。

Matchbox レコメンダーは、次の4種類の予測を生成できます。

後者の3種類の予測を作成する場合は、 運用モード または 評価モードのいずれかで操作できます。

  • 運用モードでは、すべてのユーザーまたは項目が考慮されます。これは通常、Web サービスで使用されます。

    トレーニング中に確認されたユーザーだけでなく、新しいユーザーのスコアも作成できます。 詳しくは、このセクションをご覧ください。

  • 評価モードは、評価できるユーザーや項目を絞り込んだうえで動作し、通常は実験中に使用されます。

ヒント

このチュートリアルでは、.NET 開発チームから、推奨システムを構築するためのエンドツーエンドのエクスペリエンスについて理解しておく必要があるすべての情報について説明します。 アプリケーションから Machine Learning を呼び出す方法について、サンプルコードとその説明を示します。

Machine Learning を使用した .NET アプリケーションの推奨エンジンの構築

Matchbox レコメンダーの詳細

推奨システムを作成する目的は、システムの "ユーザー" に1つ以上の "項目" を推奨することです。 項目の例として、映画、レストラン、本、曲などがあります。 ユーザーは、個人、個人のグループ、または項目の好みがあるその他のエンティティにすることができます。

レコメンダー システムには、主に 2 つのアプローチがあります。 1 つ目は、コンテンツベースのアプローチです。これは、ユーザーと項目の両方の特徴を利用します。 ユーザーは、年齢や性別などのプロパティによって記述できます。また、項目は作成者や製造元などのプロパティによって記述される場合があります。 コンテンツベースのレコメンデーション システムの一般的な例は、出会い系のサイトです。 2 番目の方法は協調フィルタリングです。このフィルターでは、ユーザーと項目の識別子のみを使用し、ユーザーが項目に対して指定した (疎な) 評価マトリックスから、これらのエンティティについての暗黙的な情報を取得します。 ユーザーについての情報は、そのユーザーが評価した項目や、同じ項目を評価した他のユーザーから学ぶことができます。

マッチボックス レコメンダーは、協調フィルタ リングと内容ベースのアプローチを組み合わせています。 したがって、ハイブリッド レコメンダーと考えることができます。 ユーザーがシステムの比較的初心者である場合は、ユーザーに関する特徴の情報を使用することによって予測が向上します。このようにしてよく知られた "コールド スタート" の問題に対処します。 ただし、特定のユーザーから十分な数の評価がある場合、特徴だけではなく特定の評価に基づいて完全に個人用に設定された予測を作成できます。 そのため、コンテンツベースの推奨事項から協調フィルタリングに基づく推奨事項へのスムーズな移行があります。 ユーザーまたは項目の機能を使用できない場合でも、Matchbox は引き続きコラボレーションフィルターモードで動作します。

マッチボックス レコメンダーおよびその基礎となっている確率論的アルゴリズムの詳細については、関連の調査報告書があります。

推奨エンジンからスコアを作成する方法の例については、「 Azure AI Gallery」を参照してください。

  • どこでもおすすめ: このブログ投稿では、多くの視覚エイドを備えたレコメンダーシステムの概要を説明しています。

スコアマッチボックスレコメンダーを構成する方法

このモジュールでは、複数の種類のレコメンデーションがサポートされており、それぞれで要件が異なります。 使用するデータの種類と、作成するレコメンデーションの種類に対応するリンクをクリックしてください。

評価を予測する

評価を予測する場合は、指定されたトレーニング データに基づいて、特定のユーザーが特定のアイテムにどのように反応するかが計算されます。 そのため、スコアリング用の入力データには、ユーザーと評価する項目の両方を指定する必要があります。

  1. トレーニング済みの推奨モデルを実験に追加し、トレーニング済みの マッチボックスレコメンダーに接続します。 トレーニング Matchbox レコメンダーを使用してモデルを作成する必要があります。

  2. [Recommender prediction kind]\(レコメンダー予測の種類\) : [Rating Prediction]\(評価の予測\) を選択します。 その他のパラメーターは必要ありません。

  3. 予測の対象となるデータを追加し、それを [Dataset to score]\(スコア付けするデータセット\) に接続します。

    評価を予測するには、入力データセットにユーザーと項目のペアが含まれている必要があります。

    データセットの 3 列目に、ユーザーと項目のペア (1 列目と 2 列目) に対する評価を含めることもできすが、予測中には 3 列目は無視されます。

  4. (省略可能)。 ユーザーの特徴のデータセットを保持している場合は、それを [User features]\(ユーザーの特徴\) に接続します。

    ユーザーの特徴のデータセットでは、最初の列にユーザー識別子が含まれている必要があります。 その他の列には、性別、基本設定、場所など、ユーザーを特徴付ける値が含まれている必要があります。

    評価済みの項目を持つユーザーの特徴は、トレーニング中に既に学習されているため、 スコアマッチボックスレコメンダーによって無視されます。 そのため、事前にデータセットをフィルター処理して、コールド スタート ユーザー (どの項目も評価していないユーザー) だけを含めます。

    警告

    ユーザーの特徴を使用せずにモデルがトレーニングされた場合は、スコア付けの間にユーザーの特徴を導入することはできません。

  5. 項目の特徴のデータセットを保持している場合は、それを [Item features]\(項目の特徴\) に接続できます。

    項目の特徴データセットでは、最初の列に項目の識別子を含める必要があります。 その他の列には、項目を特徴付ける値を含める必要があります。

    評価された項目の特徴は、トレーニング中に既に学習されているため、 スコアマッチボックスレコメンダー によって無視されます。 そのため、データセットのスコア付けをコールド スタートの項目 (どのユーザーにも評価されていない項目) に限定します。

    警告

    項目の特徴を使用せずにモデルがトレーニングされた場合は、スコア付けの間に項目の特徴を導入することはできません。

  6. ( トレーニングデータセットという名前の) 5 番目の入力ポートを使用して、予測結果から既に評価済みの項目を削除します。

    このフィルターを適用するには、元のトレーニング データセットを入力ポートに接続します。

  7. 実験を実行します。

評価予測の結果

出力データセットには 3 つの列が含まれていて、1 列目にはユーザー、2 列目には項目、3 列目には、各ユーザーと項目に対して予測される評価が示されます。

さらに、スコア付けの間に次の変更が適用されます。

  • ユーザーまたは項目の特徴列の欠損値は、その存在しないトレーニングセット値の モード に自動的に置き換えられます。

  • すべてのユーザーと項目の機能は、トレーニングで見られる対応する最大絶対値によってスケールされます。

  • 低密度を維持するために、特徴の値に変換は適用されません。

  • 文字列値の特徴は、一連のバイナリ値インジケーターの特徴に変換されます。

レコメンデーション

ユーザーに対して項目を推奨するには、ユーザーと項目の一覧を入力として指定します。 このデータを基に、モデルは既存の項目とユーザーに関するナレッジを使用して、各ユーザーにとって魅力のある項目のリストを生成します。 返されるレコメンデーションの数をカスタマイズし、レコメンデーションの生成に必要な過去のレコメンデーション数のしきい値を設定することもできます。

  1. トレーニング済みのレコメンド モデルを実験に追加し、トレーニング済みの マッチボックス レコメンダーに接続します。 Train Matchbox Recommender を使用してモデルを作成する必要があります

  2. 特定のユーザー リストに対して項目を推奨するには、 [Recommender prediction kind]\(レコメンダー予測の種類\)[Item Recommendation]\(項目の推奨\) に設定します。

  3. [Recommended item selection]\(推奨される項目の選択\) :スコア付けモジュールを運用環境で使用するのか、それともモデルの評価に使用するのかを指定します (次のいずれかの値を選択します)。

    • [From Rated Items (for model evaluation)]\(評価された項目から (モデル評価用)\) :モデルを開発またはテストしている場合は、このオプションを選択します。 このオプションを選択すると評価モードが有効になります。モジュールは、評価された入力データセット内の項目からのみ、レコメンデーションを作成します。

    • [From All Items]\(すべての項目から\) :Web サービスや運用環境で使用するために実験を設定している場合は、このオプションを選択します。 このオプションを選択すると運用モードが有効になり、トレーニング中に確認されたすべての項目からレコメンデーションが作成されます。

  4. 予測の対象となるデータセットを追加し、それを [Dataset to score]\(スコア付けするデータセット\) に接続します。

    • オプション [From All Items]\(すべての項目から\) を選択している場合、入力データセットは、レコメンデーションを行うユーザーの識別子を含んだ、1 つの列のみで構成されている必要があります。

      データセットに複数の列が含まれている場合は、エラーが発生します。 [データセット内 の列の選択] モジュールを 使用して、入力データセットから追加の列を削除します。

    • オプション [From Rated Items (for model evaluation)]\(評価された項目から (モデル評価用)\) を選択する場合、入力データセットがユーザーと項目のペアで構成されている必要があります。 1 列目にはユーザー識別子が含まれている必要があります。 2 列目には、対応する項目識別子が含まれている必要があります。

      データセットの 3 列目にユーザーと項目の評価を含めることもできますが、その列は無視されます。

  5. (省略可能)。 ユーザーの特徴のデータセットを保持している場合は、それを [User features]\(ユーザーの特徴\) に接続します。

    ユーザーの特徴データセットの最初の列には、ユーザー識別子が含まれている必要があります。 その他の列には、性別、基本設定、場所など、ユーザーを特徴付ける値が含まれている必要があります。

    項目を評価したユーザーの機能は、トレーニング中に既に学習済みのため、マッチボックス レコダのスコア付けによって無視されます。 そのため、事前にデータセットをフィルター処理して、コールド スタート ユーザー (どの項目も評価していないユーザー) のみを含めることができます。

    警告

    ユーザーの特徴を使用せずにモデルがトレーニングされた場合は、スコア付けの間に特徴の適用を利用することはできません。

  6. (省略可能) 項目の特徴のデータセットを保持している場合は、それを [Item features]\(項目の特徴\) に接続できます。

    項目の特徴データセットの最初の列には、項目識別子を含める必要があります。 その他の列には、項目を特徴付ける値を含める必要があります。

    評価された項目の特徴は、トレーニング中に既に学習済みなので、スコア マッチボックス レコピダーでは無視されます。 そのため、データセットのスコア付けをコールド スタートの項目(どのユーザーにも評価されていない項目) に限定できます。

    警告

    項目の特徴を使用せずにモデルがトレーニングされた場合は、スコア付けのときに項目の特徴を使用しないでください。

  7. [Maximum number of items to recommend to a user]\(ユーザーに推奨される項目の最大数\) :各ユーザーについて返される項目の数を入力します。 既定では、5 つの項目が推奨されます。

  8. [Minimum size of the recommendation pool per user]\(ユーザーごとのレコメンデーション プールの最小サイズ\):必須の事前レコメンデーション数を示す値を入力します。 既定では、このパラメーターは 2 に設定されています。これは、少なくとも他の 2 人のユーザーによって項目が推奨されている必要があることを意味します。

    このオプションは、評価モードでスコア付けする場合にのみ使用してください。 [すべての項目から] を選択した場合、 このオプションは使用できません

  9. 実験を実行します。

項目のレコメンデーション結果

Score Matchbox Recommender によって返されるスコア付きデータセットには、各ユーザーに推奨される項目の一覧が含まれます。

  • 1 列目には、ユーザーの識別子が含まれます。
  • それ以降の列は、 [Maximum number of items to recommend to a user]\(ユーザーに推奨される項目の最大数\) で設定した値に応じて生成されます。 各列には、推奨される項目が含まれます (識別子順)。 レコメンデーションはユーザーと項目のアフィニティを基準に並べ替えられ、最もアフィニティの高い列が [Item 1]\(項目 1\) の列に配置されます。

警告

このスコア付きデータセットは、Evaluate Recommender モジュールを使用して評価することはできません。

関連ユーザーの検索

関連するユーザーを検索するオプションは、"あなたのようなユーザー" を推奨する場合、または他の種類の予測の基にする類似ユーザーのプールを作成する場合に便利です。

  1. トレーニング済みのレコメンド モデルを実験に追加し、トレーニング済みの マッチボックス レコメンダーに接続します。 Train Matchbox Recommender を使用してモデルを作成する必要があります

  2. [Recommender prediction kind] (推奨ユーザーの予測の種類): [関連 ユーザー] を選択します

  3. 関連するユーザーの選択: スコアリングにモデルを使用する方法を指定し、スコアの基になるユーザーのプールを次のように指定します。

    • [すべてのユーザーから]: Web サービスまたは実稼働環境で使用する実験を設定する場合、または新しいユーザーの予測を行う必要がある場合は、このオプションを選択します。 このオプションを使用 すると、実稼働モードが有効になります。モジュールでは、トレーニング中に表示されたユーザーにのみ推奨設定が設定されます。

    • [評価された項目のユーザー (モデル評価用)]: モデルを開発またはテストする場合は、このオプションを選択します。 このオプションを 使用すると、評価モードが有効になります。モデルでは、一般的な項目を評価したテスト セット内のユーザーに対する推奨事項が基になります。

  4. Connect生成するユーザーを含むデータセットを作成します。 このデータセットの形式は、実稼働モードまたは評価モードでスコアリング モジュールを使用するかどうかによって異なります。

    • [すべての項目から] を使用した実稼働モード

      スコア付けするデータセットは、関連 ユーザーを検索 するユーザーで構成されている必要があります。 最初の列と唯一の列には、ユーザー識別子が含まれている必要があります。 他の列が含まれている場合は、エラーが発生します。 [データセット内 の列の選択] モジュールを使用 して、不要な列を削除します。

    • 評価モード、 評価項目から (モデル評価用) を使用

      スコア付けするデータセットは、ユーザーと項目のペアを含む 2 ~ 3 つの列で構成する必要があります。 最初の列には、ユーザー識別子が含まれている必要があります。 2 番目の列には、項目識別子が含まれている必要があります。 データセットには、評価の 3 番目の列 (列 2 の項目の列 1 のユーザー) を含めできますが、評価列は無視されます。

  5. [ユーザーに対して検索する関連ユーザーの最大数]: 各ユーザーに対して必要な予測の最大数を示す数値を入力します。 既定値は 5 です。つまり、関連するユーザーは 5 人まで返されますが、場合によっては 5 未満になる可能性があります。

  6. 評価モード (項目を評価したユーザーから) で、次の追加パラメーターを構成します。

    • クエリ ユーザーと関連ユーザーが共通して評価する必要がある項目の最小数: この値は、推奨事項のしきい値を設定します。 入力する数値は、ターゲット ユーザーと潜在的な関連ユーザーが評価する必要がある項目の最小数を表します。 既定値は 2 です。つまり、少なくとも 2 つの項目が両方のユーザーによって評価されている必要があります。

    • 1 人のユーザーの関連ユーザー プールの最小サイズ: この値は、推奨事項の作成に必要な類似ユーザーの最小数を制御します。 既定では、この値は 2 です。つまり、同じ項目を評価することで関連するユーザーが 2 人も少ない場合は、それらを関連付けと見なして推奨事項を生成できます。

  7. (省略可能)。 ユーザーの特徴のデータセットを保持している場合は、それを [User features]\(ユーザーの特徴\) に接続します。

    ユーザーの特徴データセットの最初の列には、ユーザー識別子が含まれている必要があります。 残りの列には、性別、基本設定、場所など、ユーザーを特徴付ける値を含む必要があります。

    項目を評価したユーザーの機能は、トレーニング中に既に学習済みであるマッチボックス レコダのスコア付けによって無視されます。 そのため、事前にデータセットをフィルター処理して、コールド スタート ユーザー (どの項目も評価していないユーザー) だけを含めます。

    警告

    モデルがユーザー機能を使用せずにトレーニングされた場合、スコアリング中にユーザー機能を適用することはできません。

  8. (省略可能)項目の特徴のデータセットがある場合は、項目の特徴に 接続します

    項目の特徴データセットの最初の列には、項目識別子を含める必要があります。 その他の列には、項目を特徴付ける値を含める必要があります。

    評価された項目の特徴は、トレーニング中に既に学習済みであるマッチボックス レコダのスコア付けによって無視されます。 そのため、スコアリング データセットをコールド スタート項目、またはユーザーによって評価されていない項目に制限できます。

    警告

    項目の特徴を使用せずにモデルがトレーニングされた場合は、スコア付けのときに項目の特徴を使用しないでください。

  9. 実験を実行します。

Score Matchbox Recommender によって返されるスコア付けされたデータセットには、入力データセット内の各ユーザーに関連するユーザーが一覧表示されます。

入力データセットで指定されたユーザーごとに、結果データセットには一連の関連ユーザーが含まれます。

  • 最初の列には、ターゲット ユーザー (入力として指定されたユーザー) の識別子が含まれている。

  • 関連ユーザーの識別子を含む追加の列が生成されます。 追加の列の数は、オプションで設定した値 [ユーザーに対して検索する関連ユーザーの最大数 ] によって異なります

    関連ユーザーは、ターゲット ユーザーとの関係の強さによって並べ替え、最も強く関連するユーザーである [関連ユーザー 1] 列 に表示されます

関連項目の検索

関連項目を予測することで、既に評価済みの項目に基づいてユーザーの推奨設定を生成できます。

  1. トレーニング済みの推奨モデルを実験に追加し、トレーニング済みの マッチボックスレコメンダーに接続します。 トレーニング Matchbox レコメンダーを使用してモデルを作成する必要があります。

  2. レコメンダー予測の種類: 関連項目を選択します。

  3. 予測を生成するユーザーを含むデータセットを Connect します。 このデータセットの形式は、運用モードまたは評価モードでスコアリングモジュールを使用しているかどうかによって異なります。

    • 実稼働モード、すべての項目からの使用

      スコア付けするデータセットは、関連するユーザーを検索する項目で構成されている必要があります。

      1番目の列には、項目の識別子を含める必要があります。 他の列が含まれている場合は、エラーが発生します。 不要な列を削除するには、 データセット内の列の選択 モジュールを使用します。

    • 評価モード、評価済み 項目からの使用 (モデル評価用)

      スコア付けするデータセットは、ユーザーと項目のペアを含む2-3 列で構成されている必要があります。 最初の列にはユーザー識別子が含まれている必要があります。 2番目の列には、項目の識別子を含める必要があります。

      データセットには、評価の第3列 (列2の項目の列1のユーザーによる) を含めることができますが、[評価] 列は無視されます。

  4. 項目に対して検索する関連項目の最大数: 各項目に必要な予測の最大数を示す数値を入力します。 >

    既定値は5です。これは、最大5個の関連項目を返すことができることを意味しますが、5未満の場合もあります。

  5. 評価モード (項目を評価したユーザーから) を使用している場合は、次の追加のパラメーターを構成します。

    • クエリ項目と関連項目が共通で評価されている必要がある項目の最小数: この値は、推奨設定のしきい値を設定します。 入力する数値は、対象ユーザーと関連するユーザーによって評価された項目の最小数を表します。 既定値は2です。つまり、少なくとも2つの項目が対象ユーザーと関連ユーザーによって評価されている必要があります。

    • 1 つの項目の関連項目プールの最小サイズ: この値は、推奨事項を作成するために必要な類似項目の最小数を制御します。 既定では、値は2です。つまり、同じユーザーによって評価されている2つの項目がある場合、それに関連していると考え、推奨事項を生成することができます。

  6. (省略可能)。 ユーザーの特徴のデータセットを保持している場合は、それを [User features]\(ユーザーの特徴\) に接続します。

    ユーザーの特徴データセットの最初の列には、ユーザー識別子が含まれている必要があります。 その他の列には、性別、基本設定、場所など、ユーザーを特徴付ける値が含まれている必要があります。

    評価された項目を持つユーザーの特徴は、トレーニング中に既に学習されているため、 スコアマッチボックスレコメンダーによって無視されます。 そのため、事前にデータセットをフィルター処理して、コールド スタート ユーザー (どの項目も評価していないユーザー) のみを含めることができます。

    警告

    ユーザー機能を使用せずにモデルをトレーニングした場合、スコアリング中にユーザー機能を適用することはできません。

  7. Optionalアイテムの特徴のデータセットがある場合は、 アイテムの特徴に接続できます。

    項目の特徴データセットの最初の列には、項目識別子を含める必要があります。 残りの列には、アイテムを特徴付ける値を含める必要があります。

    評価された項目の特徴は、トレーニング中に既に学習されているため、 スコアマッチボックスレコメンダーによって無視されます。 そのため、スコアリングデータセットを、ユーザーによって評価されていない コールドスタート項目または項目に制限することができます。

    警告

    項目の特徴を使用せずにモデルがトレーニングされた場合は、スコア付けのときに項目の特徴を使用しないでください。

  8. Optional予測実験では、 トレーニングデータセットという名前の5番目の入力ポートを使用して、予測結果からモデルトレーニングデータに含まれていた既存のユーザーを削除できます。

    このフィルターを適用するには、元のトレーニング データセットを入力ポートに接続します。

  9. 実験を実行します。

スコアマッチボックスレコメンダーから返されるスコア付けされたデータセットには、入力データセット内の各項目の関連項目が一覧表示されます。

  • 最初の列には、ターゲット項目 (入力として指定された項目) の識別子が格納されます。

  • 関連する項目の識別子を含む追加の列が生成されます。 追加する列の数は、オプションで設定した値によって異なります。 項目に対して検索する関連項目の最大数です。

    関連項目は、ターゲット項目に対するリレーションシップの強さに基づいて並べ替えられ、関連項目 1の列に最も強い関連項目があります。

テクニカル ノート

このセクションでは、レコメンダーを使用した予測の作成に関してよく寄せられる質問への回答を示します。

コールドスタート ユーザーとレコメンデーション

通常、推奨を作成するため、スコア マッチボックス レコメンダー モジュールは、ユーザー ID を含むモデルをトレーニングするときに使用するものと同じ入力を必要とします。 これは、トレーニング中にこのユーザーに関して学習されたかどうかが、アルゴリズムによって認識されている必要があるためです。

ただし、新しいユーザーの場合、ユーザー ID がわからず、年齢、性別など、一部のユーザーの特徴のみがわかっていることがあります。

システムを初めて使用するユーザーの場合でも、"コールドスタート ユーザー" として処理することで、そのユーザーに対するレコメンデーションを作成できます。 そのようなユーザーの場合、レコメンデーション アルゴリズムでは、過去の履歴や以前の評価は使用されず、ユーザーの特徴のみが使用されます。

予測の目的のために、コールドスタート ユーザーは、トレーニングには使用されていない ID を持つユーザーとして定義されます。 ID がトレーニングに使用される ID と一致しないことを保証するために、新しい識別子を作成できます。 たとえば、指定した範囲内でランダムな ID を生成したり、コールド スタート ユーザー用に前もって一連の ID を割り当てたりすることができます。

ただし、ユーザーの特徴のベクトルなどの協調フィルタリング データがない場合は、分類または回帰学習器を使用することをお勧めします。

マッチボックスレコメンダーの実稼働環境での使用

Matchbox レコメンダーで実験を使用していて、モデルを運用環境に移行する場合は、レコメンダーを評価モードで使用する場合と実稼働モードで使用する場合の主な相違点に注意してください。

  • 評価を行うには、本来、テスト セット内のグラウンド トゥルースに照らして検証できる予測が必要になります。 そのため、レコメンダーを評価する際には、テスト セットで評価された項目のみを予測する必要があります。 これにより、予測される値が制限されることになります。

    ただし、モデルを運用化する場合は通常、最適な予測結果を得るために、予測モードを変更し、考えられるすべての項目に基づいてレコメンデーションを実行します。 これらの予測では多くの場合、対応するグラウンド トゥルースがないため、レコメンデーションの精度を実験中と同じように検証することはできません。

  • 実稼働環境でユーザー ID を指定せず、特徴ベクトルのみを指定する場合は、応答として、候補となる全ユーザーに関するすべてのレコメンデーションの一覧が取得される可能性があります。 ユーザー ID は必ず指定してください。

    返されるレコメンデーションの数を制限するために、返される最大項目数をユーザーごとに指定することもできます。

  • 以前に評価されたことがない項目のみについて予測を生成することはできません。 これは仕様です。

    その理由は、評価されていない項目のみを推奨するために、レコメンダーはトレーニングデータセット全体をモデルに格納する必要があるためです。これにより、ストレージの使用が増加します。

    ユーザーがまだ表示していない項目のみを推奨するには、推奨する項目数を増やしてから、評価済みの項目を手動でフッターする方法があります。

レコメンダーの継続的な更新

推奨モデルのオンライン更新 (または継続的トレーニング) は、現時点では Machine Learning ではサポートされていません。 推奨事項に対するユーザーの応答をキャプチャし、それらを使用してモデルを改善する場合は、完全なモデルを定期的に再トレーニングすることをお勧めします。 段階的トレーニングは使用できませんが、最新のデータを使用しているときにデータ量を最小限に抑えることができるように、トレーニングデータにスライディングウィンドウを適用できます。

想定される入力

名前 説明
トレーニング済みのマッチボックス レコメンダー ILearner トレーニング済みのマッチボックス レコメンダー
スコアを付けるデータセット データ テーブル スコアを付けるデータセット
ユーザーの特徴 データ テーブル ユーザーを説明する特徴を含むデータセット

このデータは省略可能
項目の特徴 データ テーブル 項目を説明する特徴を含むデータセット

このデータは省略可能

モジュールのパラメーター

名前 Range Type Default 説明
レコメンダーの予測の種類 一覧 予測の種類 項目の推奨 レコメンダーが出力する予測の種類を指定します。
推奨項目の選択 一覧 項目の選択 評価済み項目から (モデル評価の場合) 推奨を作成する項目のセットを選択します。
関連ユーザーの選択 一覧 ユーザー選択 項目を評価したユーザーから (モデル評価の場合) 関連項目を検索するユーザー セットを選択します。
関連項目の選択 一覧 [項目の選択 評価済み項目から (モデル評価の場合) 関連項目を検索する項目セットを選択します。

出力

名前 説明
スコア付けされたデータセット データ テーブル スコア付けされたデータセット

例外

例外 説明
エラー 0022 入力データセットで選択された列の数が、予想される数と等しくない場合、例外が発生します。
エラー 0036 特定のユーザーまたは項目に対して複数の特徴ベクターが提供された場合、例外が発生します。
エラー 0013 渡されたモジュール学習器の型が無効の場合に、例外が発生します。
エラー 0035 特定のユーザーまたは項目に対して特徴が提供されなかった場合、例外が発生します。
エラー 0053 マッチボックス レコメンデーションにユーザーの特徴や項目がない場合に、例外が発生します。
エラー 0003 1 つまたは複数の入力が null または空の場合、例外が発生します。

Studio (クラシック) モジュール固有のエラーの一覧については、「 Machine Learning エラーコード」を参照してください。

API 例外の一覧については、「 Machine Learning REST API のエラーコード」を参照してください。

こちらもご覧ください

マッチボックス レコメンダーのトレーニング
レコメンダーの評価
スコア