5

この質問で推奨されているように、scikit-learnを使用して機械学習を行っています。驚いたことに、トレーニングする実際のモデルへのアクセスを提供していないようです。たとえば、SVM、線形分類器、または決定木を作成した場合、実際のトレーニング済みモデル用に選択されたパラメーターを確認する方法が提供されないようです。

実際のモデルを確認することは、モデルが部分的に作成されている場合に、モデルが使用している機能(たとえば、決定木)をより明確に把握するのに役立ちます。Pythonを使用してモデルをトレーニングし、他のコードを使用して実際にモデルを実装する場合も、モデルを確認することは重要な問題です。

scikit-learnで何かが足りないのですか、それともscikit-learnでこれを実現する方法はありますか?そうでない場合、モデルが透過的に利用できる、必ずしもPythonである必要はない、優れた無料の機械学習ワークベンチは何ですか?

4

1 に答える 1

7

フィットされたモデルパラメータは、モデルインスタンスの属性として直接保存されます。これらの適合パラメーターには特定の命名規則があります。ユーザー提供のコンストラクターパラメーター(別名ハイパーパラメーター)とは対照的に、それらはすべて末尾の下線で終わります。

適合属性のタイプはアルゴリズムに依存します。たとえば、カーネルサポートベクターマシンの場合は、配列サポートベクター、デュアル係数、インターセプトがあり、ランダムフォレストと極端にランダム化されたツリーの場合は、バイナリツリーのコレクションがあります(パフォーマンスの問題のために、メモリ内で連続したnumpy配列として内部的に表されます:構造配列表現の)。

SVCなどの詳細については、各モデルのdocstringの「属性」セクションを参照してください。

http://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html#sklearn.svm.SVC

ツリーベースのモデルの場合、学習したツリーのgraphivz_exportを生成するヘルパー関数もあります。

http://scikit-learn.org/stable/modules/tree.html#classification

フォレストモデルの機能の重要性を見つけるには、compute_importancesパラメータも確認する必要があります。たとえば、次の例を参照してください。

http://scikit-learn.org/stable/auto_examples/ensemble/plot_forest_importances.html#example-ensemble-plot-forest-importances-py

http://scikit-learn.org/stable/auto_examples/ensemble/plot_forest_importances_faces.html#example-ensemble-plot-forest-importances-faces-py

于 2012-06-08T09:15:44.513 に答える