使用sklearn的决策树实现iris鸢尾花数据集的分类 要求: 建立分类模型,至少包含4个剪枝参数:max_depth.min_samples_leaf .min_samples_split.max_features和criterion参数. 运用GridSearchCV,寻找出最优参数. 绘制出在不同的max_depth下的学习曲线. 步骤: 一.导入各种我们需要的模块或者数据集等 graphviz安装(安装完配置好路径还是不行的话重启一下电脑) from sklearn import tr…
sklearn CART决策树分类 决策树是一种常用的机器学习方法,可以用于分类和回归.同时,决策树的训练结果非常容易理解,而且对于数据预处理的要求也不是很高. 理论部分 比较经典的决策树是ID3.C4.5和CART,分别分析信息增益.增益率.基尼指数,总体思想是不断降低信息的不确定性,最后达到分类的目的. 这里介绍的CART(Classification And Regression Tree)决策树选用基尼指数(Gini Index)来依次选择划分属性 \[Gini(D)=\sum_{k=1…
决策树算法 决策树算法主要有ID3, C4.5, CART这三种. ID3算法从树的根节点开始,总是选择信息增益最大的特征,对此特征施加判断条件建立子节点,递归进行,直到信息增益很小或者没有特征时结束. 信息增益:特征 A 对于某一训练集 D 的信息增益 \(g(D, A)\) 定义为集合 D 的熵 \(H(D)\) 与特征 A 在给定条件下 D 的熵 \(H(D/A)\) 之差. 熵(Entropy)是表示随机变量不确定性的度量. \[ g(D, A) = H(D) - H(D \mid A)…
[机器学习]Iris Data Set(鸢尾花数据集) 注:数据是机器学习模型的原材料,当下机器学习的热潮离不开大数据的支撑.在机器学习领域,有大量的公开数据集可以使用,从几百个样本到几十万个样本的数据集都有.有些数据集被用来教学,有些被当做机器学习模型性能测试的标准(例如ImageNet图片数据集以及相关的图像分类比赛).这些高质量的公开数据集为我们学习和研究机器学习算法提供了极大的便利,类似于模式生物对于生物学实验的价值. Iris数据集概况 Iris Data Set(鸢尾属植物数据集)是…
sklearn 的数据集有好多个种 自带的小数据集(packaged dataset):sklearn.datasets.load_<name> 可在线下载的数据集(Downloaded Dataset):sklearn.datasets.fetch_<name> 计算机生成的数据集(Generated Dataset):sklearn.datasets.make_<name> svmlight/libsvm格式的数据集:sklearn.datasets.load_sv…
1 鸢尾花数据集背景 鸢尾花数据集是原则20世纪30年代的经典数据集.它是用统计进行分类的鼻祖. sklearn包不仅囊括很多机器学习的算法,也自带了许多经典的数据集,鸢尾花数据集就是其中之一. 导入的方法很简单,不过我比较好奇它是如何来存储这些数据的,于是我决定去背后看一看 from sklearn.datasets import load_iris data = load_iris() 找到sklearn包的路径,发现包可不少,不过现在扔在一边,以后再来探索,我现在要找到是datasets文…
sklearn提供的自带的数据集 sklearn 的数据集有好多个种 自带的小数据集(packaged dataset):sklearn.datasets.load_<name> 可在线下载的数据集(Downloaded Dataset):sklearn.datasets.fetch_<name> 计算机生成的数据集(Generated Dataset):sklearn.datasets.make_<name> svmlight/libsvm格式的数据集:sklearn…
PCA降维--两种实现 : SVD或EVD. 强力总结. 在鸢尾花数据集(iris)实做 今天自己实现PCA,从网上看文章的时候,发现有的文章没有搞清楚把SVD(奇异值分解)实现和EVD(特征值分解)实现,查阅多个文章很容易更糊涂,所以搞懂之后写下这个总结. 先说最关键的点: a. PCA两个主要的实现方式: SVD(奇异值分解), EVD(特征值分解). b. 特征值分解方式需要计算协方差矩阵,分解的是协方差矩阵.  SVD方式不需要计算协方差矩阵,分解的是经过中心化的原数据矩阵 1.特征值分…
项目 内容 课程班级博客链接 班级博客 这个作业要求链接 作业要求 我的课程学习目标 (1)理解并掌握代码风格及设计规范:(2)通过任务3进行协作开发,尝试进行代码复审,在进行同伴复审的过程中体会结对编程: (3)在学习D{0-1}问题的解法的同时掌握程序设计的模块化开发,并熟悉PSP流程.(4)掌握Github协作开发的操作方法. 这个作业在哪些方面帮助我实现学习目标 (1)通过对实验二博客进行阅读评价,发现同伴的不足,同时可以对自己实验二的部分遗留问题得到解决:(2)通过阅读<构建之法>第…
实验三 软件工程结对项目 项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/2018CST 这个作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/14604444.html 我的课程学习目标 (1)掌握软件项目结对开发流程:(2)掌握Github发布软件项目的操作方法. 这个作业在哪些方面帮助我实现学习目标 (1)在程序设计方面提高了自己的编程能力:(2)让我了解了团队协作.分工的重要性:(3)结对编程.和…