エラー分布のファミリとしてポアソン、ガンマ、またはトゥイーディー分布を使用して、Python / scikit-learnでGLMを評価することは可能ですか?


12

いくつかのPythonとSklearnを学習しようとしていますが、私の仕事では、ポアソン、ガンマ、特にTweedieファミリの誤差分布を使用する回帰を実行する必要があります。

それらについてのドキュメントには何も見当たらないが、それらはRディストリビューションのいくつかの部分にあるので、誰かがPythonのどこかで実装を見たのではないかと思っていた。あなたがTweedieディストリビューションのSGD実装に向けて私を向けることができれば、それはさらに格好良いでしょう!


Pythonで最も堅牢なGLM実装は[statsmodels] statsmodels.sourceforge.netにありますが、SGD実装があるかどうかはわかりません。
Trey

Treyに感謝します。Tweedieはサポートされていないようですが、ポアソン分布とガンマ分布についての議論があります。
ジョー

回答:


12

scikit-learnでポアソン、ガンマ、およびトゥイーディーの誤差分布を使用して一般化線形モデルを実装する動きがあります。

Statsmodelsには、ポアソン、トゥイーディー、およびガンマ誤差分布を使用した一般化線形モデルの実装があります。

この回答を更新している間、Spark MLは(実験的に)ポアソン、トゥイーディー、およびガンマ分布もサポートします。


5
私はそれに取り組んでいます:github.com/madrury/py-glm
マシュードゥルーリー

@MatthewDruryすごい!
ニール

@MatthewDruryいいね!GLMを使い始めたばかりで、statsmodelsにはいくつかの制限があります。数学を完全に理解しているのかわかりませんが、あなたの内側のソルブを任意の最小二乗型ソルバーで置き換えることはできますか?これにより柔軟性が追加されると考えていました(たとえば、sklearn.ElasticNetを渡して、スケーラビリティ/正規化などを「無料」で取得しますか?)。
GeoMatt22、18年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.