spark mllib中决策树优缺点是什么
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,小编给大家分享一下spark mllib中决策树优缺点是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!决策树的优点:可以生成可以理解的规则。计算量相对来说不是很大。可以处理连续和
千家信息网最后更新 2026年11月01日spark mllib中决策树优缺点是什么
小编给大家分享一下spark mllib中决策树优缺点是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
决策树的优点:
可以生成可以理解的规则。
计算量相对来说不是很大。
可以处理连续和种类字段。
决策树可以清晰的显示哪些字段比较重要
决策树的缺点:
对连续性的字段比较难预测。
对有时间顺序的数据,需要很多预处理的工作。
当类别太多时,错误可能就会增加的比较快。
一般的算法分类的时候,只是根据一个字段来分类。
出去玩记录表
| 出去玩 | 温度 | 起风 | 下雨 | 湿度 |
| 1 | 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 1 | 1 |
| 0 | 0 | 1 | 0 | 0 |
| 1 | 1 | 1 | 0 | 0 |
| 1 | 1 | 0 | 0 | 0 |
| 1 | 1 | 1 | 0 | 0 |
运行代码如下
package spark.DTimport org.apache.spark.mllib.tree.DecisionTreeimport org.apache.spark.mllib.util.MLUtilsimport org.apache.spark.{SparkContext, SparkConf}/** * 决策树使用案例-出去玩 * **********************************决策树******************************** * 决策树是一种监督学习,监督学习,就是给定一对样本,每个样本都有一组属性和一个类别, * 这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给 * 出正确的分类.其原理是:从一组无序无规则的因素中归纳总结出符合要求的分类规则. * * 决策树算法基础:信息熵,ID3 * 信息熵:对事件中不确定的信息的度量.一个事件或属性中,其信息熵越大,含有的不确定信 * 息越大,对数据分析的计算也越有益.故,信息熵的选择总是选择当前事件中拥有最高 * 信息熵的那个属性作为待测属性. * ID3:一种贪心算法,用来构造决策树.以信息熵的下降速度作为测试属性的标准,即在每个 * 节点选取还尚未被用来划分的,具有最高信息增益的属性作为划分标准,然后继续这个过程, * 直到生成的决策树能完美分类训练样例. * * 使用场景:任何一个只要符合 key-value 模式的分类数据都可以根据决策树进行推断. * * 决策树用来预测的对象是固定的,丛根到叶子节点的一条特定路线就是一个分类规则,决定 * 一个分类算法和结果. * * **********************************决策树******************************** * Created by eric on 16-7-19. */object DT { val conf = new SparkConf() //创建环境变量 .setMaster("local") //设置本地化处理 .setAppName("ZombieBayes") //设定名称 val sc = new SparkContext(conf) def main(args: Array[String]) { val data = MLUtils.loadLibSVMFile(sc, "./src/main/spark/DT/DTree.txt") val numClasses = 2//分类数量 val categorycalFeaturesInfo = Map[Int, Int]()//设定输入格式 val impurity = "entropy" //设定信息增益计算方式 val maxDepth = 5 //最大深度 val maxBins = 3 //设定分割数据集 val model = DecisionTree.trainClassifier( data,//输入数据集 numClasses,//分类数量,本例只有出去,不出去,共两类 categorycalFeaturesInfo,// 属性对格式,这里是单纯的键值对 impurity,//计算信息增益形式 maxDepth,// 树的高度 maxBins//能够分裂的数据集合数量 ) println(model.topNode) println(model.numNodes)//5 println(model.algo)//Classification }}DTree.txt
1 1:1 2:0 3:0 4:10 1:1 2:0 3:1 4:10 1:0 2:1 3:0 4:01 1:1 2:1 3:0 4:01 1:1 2:0 3:0 4:01 1:1 2:1 3:0 4:0
结果如下
id = 1, isLeaf = false, predict = 1.0 (prob = 0.6666666666666666), impurity = 0.9182958340544896, split = Some(Feature = 0, threshold = 0.0, featureType = Continuous, categories = List()), stats = Some(gain = 0.31668908831502096, impurity = 0.9182958340544896, left impurity = 0.0, right impurity = 0.7219280948873623)
5
Classification
看完了这篇文章,相信你对"spark mllib中决策树优缺点是什么"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
决策
分类
信息
属性
数据
字段
算法
规则
事件
数量
类别
学习
优缺点
最高
对象
就是
标准
样本
格式
篇文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技互联网企业
科技创新与互联网经济
善班互联网科技
广州互联网络科技有限公司
苏州互联网科技贷款公司
电子科技大学互联网
互联网科技ppt模板
中国最先进互联网科技公司
阿里互联网科技公司
互联网大会黑科技排名
注册互联网科技公司经营范围大全
互联网保险科技创业
华夏恒生互联网科技013171
中国互联网公司排名锤子科技
黑科技 体验场景 互联网大会
深圳互联网科技的发展
本届互联网大会上的黑科技
互联网硬科技公司
数字互联网科技有限公司
互联网对科技影响
深圳九邦互联网科技有限公司
互联网科技产业
互联网科技财经
广州互联网科技公司
科技服务与互联网
青岛互联网科技公司
互联网科技公司电话
贷财互联网科技
米客互联网科技
中天科技中国工业互联网