DecisionTreeClassifierとRandomForestClassifierのmin_weight_fraction_leaf
パラメーターを誤って使用してきましたが、他の人が私と同じことをしている可能性が高いと思います。
たとえば、 DecisionTreeClassifierのmin_weight_fraction_leaf
のドキュメントには
入力サンプルの最小加重部分は、リーフノードにある必要があります。
ドキュメントが「入力サンプルの加重分数」の意味するところは、私には本当にわかりませんでした。 最初は、クラスのサイズまたはclass_weight
指定された値に基づく重み付けだと思いました。 パラメータの説明を少し変更するだけで、この混乱を解消できると思います。 おそらく次のようなもの
入力サンプルの最小の重み付き部分は、重みがfit()メソッドのsample_weightによって決定されるリーフノードにある必要があります。
さらに、 min_weight_fraction_leaf
は、 fit()
呼び出しでsample_weight
が提供された場合にのみ適用されるようです。 fit()
の呼び出しでsample_weight
が提供されていない場合、 min_weight_fraction_leaf
は黙って無視されます。 ここでは、すべてのサンプルが均等に重み付けされているという前提でmin_weight_fraction_leaf
を適用するか、 sample_weight
が提供されていないためmin_weight_fraction_leaf
が使用されないという警告を表示する必要があると思います。
ダーウィン-15.5.0-x86_64-i386-64ビット
Python 3.5.1 | Continuum Analytics、Inc。| (デフォルト、2015年12月7日、11:24:55)
[GCC 4.2.1(Apple Inc.ビルド5577)]
NumPy 1.11.0
SciPy 0.17.1
Scikit-Learn 0.17.1
また、私が提案した変更を加えたいと思いますが(価値があると思われる場合)、オープンソースライブラリに貢献した経験はほとんどありません。 誰かが私を助けてくれるなら、少し手を握る必要があるかもしれません。
PRを提出してください
午前6時09時2016年6月29日、ベン[email protected]は書きました:
説明
私はのmin_weight_fraction_leafパラメータを使用しています
DecisionTreeClassifierとRandomForestClassifierが正しくないので、
他の人が私と同じことをしている可能性があります。たとえば、min_weight_fraction_leafのドキュメントは
DecisionTreeClassifier
http://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html
言う入力サンプルの最小加重分数は、
リーフノード。ドキュメントが「の加重分数」が何を意味するのか、私には本当にわかりませんでした
入力サンプル」。当初は、
クラスのサイズまたはclass_weightで指定された値。 ちょっと思う
パラメータの説明を変更すると、この混乱が解消される可能性があります。 おそらく
何かのようなもの入力サンプルの最小加重分数は、
重みがfit()メソッドのsample_weightによって決定されるリーフノード。さらに、min_weight_fraction_leafは次の場合にのみ適用されるようです
sample_weightは、fit()の呼び出しで提供されます。 sample_weightがそうでない場合
fit()の呼び出しで提供される、min_weight_fraction_leafはサイレントです
無視されます。 ここで、min_weight_fraction_leafはまだ下に適用されるべきだと思います
すべてのサンプルが均等に重み付けされている、または警告が必要であるという仮定
sample_weight以降、min_weight_fraction_leafは使用されないことを前提としています
提供されませんでした。
バージョンダーウィン-15.5.0-x86_64-i386-64ビット
Python 3.5.1 | Continuum Analytics、Inc。| (デフォルト、2015年12月7日、11:24:55)
[GCC 4.2.1(Apple Inc.ビルド5577)]
NumPy 1.11.0
SciPy 0.17.1
Scikit-Learn 0.17.1—
このスレッドにサブスクライブしているため、これを受け取っています。
このメールに直接返信し、GitHubで表示してください
https://github.com/scikit-learn/scikit-learn/issues/6945 、またはミュート
糸
https://github.com/notifications/unsubscribe/AAEz6xE2BmEJHo6hGgTWoigsPutoD4_nks5qQX9zgaJpZM4JAe96
。
min_weight_fraction_leaf
が設定されていて、 sample_weights
提供されていない場合は、エラーが発生するか、重みが均一であると想定する必要があると思います。 この場合、 min_samples_leaf
とは少し冗長ですが、重みが均一であると仮定した方がよいと思います。
これはmin_samples_leaf
似ていると思います。 min_weight_fraction_leaf
は、各リーフノードに絶対数のサンプルを要求する代わりに、各リーフにサンプルの一部(または重み)を要求するオプションを提供します。 モデルがサンプルに重みを使用しているかどうかは、 class_weight
によって異なります。
最も参考になるコメント
min_weight_fraction_leaf
が設定されていて、sample_weights
提供されていない場合は、エラーが発生するか、重みが均一であると想定する必要があると思います。 この場合、min_samples_leaf
とは少し冗長ですが、重みが均一であると仮定した方がよいと思います。