翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
因数分解機アルゴリズム
因数分解機アルゴリズムは、分類タスクと回帰タスクの両方に使用できる汎用的な教師あり学習アルゴリズムです。これは、高次元スパースデータセット内の特徴間の相互作用を経済的にキャプチャするように設計された線形モデルの拡張です。例えばクリック予測システムでは、因数分解機モデルは、特定の広告カテゴリの広告が特定のページカテゴリのページに配置されたときに確認されたクリック率パターンをキャプチャできます。因数分解機は、クリック予測や項目推奨など、高次元スパースデータセットを処理するタスクに適した選択肢です。
注記
Factorization Machines アルゴリズムの Amazon SageMaker 実装では、機能間のペアワイズ (2 次) インタラクションのみを考慮します。
トピック
因数分解機アルゴリズムの入出力インターフェイス
因数分解機アルゴリズムは、二項分類モードまたは回帰モードで実行できます。各モードで、データセットをトレーニングチャネルデータセットと共にテストチャネルに提供できます。スコアリングは、使用するモードによって異なります。回帰モードでは、テストデータセットは、二乗平均平方根誤差 () を使用してスコアリングされますRMSE。二項分類モードでは、テストデータセットは二項交差エントロピー (対数損失)、精度 (しきい値 = 0.5) および F1 スコア (しきい値 = 0.5) を使用してスコアリングされます。
トレーニングについては、因数分解機アルゴリズムは、現在 Float32
テンソルの recordIO-protobuf
形式でのみサポートしています。ユースケースは主にスパースデータに対するものであるため、CSV
は適切な候補ではありません。recordIO でラップされた protobuf では、ファイルモードとパイプモードの両方のトレーニングがサポートされます。
推論については、因数分解機アルゴリズムは application/json
形式と x-recordio-protobuf
形式をサポートします。
-
バイナリ分類の問題については、アルゴリズムは、スコアとラベルを予測します。ラベルは、数値で、
0
または1
になります。スコアは、ラベルが1
があるべきであるとアルゴリズムがみなす度合いを示す数値です。アルゴリズムは最初にスコアを計算し、次にスコア値からラベルを導出します。スコアが 0.5 以上である場合、ラベルは1
です。 -
回帰の問題については、スコアのみが返り、それが予測値になります。たとえば、因数分解器が映画の評価の予測に使用されている場合、スコアは予測された評価値を示します。
トレーニングファイルと推論ファイルの形式の詳細については、因数分解機サンプルノートブックを参照してください。
EC2 Factorization Machines アルゴリズムのインスタンスレコメンデーション
Amazon SageMaker Factorization Machines アルゴリズムはスケーラビリティが高く、分散インスタンス間でトレーニングできます。スパースデータセットと高密度データセットの両方について、CPUインスタンスを使用してトレーニングと推論を行うことをお勧めします。状況によっては、高密度データGPUsに関する 1 つ以上のトレーニングが何らかの利点をもたらす場合があります。を使用したトレーニングGPUsは、密集したデータでのみ利用できます。スパースデータにはCPUインスタンスを使用します。因数分解機アルゴリズムは、トレーニングと推論用に P2、P3、G4dn、G5 インスタンスをサポートします。
因数分解機サンプルノートブック
SageMaker Factorization Machines アルゴリズムを使用してMNISTデータセット内のゼロから 9 までの手書きの数字のイメージを分析するサンプルノートブックについては、「 を使用した Factorization Machines 入門MNIST