-1

SageMaker の組み込み XGBoost アルゴリズムを、次のトレーニング セットと検証セットで使用しています。

https://files.fm/u/pm7n8zcm

上記のデータセットを使用してトレーニングから得られる予測モデルを実行すると、常にまったく同じ結果が得られます。

トレーニングまたは検証データセットに、この動作を説明できる明らかな何かがありますか?

ハイパーパラメータを設定しているコード スニペットの例を次に示します。

{
                    {"max_depth", "1000"},
                    {"eta", "0.001"},
                    {"min_child_weight", "10"},
                    {"subsample", "0.7"},
                    {"silent", "0"},
                    {"objective", "reg:linear"},
                    {"num_round", "50"}
                }

ソースコードは次のとおりです: https://github.com/paulfryer/continuous-training/blob/master/ContinuousTraining/StateMachine/Retrain.cs#L326

どのハイパー パラメーターを調整する必要があるかはわかりません。

このスクリーンショットは、8 つのインデックスで結果を取得していることを示しています。 ここに画像の説明を入力

しかし、11番目のものを追加すると失敗します。これにより、インデックスを削除するのではなく、インデックスをゼロにしてモデルをトレーニングする必要があると考えるようになりました。それでは次にやってみます。 ここに画像の説明を入力 更新:ゼロ値を含めた再トレーニングは役に立たないようです。私はまだ毎回同じ値を取得しています。10 個を超える値を予測エンドポイントに送信できないことに気付きました。そうしないと、「提供されたペイロードを評価できません」というエラーが返されます。そのため、この時点で libsvm 形式を使用すると、問題が増えるだけです。

4

2 に答える 2

0

いくつか間違っていることがあります。

  1. このような小さな ETA {"eta", "0.001"} で {"num_round", "50"} を使用しても、何も得られません。
  2. {"max_depth", "1000"} 1000 は非常識です! (デフォルト値は 6)

提案:

    {"max_depth", "6"},
    {"eta", "0.05"},
    {"min_child_weight", "3"},
    {"subsample", "0.8"},
    {"silent", "0"},
    {"objective", "reg:linear"},
    {"num_round", "200"}

これを試して、出力を報告してください

于 2018-04-17T13:26:25.390 に答える
-1

時系列をグループ化していたときに、特定の頻度によってデータにギャップが生じました。すべての NaN を埋めることで、この問題を解決しました。

于 2020-07-28T14:13:17.087 に答える