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

朋友让帮忙做网站旅游网站建设风险分析

朋友让帮忙做网站,旅游网站建设风险分析,怎么看一个网站哪公司做的,网站空间免备案目录 决策树算法原理 1. 决策树概述 2. ID3 算法原理 3. C4.5 算法原理 4. CART 算法原理 决策树模型实现(scikit - learn) 代码实现步骤 代码解释 场景示例 贷款审批 疾病诊断 决策树算法原理 1. 决策树概述 决策树是一种基本的分类与回归…

目录

决策树算法原理

1. 决策树概述

2. ID3 算法原理

3. C4.5 算法原理

4. CART 算法原理

决策树模型实现(scikit - learn)

代码实现步骤

代码解释

场景示例

贷款审批

疾病诊断


决策树算法原理

1. 决策树概述

决策树是一种基本的分类与回归方法,它通过对特征进行递归划分,将数据集分割成不同的子集,直到每个子集都尽可能属于同一类别(分类树)或具有相似的数值输出(回归树)。决策树由节点和边组成,内部节点表示一个特征上的测试,分支表示测试输出,叶节点表示类别或值。

2. ID3 算法原理
  • 核心思想:ID3 算法以信息增益作为特征选择的准则,倾向于选择信息增益大的特征进行划分。
  • 信息增益:信息增益是基于信息熵的概念。信息熵是衡量数据不确定性的指标,对于一个分类问题,设数据集 D 中第 k 类样本所占的比例为 p_k(k = 1,2,\cdots,K),则数据集 D 的信息熵为:
    H(D)=-\sum_{k = 1}^{K}p_k\log_2p_k
    假设使用特征 A 对数据集D 进行划分,划分后得到 V 个子集D_1,D_2,\cdots,D_V,每个子集 D_v 的样本数占总样本数的比例为\frac{|D_v|}{|D|}​,则特征 A 对数据集 D 的信息增益为:
    g(D,A)=H(D)-\sum_{v = 1}^{V}\frac{|D_v|}{|D|}H(D_v)
  • 算法步骤
    1. 计算数据集 D 的信息熵 H(D)
    2. 对每个特征 A,计算其对数据集 D 的信息增益 g(D,A)
    3. 选择信息增益最大的特征作为当前节点的划分特征。
    4. 根据该特征的不同取值将数据集D划分为不同的子集,对每个子集递归地重复上述步骤,直到子集的样本都属于同一类别或没有可用的特征为止。
3. C4.5 算法原理
  • 核心思想:C4.5 算法是对 ID3 算法的改进,它使用信息增益比作为特征选择的准则,克服了 ID3 算法倾向于选择取值较多的特征的缺点。
  • 信息增益比:信息增益比是信息增益与特征 A 的固有值 IV(A)的比值,特征A 的固有值定义为:
    IV(A)=-\sum_{v = 1}^{V}\frac{|D_v|}{|D|}\log_2\frac{|D_v|}{|D|}
    特征A对数据集D的信息增益比为:
    g_R(D,A)=\frac{g(D,A)}{IV(A)}
  • 算法步骤:与 ID3 算法类似,只是在选择划分特征时使用信息增益比代替信息增益。
4. CART 算法原理
  • 核心思想:CART(Classification and Regression Trees)算法既可以用于分类问题,也可以用于回归问题。对于分类问题,使用基尼指数作为特征选择的准则;对于回归问题,使用均方误差作为划分准则。
  • 基尼指数:对于一个分类问题,数据集 D 的基尼指数定义为:
    Gini(D)=1-\sum_{k = 1}^{K}p_k^2
    假设使用特征A及其取值a对数据集D进行划分,得到两个子集D_1D_2,则特征A在取值 a处的基尼指数为:
    Gini(D,A,a)=\frac{|D_1|}{|D|}Gini(D_1)+\frac{|D_2|}{|D|}Gini(D_2)
  • 算法步骤
    • 分类树
      1. 对于每个特征A及其每个可能的取值a,计算基尼指数Gini(D,A,a)
      2. 选择基尼指数最小的特征和取值作为当前节点的划分条件。
      3. 根据划分条件将数据集D划分为两个子集,对每个子集递归地重复上述步骤,直到满足停止条件(如子集样本数小于某个阈值)。
    • 回归树:选择使得划分后两个子集的均方误差之和最小的特征和划分点进行划分。

