xgboost では、 のパラメーターを設定することができweight
ますDMatrix
。これは明らかに、各値が対応するサンプルの重みである重みのリストです。これらの重みが勾配ブースティング手順で実際にどのように使用されているかについての情報は見つかりません。それらは関連していeta
ますか?
たとえば、weight
すべてのサンプルを 0.3 に設定して 1 に設定すると、0.3に 1eta
に設定するのと同じことになりますか?eta
weight
xgboost では、 のパラメーターを設定することができweight
ますDMatrix
。これは明らかに、各値が対応するサンプルの重みである重みのリストです。これらの重みが勾配ブースティング手順で実際にどのように使用されているかについての情報は見つかりません。それらは関連していeta
ますか?
たとえば、weight
すべてのサンプルを 0.3 に設定して 1 に設定すると、0.3に 1eta
に設定するのと同じことになりますか?eta
weight
xgboost
あなたが指摘したように、の構築中にインスタンスの重み付けを可能にしますDMatrix
。この重みはインスタンスに直接結び付けられており、トレーニング全体を通じて一緒に移動します。したがって、勾配とヘシアンの計算に含まれ、モデルの分割ポイントとトレーニングに直接影響しxgboost
ます。
インスタンスウェイトファイル
XGBoost は、インスタンスの重要性を区別するために各インスタンスに重みを提供することをサポートしています。たとえば、以下の例の「train.txt」ファイルにインスタンス ウェイト ファイルを提供するとします。
train.txt.weight
1
0.5
0.5
1
0.5
これは、XGBoost が 1 番目と 4 番目のインスタンス、つまりトレーニング中にポジティブなインスタンスをより強調することを意味します。構成は、グループ情報の構成に似ています。インスタンス ファイル名が「xxx」の場合、XGBoost は同じディレクトリに「xxx.weight」という名前のファイルがあるかどうかを確認し、存在する場合は、モデルのトレーニング中にその重みを使用します。
とは大きく異なります。 eta
eta
単純xgboost
に、最後のツリーがアンサンブルにどれだけブレンドされたかを示します。各反復でアンサンブルがどれだけ貪欲であるべきかの尺度。
たとえば、
weight
すべてのサンプルを 0.3 に設定して 1 に設定すると、0.3に 1eta
に設定するのと同じことになりますか?eta
weight
すべてのインスタンスの定数weight
1 がデフォルトであるため、これをすべてのインスタンスの定数 .3 に変更しても、重み付けは同じであるため、あまり影響を受けません。ただし、eta
0.3 から 1 に設定すると、トレーニングがより積極的になります。