のsklearnのPythonライブラリ

 まず、sklearnをインストール

scikit学習condaインストール

リファレンス

 

[1]全体記述sklearn

 

https://blog.csdn.net/u014248127/article/details/78885180

 

 

第二に、導入RandomForestRegressor

 

1      sklearn.ensemble.RandomForestRegressor(n_estimators = 10 2                                               =基準' MSE ' 3                                               MAX_DEPTH = なし、
 4                                               min_samples_split = 2 5                                               min_samples_leaf = 1 6                                               min_weight_fraction_leaf = 0.0 7                                               max_featuresの= ' 自動車' 8                                              max_leaf_nodes = なし、
 9                                               min_impurity_split = 1E-07 10                                               ブートストラップ= 真、
 11                                               oob_score = Falseを、
 12                                               n_jobs = 1 13                                               random_state = なし、
 14                                               冗長= 0、
 15                                               warm_start =偽)

 

 

 

基準:「ジニ」または「エントロピー」(デフォルト=「ジニ」)はジニ(属性を算出するジニ不純物)またはエントロピー(情報ゲイン)、最も適切なノードを選択します。
スプリッタ:「ベスト」または「ランダム」(デフォルト=「ベスト」)、ランダムに選択されたプロパティまたは最大の属性を純度しないことを選択し、デフォルトを使用することをお勧めします。
max_features:最適な分割属性文字を選択すると、この値を超えることはできません。
  場合整数、すなわち特徴の最大数は、
      「自動」、単にすべての機能を選択その後max_featuresの=のSQRT(n_features)は、すべての単一のツリーがそれらを使用できるかどうか。この場合、すべての単一のツリーには、任意の制限はありません。
      「SQRT」、次いでmax_featuresの=の場合このオプションでは、特徴の総数のすべての単一のサブツリーのルートを利用することができます。サブツリーのすべての単一の一つが10だけ取ることができるように、例えば、変数(特徴)の総数は、100である場合。「LOG2は、」同様のオプションの別のタイプです。
      "LOG2"場合には、=のmax_features

      。なし、次いでmax_features = n_features場合小数の場合、小数のトレーニングセットの数、請求*:例としては、以下:0.2:このオプションは、各サブツリーは、ランダムフォレスト変数(機能を)数の20%を利用することができる可能にします。あなたは、x%の効果の特性を勉強したい場合は、私たちは「0.X」の形式を使用することができます。
    

各ノードには、我々が考慮すべきより多くのオプションを持っているので、増加max_featuresは、一般的に、モデルのパフォーマンスを向上させます。それはランダム明確な利点林である単一のツリーの多様性を減少させるためしかし、これは、完全に正確ではないかもしれません。しかし、確かに、あなたはmax_featuresを増やすことで、アルゴリズムの速度が低下します。そのため、あなたは適切なバランスを必要と最高のmax_featuresを選択してください。     


MAX_DEPTH:(デフォルト=なし)は、ツリーの最大の深さを設定し、デフォルトでは、このような成果が一つだけのカテゴリ内のすべてのリーフノードを作る、またはmin_samples_splitに達するとき、Noneです。
min_samples_split:時分割ノード属性、分割あたりのサンプルの最小数。
min_samples_leaf:リーフノードのサンプルの最小数。以前にツリーを書いていた場合は、最小のサンプルの葉の大きさの重要性を理解することができます。あなたがたは、決定木のエンド・ノードです。小さい葉は、データの鉄道騒音をキャッチするモデルが容易になります。一般的に、私は、リーフノードの最小数が50より大きくなるように設定されていることを好みます。あなた自身のケースでは、最適なものを見つけるために、葉の大きさの多くの種類を試してみてください。
max_leaf_nodes:木のサンプル(デフォルト=なし)の葉の最大数。
min_weight_fraction_leaf:(デフォルト= 0)リーフノードに必要な最小量
冗長:(デフォルト= 0)は、タスクの進行状況が表示されます


