問題タブ [gbm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - GBM の Null 重みの意味
の weights パラメータについて質問がありますgbm
。重みを NULL に設定し、それを省略したままにすると、異なる結果が生じるようです。ドキュメントの最初の例を考えるとgbm
:
これら 2 つのモデルの結果は異なりますが、その理由は明らかではありません。の NULL と欠落した重みの意味の違いは何gbm
ですか?
敬具
machine-learning - 予測子として時間 (年) と緯度と経度を含むデータに勾配ブースティング アルゴリズムを使用できますか?
2005 年から 2014 年までの週ごとの気象情報、利回り、緯度と経度を含むデータがあります。このデータに基づいて、2015 年の収量を予測したいと思います。勾配ブースティング アルゴリズムを使用する予定ですが、場所 (lat-lon) と年も予測因子として考慮しているため、それが正しいアプローチであるかどうかはわかりません。さまざまな年の気象変動を把握できるように、さまざまな年のデータを保持したい
machine-learning - xgboost (または他のアルゴリズム) は、いくつかの悪い機能で悪い結果をもたらす可能性がありますか?
今まで、機械学習アルゴリズム (gbm、ランダム フォレスト、xgboost など) がデータに存在する悪い機能 (変数) を処理できるという印象を受けていました。
私の問題の 1 つでは、約 150 の機能があり、xgboost を使用すると、すべての機能を使用すると約 1 の対数損失が発生します。しかし、約 10 個の悪い機能 (何らかの手法を使用して見つかったもの) を削除すると、対数損失が 0.45 になります。それは大きな改善です。
私の質問は、悪い機能が本当にそんなに大きな違いを生むのでしょうか?
r - R、Caret、train()、predict()、GBM、エラー: model.frame.default(..) のエラー: 因子に新しいレベルがあります
だから私は何が起こっているのかについてかなり良い考えを持っていますが、エラーをどのように処理するのか疑問に思っています. それらはすべてGLMに関連しているようで、エラーは私が考えていない同じことが原因ではありません。
これが私のコードです:
これが私のエラーです:
model.frame.default(Terms, newdata, na.action = na.action, xlev = object$xlevels) のエラー: 因子 47V には新しいレベル E、H、J があります
したがって、因子変数にはトレーニング セットに多数のレベルがありますが、エラーから、すべてのレベルがトレーニング セットに含まれているとは限りません。テスト セットに移動すると、トレーニング セットにない新しいレベルがあるため、このエラーが発生しますか?
これは教師あり学習の問題です。テスト セットを変更してデータをトレーニング セットに移動することはできません。したがって、サンプリングの問題ではありません。
とにかく、これが私のプログラムをクラッシュさせないように、誰かが設定や簡単な修正を知っていますか?
machine-learning - スパースバイナリ行列によるバイナリ分類
私の犯罪分類データセットには、 などの指標機能がありますhas_rifle
。
仕事は、データポイントが犯罪者かどうかを訓練して予測することです。メトリックは加重平均絶対誤差であり、その人物が犯罪者であり、モデルが犯罪者ではないと予測した場合、重みは のように大きくなり5
ます。人が犯罪者ではなく、モデルが犯罪者であると予測した場合、体重は1
です。それ以外の場合、モデルは weight で正しく予測し0
ます。
classif:multinom
でメソッドを使用mlr
しR
、しきい値を に調整しました1/6
。結果はそれほど良くありません。Adaboost
少し良いです。どちらも完璧ではありませんが。
スパース{0,1}
行列を使用したこの種のバイナリ分類問題で通常使用される方法はどれですか? また、加重平均絶対誤差メトリックによって測定されたパフォーマンスを改善するにはどうすればよいでしょうか?
r - R で GBM からモデルを抽出する
gbm
R のモデル内で何が起こっているかを理解する方法に精通している人はいますか?
Petal.Length
虹彩を予測する方法を見たいとしましょう。簡単にするために、次のように実行しました。
これは機能し、実行すると:
次に、次のようになります。
これは直感的に理解できます。実行すると、次のpretty.gbm.tree(tg)
ようになります。
したがって、明らかに gbm は、変数 #2 で分割すると 3 つの個別の回帰が返されると考えています。表示される順序が理にかなっ てSplitVar==2
いるからだと思います。Petal.Width
str(iris)
しかし、どのデータが欠落していますか? iris
欠損データはありません。それでは、作成された 3 つのノードのそれぞれで何が起こっているのかを確認するにはどうすればよいでしょうか。
プロダクション用にこれを C++ でコーディングしたいとしましょうPetal.Width >.8
。
ありがとう、
ジョシュ
r - R 上の GBM オブジェクトで使用されるデータの取得と順序付け
R に GBM オブジェクトがあり、基になるデータが保存されていますが、そのデータの使用に問題があります。問題は、実行したときにx<-gbmobject$data$x.order
と同じように順序付けされた値がy<-gbmobject$data$y
得られないことです。つまり、 の最初の観察の応答が の最初の観察ではありません。そのうちの1つがシャッフルされているようです。の応答を の正しい観測値と一致させる方法を知っている人はいますか? ありがとう!y
x
x
y
y
x