决策树模型实现(scikit - learn)

代码实现步骤
import numpy as np
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score
import matplotlib.pyplot as plt
from sklearn.tree import plot_tree# 1. 加载数据集
iris = load_iris()
X = iris.data
y = iris.target# 2. 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# 3. 创建决策树分类器
# 使用 CART 算法(默认)
clf = DecisionTreeClassifier(random_state=42)# 4. 训练模型
clf.fit(X_train, y_train)# 5. 进行预测
y_pred = clf.predict(X_test)# 6. 评估模型性能
accuracy = accuracy_score(y_test, y_pred)
print(f"模型准确率: {accuracy}")# 7. 可视化决策树
plt.figure(figsize=(12, 8))
plot_tree(clf, feature_names=iris.feature_names, class_names=iris.target_names, filled=True)
plt.show()
代码解释
  1. 数据加载:使用 load_iris 函数加载鸢尾花数据集,该数据集包含 4 个特征和 3 个类别。
  2. 数据划分:使用 train_test_split 函数将数据集划分为训练集和测试集,测试集占比 20%。
  3. 模型创建:创建 DecisionTreeClassifier 类的实例 clf,使用默认的 CART 算法。
  4. 模型训练:调用 fit 方法,使用训练集数据 X_train 和对应的标签 y_train 对模型进行训练。
  5. 模型预测:使用训练好的模型对测试集数据 X_test 进行预测,得到预测结果 y_pred
  6. 模型评估:使用 accuracy_score 函数计算模型的准确率。
  7. 模型可视化:使用 plot_tree 函数将决策树可视化,展示决策树的结构和划分规则。

场景示例

贷款审批

银行在进行贷款审批时,可以收集客户的各种信息,如年龄、收入、信用记录等作为特征,客户是否违约作为目标变量。使用决策树模型,银行可以根据客户的信息判断客户是否有违约风险,从而决定是否批准贷款。

疾病诊断

在医疗领域,医生可以收集患者的症状、检查结果等信息作为特征,患者是否患有某种疾病作为目标变量。通过决策树模型,医生可以根据患者的信息进行初步的疾病诊断,辅助制定治疗方案。

http://www.dtcms.com/wzjs/785306.html

相关文章:

  • 昆山做网站的公司虞城做网站
  • 网站ftp地址是什么dw做网站背景图片设置
  • django做网站和js做网站广告设计公司名称
  • 安徽网站推广优化做网站用的各种图标大全
  • 怎么建设vip电影网站有限责任公司和有限公司有啥区别
  • moodle网站建设门户网站建设技术要求
  • ie的常用网站建设机械网站
  • 泉州自主建站模板厂房装修多少钱一个平方米
  • 红色ppt模板免费下载网站上海徐家汇网站建设
  • 呼和浩特市网站电商网站建设课设
  • 电商网站建设在哪里找设计师足球比赛直播中国队
  • 如何对网站做渗透淘宝上新推荐
  • 网站添加ico营销培训计划
  • 做网站和做app有什么不同成都市建设局网站
  • 关键词排名点击软件网站微信小程序安装
  • 自己开通一个网站需要多少钱淘宝卖家 打电话 做网站
  • 汕头做网站优化的公司wordpress theme开发
  • 寿光市住房和建设局网站机构类网站有哪些
  • 校园官方网站建设创建站怎么上传网站怎么办
  • 金融门户网站建设品牌网站升级
  • 网站建设技术哪个好网站建设方案平台选择
  • 网站建设珠江摩尔教做甜品网站
  • 深圳龙华网站建设公司电子商务推广方式有哪些
  • 网站详细报价百度推广费用可以退吗
  • 网站备案需要什么材料厦门成品网站
  • 湖北网站建设报价泰安房产中介公司
  • 亳州市建设工程质量监督站网站青海公司网站建设哪家快
  • 建设一个视频网站己18深圳投资推广署
  • 订阅号怎么做微网站建站公司获客成本
  • 什么网站可以做锦鲤活动虚拟主机建设二个网站