当前位置: 首页 > news >正文

sklearn中的决策树

sklearn 中的决策树

关键概念、核心问题

  • 节点

    1. 根节点:没有进边,有出边。包含最初的,针对特征的提问。
    2. 中间节点:既有进边也有出边,进边只有一条,出边可以有很多条。都是针对特征的提问。
    3. 叶子节点:有进边,没有出边,每个叶子节点都是一个类别标签。
    4. 子节点和父节点:在两个相连的节点中,更接近根节点的是父节点,另一个是子节点。
  • 核心问题

    1. 如何从数据表中找出最佳节点和最佳分枝?

    2. 如何让决策树停止生长,防止过拟合?

模块sklearn.tree

  • sklearn中决策树的类都在”tree“这个模块之下。这个模块总共包含五个类:

    tree.DecisionTreeClassifier分类树
    tree.DecisionTreeRegressor回归树
    tree.export_graphviz将生成的决策树导出为DOT格式,画图专用
    tree.ExtraTreeClassifier高随机版本的分类树
    tree.ExtraTreeRegressor高随机版本的回归树

sklearn的基本建模流程

  • sklearn建模的基本流程

    image-20210820153802776

    在这个流程下,分类树对应的代码是:

    from sklearn import tree                #导入需要的模块
    
    clf = tree.DecisionTreeClassifier()     #实例化
    clf = clf.fit(X_train,y_train)          #用训练集数据训练模型
    result = clf.score(X_test,y_test)       #导入测试集,从接口中调用需要的信息
    

sklearn .metrics方法

  • 获取sklearn.metrics中的所有评估方法

    import sklearn
    
    sorted(sklearn.metrics.SCORERS.keys())
    
    """输出"""
    ['accuracy',
     'adjusted_mutual_info_score',
     'adjusted_rand_score',
     'average_precision',
     'completeness_score',
     'explained_variance',
     'f1',
     'f1_macro',
     'f1_micro',
     'f1_samples',
     'f1_weighted',
     'fowlkes_mallows_score',
     'homogeneity_score',
     'log_loss',
     'mean_absolute_error',
     'mean_squared_error',
     'median_absolute_error',
     'mutual_info_score',
     'neg_log_loss',
     'neg_mean_absolute_error',
     'neg_mean_squared_error',
     'neg_mean_squared_log_error',
     'neg_median_absolute_error',
     'normalized_mutual_info_score',
     'precision',
     'precision_macro',
     'precision_micro',
     'precision_samples',
     'precision_weighted',
     'r2',
     'recall',
     'recall_macro',
     'recall_micro',
     'recall_samples',
     'recall_weighted',
     'roc_auc',
     'v_measure_score']
    

http://www.dtcms.com/a/31547.html

相关文章:

  • Java子类调用父类构造器的应用场景
  • STM32-有关内存堆栈、map文件
  • ROS2 应用:按键控制 MoveIt2 中 Panda 机械臂关节位置
  • golang内存泄漏
  • 下载CentOS 10
  • 探索未知:alpha测试的神秘序章【量化理论】
  • 模块化设计的力量:从「乐高积木」看组合式开发如何降低软件工程风险
  • SpringCloud系列教程:微服务的未来(二十五)-基于注解的声明队列交换机、消息转换器、业务改造
  • Ubuntu 查看mysql用户和数据库
  • 使用postman测试api接口基本步骤
  • 【Python】Python顺序语句经典题合集
  • RT_Thread 内核启动分析
  • 家用路由器的WAN口和LAN口有什么区别
  • 【WebGL】attribute方式实例化绘制
  • 线代[8]|北大丘维声教授《怎样学习线性代数?》(红色字体为博主注释)
  • 计算机考研复试上机07
  • ES6箭头函数:基础与进阶指南
  • 红队内网攻防渗透:内网渗透之内网对抗:实战项目VPC1打靶PHP-RCE三层代理路由防火墙上线密码喷射域控提权
  • 请求go构建缓存,go clean -cache
  • 使用西门子 PLC(以 S7 - 1200 为例)编写梯形图程序来根据转速计算瞬时流量和累计流量的详细步骤
  • 0基础学Linux系统(准备1)
  • 沉浸式翻译插件深度评测:打破语言壁垒的黑科技利器
  • w223信息技术知识赛系统设计与实现
  • aws(学习笔记第二十九课) aws cloudfront hands on
  • Qwen-VL传统方法微调
  • 萝卜头笔作文赏析
  • CMMI评估的五个等级
  • ROS 2机器人开发--话题通信:订阅与发布
  • 52类110个主流Java组件和框架
  • SpringBoot实现异步调用的方法