机器学习算法-随机森林

1、机器学习算法选择

https://zh.wikipedia.org/wiki/朴素贝叶斯分类器 中提到“2006年有一篇文章详细比较了各类分类方法,发现更新的方法(如提高树随机森林)的性能超过了贝叶斯分类器”,综合网络中对二者的评价,选择使用随机森林做为机器学习算法。php

2、数据预处理

(1)分词:用jieba中文分词将内容切分红一组分词。html

(2)热独编码: 将具备多维意义的数据转化成类二进制的数据,例如:"咱们"=>包含有"咱们"这组词的则为1,不然为0。详见:参考资料(4)python

3、Python扩展包sklearn随机森林算法RandomForestClassifier部分参数说明

参数名称
默认值 说明
criterion
gini
纯度计算方式,详见:参考资料(1)
max_features
auto
最大特征数,减少特征选择个数m,树的相关性和分类能力也会相应的下降;增大m,二者也会随之增大。详见:参考资料(2)
max_depth
None
决策树的最大深度,数据量大的状况下spark项目组建议为4,来自:https://github.com/apache/spark/blob/master/mllib/src/main/scala/org/apache/spark/mllib/tree/RandomForest.scala


参考资料:git

(1)Spark 随机森林算法原理、源码分析及案例实战 https://www.ibm.com/developerworks/cn/opensource/os-cn-spark-random-forest/github

(2)随机森林(Random Forest) by poll笔记 http://www.cnblogs.com/maybe2030/p/4585705.html算法

(3)python的决策树和随机森林 https://www.ibm.com/developerworks/cn/opensource/os-cn-spark-random-forest/apache

(4)OneHotEncoder进行数据预处理 http://willz.net/2013/07/13/data_preprocessing_via_onehotencoder/网络


源地址:https://www.mudoom.com/Article/show/id/38.html  By佐柱dom

转载请注明出处,也欢迎偶尔逛逛个人小站,谢谢 :)机器学习