MatrixFactorizationTrainer.Options.Alpha フィールド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
1 クラス行列分解における観察されないエントリの損失の重要性。 LossFunctionに設定されている場合に適用されますSquareLossOneClass
public double Alpha;
val mutable Alpha : double
Public Alpha As Double
フィールド値
注釈
1 クラス行列分解における観察されない (つまり負の) エントリの損失の重要性。 一般に、トレーニングでは少数の行列エントリ (例: 1%未満) のみが観察されます (つまり、正)。 損失関数全体で観察され、観察されないコントリビューションのバランスを取るために、このパラメータは通常、小さな値であるため、ソルバーは、観測されていないエントリと同等に良好な因子分解を見つけることができます。 200000-by-300000 トレーニング マトリックスに 1,0000 個の観測エントリしか存在しない場合は、Alpha = 10000 / (200000*300000 - 10000) を試すことができます。 トレーニング 行列のほとんどのエントリが観察されると、アルファ >> 1 を使用できます。たとえば、前の行列で 10000 のみが観察されない場合は、Alpha = (200000 * 300000 - 10000) / 10000 を試すことができます。 したがって、アルファ = (観察されたエントリの数) / (監視されていないエントリの数) は、最小損失関数で観察されたエントリと予約されていないエントリを同様に重要にすることができます。 ただし、機械学習で最適な設定は常にデータに依存するため、ユーザーは複数の値を試す必要があります。