Share via


MatrixFactorizationTrainer.Options.Alpha フィールド

定義

1 クラス行列分解における未観察エントリの損失の重要性。 に設定されている場合 LossFunction に適用されます SquareLossOneClass

public double Alpha;
val mutable Alpha : double
Public Alpha As Double 

フィールド値

注釈

1 クラスの行列分解における、観察されていない (つまり負の) エントリの損失の重要性。 一般に、トレーニングでは少数の行列エントリ (たとえば、1% 未満) のみが観察されます (つまり、正)。 損失関数全体で観測されたコントリビューションからコントリビューションのバランスを取るために、通常、このパラメーターは小さな値であるため、ソルバーは、観察されていないエントリと同様に良好な階乗を見つけることができます。 200000-by-300000 トレーニング マトリックスに 10000 個の観測エントリしか存在しない場合は、Alpha = 10000 / (200000*300000 - 10000) を試すことができます。 トレーニング 行列のほとんどのエントリが観察されると、アルファ >> 1 を使用できます。たとえば、前の行列の 10000 のみが観測されない場合は、Alpha = (200000 * 300000 - 10000) / 10000 を試すことができます。 その結果、Alpha = (観察されたエントリの数) / (監視されていないエントリの数) は、最小化された損失関数で観察されたエントリと監視されていないエントリを同様に重要にすることができます。 ただし、機械学習の最適な設定は常にデータに依存するため、ユーザーは引き続き複数の値を試す必要があります。

適用対象