当前位置:   article > 正文

python|随机森林(RandomForestClassifier)_python randomforestclassifier

python randomforestclassifier
  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Wed Nov 6 16:23:18 2019
  4. @author: weiping
  5. """
  6. from sklearn.ensemble import RandomForestClassifier as rfc
  7. from sklearn.ensemble import RandomForestRegressor as rfr
  8. import pandas as pd
  9. import numpy as np
  10. import sklearn.datasets as skdata
  11. import matplotlib.pyplot as plt
  12. from sklearn.model_selection import train_test_split
  13. from sklearn import metrics
  14. '''分类'''
  15. data_x,data_y = skdata.load_iris().data, skdata.load_iris().target
  16. df = pd.DataFrame(data_x,columns = list('abcd'))
  17. df['f'] = data_y
  18. x_tr,x_te,y_tr,y_te = train_test_split(df[list('abcd')],df['f'],train_size = 0.7,random_state =22)
  19. rf = rfc()
  20. rf.fit(x_tr,y_tr)
  21. rf_p = rf.predict(x_te)
  22. metrics.confusion_matrix(y_te,rf_p)
  23. '''回归'''
  24. d_x ,d_y = skdata.load_boston().data,skdata.load_boston().target
  25. x_tr,x_te,y_tr,y_te = train_test_split(d_x,d_y,train_size = 0.7,random_state = 22)
  26. rfr = rfr()
  27. rfr.fit(x_tr,y_tr)
  28. rf_p = rfr.predict(x_te)
  29. metrics.r2_score(rf_p,y_te)

参数(https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html#sklearn.ensemble.RandomForestClassifier

n_estimators=10决策树的个数,越多越好,但是性能就会越差,至少100左右(具体数字忘记从哪里来的了)可以达到可接受的性能和误差率。 
bootstrap=True是否有放回的采样。  
oob_score=Falseoob(out of band,带外)数据,即 在某次决策树训练中没有被bootstrap选中的数据。多单个模型的参数训练,我们知道可以用cross validation(cv)来进行,但是特别消耗时间,而且对于随机森林这种情况也没有大的必要,所以就用这个数据对决策树模型进行验证,算是一个简单的交叉验证。性能消耗小,但是效果不错。  
n_jobs=1并行job个数。这个在ensemble算法中非常重要,尤其是bagging(而非boosting,因为boosting的每次迭代之间有影响,所以很难进行并行化),因为可以并行从而提高性能。n=1不并行;n= n n个并行;n= -1 CPU有多少core,就启动多少job
warm_start=False热启动,决定是否使用上次调用该类的结果然后增加新的。  
class_weight=None各个label的权重。  
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/330988
推荐阅读
相关标签
  

闽ICP备14008679号