ランダムセンLinteいくつかのパラメータ:
n_estimators = 10:木の数、よりよいが、性能が悪くなり、少なくとも約100(特に数字は忘れて来る)と許容誤差性能を達成することができます率得票数の最大値を予測したり意味するのに使用する前に、あなたはサブツリーの数を確立したいです。複数のサブツリーモデルは、より良いパフォーマンスを可能にするが、同時に、あなたのコードが遅く作ります。あなたは限り、それはあなたがより良く、より安定した予測することができますので、あなたのプロセッサは、生きるために余裕ができるよう、可能な限り最高の値を選択する必要があります。
= Trueのブートストラップ:バックサンプルがあります。  
= Falseのoob_score:OOB(アウトオブバンド、バンド)のデータ、すなわち:特定の決定木のトレーニングでブートストラップ・データで選択されていません。マルチパラメータ単一モデルのトレーニング、我々は、彼らが実行する検証(CV)を越えることができます知っているが、特に時間がかかり、また、ランダムな森林のため、この場合には、大きなための必要はありませんので、我々は決定木モデルを検証するために、このデータを使用して、考えられシンプルなクロスバリデーション。パフォーマンスの消費量は小さいが、良い結果です。これは、ランダムフォレスト、クロス検証方法です。これは、検証方法は非常に似ていますが、はるかに高速である左。サブツリーのデータ片の各々によって観測されたこの方法は、単純にマーク。次に、各サンプルは、スコア最大の投票はそれらのサブ木が観測されたサンプルのトレーニングを使用していない取得するための投票で見つけることが観察されました。
= 1 n_jobs。 パラレルジョブ番号。(各反復の昇圧衝撃の間、並列化することが困難であるためではなく、昇圧)並行してパフォーマンスを向上させるので、これは、非常に特定の袋詰めに、アンサンブルアルゴリズムにおいて重要です。1 =非平行であり、n:n個の並列; -1:多くの人が仕事の開始どのようにコアのCPU数、
warm_start =偽:ホットスタートは、最後の呼び出しの結果を使用し、新しいクラスを追加するかどうかを決定します。 
=なしclass_weight:各ラベルの重量重量。 

random_state:このパラメータは、結果が容易に再現できます。ランダムな値を決定する定数パラメータとトレーニングデータの場合には、同じ結果を生成します。私は個人的に統合の最適なパラメータモデル異なるランダムな状態を試してみましたが、この方法では、時々 、個々のランダムな状態よりも優れています


予測は、いくつかの形態をとることができます。
predict_proba(X)は:確率値との結果が得られます。すべての確率で各ポイントラベルと1に 
予測(X) 直接指定された予測結果。予測値のどのタイプであるタイプを参照する最も高い確率の結果に基づいて、内部または電話predict_proba()。 
predict_log_proba(X) とpredict_proba、実質的に同じですが、ログ()処理を行うための結果

参考文献:

[2] GBM / GBDT / GBRTを使用する方法 - はじめに勾配が各種パラメータの回帰木を強化します

https://zwang1986.github.io/2016/04/24/%E5%A6%82%E4%BD%95%E7%94%A8%E5%A5%BDgbdt%EF%BC%88gradient_boosted_regression_trees%EF%BC %89 /

[3]各ランダム森林の最適なパラメータを検索する方法について説明します

https://blog.csdn.net/qq_16633405/article/details/61200502

https://www.analyticsvidhya.com/blog/2015/06/tuning-random-forest-model/

 

第三に、導入GradientBoostingRegressor

 

 

 

リッジ回帰、なげなわ回帰および回帰ElasticNetの機械学習アルゴリズム

https://www.biaodianfu.com/ridge-lasso-elasticnet.html

 

 

 

 

 

 

 

 

 

 

 

 

参考文献:

 

おすすめ

転載: www.cnblogs.com/ccpang/p/11312924.html