Pythonには分位点回帰のパッケージがあまりないようです...
pythonには分位数のパッケージはあまりないようです
回帰..。
なぜscikit-learnに入れる必要があるのですか?
可能であれば、なぜですか?
すでに維持するコードがたくさんあり、一般的なMLアルゴリズムのみが含まれているためです。 これは人気がありますか? 他のアプローチよりも機械学習タスクに明確なメリットがありますか?
(ところで、 VWには分位点回帰があり、損失ℓ(p、y)=τ(p--y)[[y≤p]] +(1-τ)(y--p)[[y≥p]]ここで[ [⋅]]はアイバーソンの記法です。)
GradientBoostingRegressor
は、分位点回帰をサポートします( loss=quantile
とalpha
パラメーターを使用)。 例については、 http: //scikit-learn.org/dev/auto_examples/ensemble/plot_gradient_boosting_quantile.html#example-ensemble-plot-gradient-boosting-quantile-pyを参照してください。
私はそれをチェックすべきだった。 この問題を閉じます。
PythonでのQuantileRegressionのパッケージがそれほど多くないことに同意しませんが、sci-kitで純粋なQuantile Regression(Ensembleメソッド内ではない)を学習させることが重要だと思います。
分位点回帰には、yの特定の分位数をターゲットにするという利点があります。 これにより、y_predとyの中央値の差を減らすことができます。 これは、この場合の絶対誤差を最小化することに似ていますが、はるかに一般的であり、他の分位数で機能します。
銀行は、クレジットスコアリングやその他のモデルを扱うときにこれを頻繁に使用するため、実際のアプリケーションでの戦闘テスト済みモデルです。 RとSASにはこのモデルが実装されています。
@prcastroは線形モデルのことですか?
その通り。 現在、sklearnはアンサンブルメソッドに分位点回帰を実装しています。 ただし、通常は通常の線形モデルとして使用されます。
私はそれを追加することを歓迎します。 @jnothman @GaelVaroquaux?
それは確かにかなり確立されているようです
私はそれを追加することを歓迎します。 @jnothman @GaelVaroquaux?
反対はありません。 良いPRとそれをレビューする時間が必要です。
より一般的な分位数とは対照的に、中央値(絶対損失)の分位点回帰の特定のケースに関しては、 http: //scikit-learn.org/stable/modules/generated/sklearn.linear_model.HuberRegressor.htmlで許可されるようです。 epsilon = 0.0を渡すことができればそれです。 HuberRegressorがepsilon : float, greater than 1.0
を必要とするのはなぜですか? ( The Huber Regressor optimizes the squared loss for the samples where |(y - X'w) / sigma| < epsilon and the absolute loss for the samples where |(y - X'w) / sigma| > epsilon.
)
イプシロン= 0でのHuber損失は、スムーズではない最適化問題です。
同じクラスのソルバーを使用することはできません。
上記のプルリクエストに古典的な分位線形回帰を追加しました。 確認してください!
こんにちは、みんな! 時間があるときに私のPRを確認してください。
ping
Pythonには分位点回帰のパッケージがあまりないようです...
彼らは2020年を聞くつもりはありませんが、それでも適切な定量的回帰パッケージがありません
最も参考になるコメント
こんにちは、みんな! 時間があるときに私のPRを確認してください。