(4)【Python数据分析进阶】Machine-Learning模型与算法应用-回归、分类模型汇总

线性回归、逻辑回归算法应用请参考:

https://codeknight.blog.csdn.net/article/details/135693621icon-default.png?t=N7T8https://codeknight.blog.csdn.net/article/details/135693621本篇主要介绍决策树、随机森林、KNN、SVM、Bayes等有监督算法以及无监督的聚类算法和应用PCA对数据进行降维的算法的基本原理及应用。

目录

一、Decision Trees(决策树)算法建模及应用

决策树的优点主要包括:

决策树的缺点有:

决策树模型的两种规范(criterion)形式是基尼指数(gini)和熵(entropy):

应用案例——鸢尾花类别分类

1、导入函数库

2、加载数据集

3、划分特征集和响应集

4、划分训练集和测试集

5、加载决策树算法模型

5.1应用决策树模型的基尼指数(gini)规范建模

5.2模型性能评估

5.3决策树图像

5.4应用决策树模型的熵(entropy)规范建模

5.5模型性能评估

5.6决策树图像

二、Random Forests(随机森林)算法建模及应用

以下是随机森林算法的一些主要优点:

然而,尽管随机森林有许多优点,但也存在一些缺点:

应用案例(一)——鸢尾花数据集分类(随机森林处理离散型数据)

1、导入函数库

2、加载数据集

3、划分特征集与响应集

4、划分训练集和测试集

5、模型训练与预测

6、模型评估

7、模型预测

常用技巧1:特征变量权重分析 Feature_Importances_

1、计算权重占比

2、绘制权重占比图像

3、缩减特征变量X(对于成百上千特征变量的大数据集有非常重要的意义)

应用案例(二)——预测汽油的消耗量(随机森林处理连续型数据)

1、加载数据集

2、划分特征集和响应集

3、划分训练集和测试集

常用技巧2:Feature Scaling(特征缩放/标准化)

4、 训练模型与预测

5、模型评估

常用技巧3:调参

直观显示参数与误差之间的关系(寻找一个误差y最小时的参数x)

三、K Nearest Neighbour(KNN最近邻)算法建模及应用

求空间距离的算法总结:

求距离的详细公式:

应用案例——鸢尾花数据分类

1、导入数据集

2、 划分特征集和响应集

3、创建模型评估得分

4、调整模型参数K

5、绘制k与score的图像

常用技巧1:Grid search on KNN classifier

处理过拟合可以采取以下策略:

常用技巧2:Using RandomizedSearchCV

处理过拟合可以采取以下策略:

四、Support Vector Machine(支持向量机)算法建模及应用

应用案例(一)——SVM 对于 Iris 数据集的处理

1、导入函数库

2、加载数据集

3、数据集预处理

4、绘制数据图像

5、建立SVM模型并训练

6、获取模型参数,求出decision boundary和margin

7、绘制分类图像

8、调整参数C控制正则化强度

应用案例(二)——SVM 对于 弯月数据集的处理

1、加载数据集

2、绘制数据图像

3、数据标准化

4、模型训练

 5、调参数C

6、支持向量机模型

案例应用(三)——SVM 对于 direct marketing campaigns (phone calls)数据集的处理

1、加载数据集

2、数据分析

3、实现数据类型转换——map()函数

4、实现数据类型转换——get_dummies()函数

5、划分训练集和测试集

6、模型训练

五、Bayes(贝叶斯)算法建模及应用

贝叶斯定理与公式

举例理解贝叶斯公式

贝叶斯的分类

(1)伯努利朴素贝叶斯

(2)多项式朴素贝叶斯

(3)高斯朴素贝叶斯

贝叶斯应用

应用案例(一)——)应用Gaussian Naive Bayes预测沉船存活人数

1、导入数据集

2、数据预处理

常用技巧1:数据类型转换(object->number)

3、划分训练集与测试集

4、模型训练

5、模型评估

6、模型优化

应用案例(二)——应用Multinomial Naive Bayes处理垃圾邮件

1、加载数据集

2、划分测试集和训练集

3、文本转向量

插曲:CountVectorizer 举例说明

4、模型训练

5、模型评估

插曲:Sklearn Pipeline 使用pipeline替代transform几行代码

六、K Means Clustering(K均值聚类)算法建模及应用

K-Means Clustering是什么?

K值应该怎样选取?

应用案例(二)——年龄与收入聚类分析

1、导入函数库

2、加载数据集

3、绘制数据图像

4、模型训练与预测

调参参考:Python在使用kmeans聚类函数时报错:AttributeError: ‘NoneType‘ object has no attribute ‘split‘_nonetype' object has no attribute 'split-CSDN博客

5、将分类添加到数据表格

6、打印聚类中心点坐标

7、绘制聚类散点图

常用技巧1:数据标准化

MinMaxScaler

Preprocessing using min max scaler

MinMaxScaler和StandardScaler的区别:

Elbow Plot

为什么选取Elbow Plot的突变点作为K?

应用案例(二)——KMeans clustering如何验证K点最佳 silhouette analysis(轮廓分析)

1、导入函数库

2、使用 yellowbrick 判断最佳K值

pip install yellowbrick

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/453883.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Coreline Soft x Incredibuild

关于 Coreline Soft Coreline Soft 是一家专注于先进医疗人工智能成像软件技术的上市公司,致力于提高疾病诊断的准确性和效率。Coreline soft 成立于2012年,总部位于韩国首尔,目前 Coreline Soft 业务已向全球范围内扩展,在德国法…

关于服务器解析A记录和CNAME记录的分析

内容提要: 大致讲下理解,dns域名解析这一块 0 . 问题来源 最近搞了一个七牛云上传,然后需要配置融合cdn加速,也就是可以加速域名,中间有一部需要CNAME 域名,也就是将七牛云提供的域名CNAME一下,查阅资料其实就是起一个别名,好访问而已. 方便我们访问云存储,达到加速的效果. …

七个步骤教会你构建企业关键绩效指标体系

明确战略和目标 通常用平衡计分卡来建立关键绩效指标体系,完成各部门的关键绩效指标体系。有人力资源部牵头组织并汇总整理关键绩效指标,确定公司组织结构及部门职责、岗位职责,促进组织内上下级就设定指标的充分沟通。作为牵头组织者&#x…

贰[2],Xamarin生成APK

1,生成改为Release版本 2,选中****.Android项目 3,点击生成,选择存档 4,点击分发 5,选择临时 6,添加签名标识 7,选择对应的签名标识,点击另存为

大模型开发者必看:解决RAG系统开发中12大难题的终极指南

如何克服检索增强生成的关键难题 图源自 Barnett 等人的研究 工程化检索增强生成系统时的七大挑战 痛点 1:缺失内容痛点 2:关键文档被遗漏痛点 3:文档整合的长度限制 —— 超出上下文痛点 4:提取困难痛点 5:格式错误痛…

L1-039 古风排版-java

输入样例: 4 This is a test case输出样例: asa T st ih e tsice s import java.util.Scanner;public class Main { public static void main(String[] args) {Scanner scanner new Scanner(System.in);int xscanner.nextInt();scanner.nextLine();S…

On the Spectral Bias of Neural Networks论文阅读

1. 摘要 众所周知,过度参数化的深度神经网络(DNNs)是一种表达能力极强的函数,它甚至可以以100%的训练精度记忆随机数据。这就提出了一个问题,为什么他们不能轻易地对真实数据进行拟合呢。为了回答这个问题,研究人员使用傅里叶分析…

程序员为何宠爱电脑如命?揭秘背后的心理与实际原因

在科技发展的时代,程序员是现代社会中不可或缺的一群人。他们的工作离不开电脑,而有趣的是,很多程序员似乎对于关机这一行为心存抵触。为何程序员如此钟情于保持电脑的开启状态呢?这其中到底隐藏了怎样的心理和实际原因呢&#xf…

题目:有1,2,3,4共四个数字,能组成多少个不相同而且无重复数字的三位数有多少个,都是多少?lua

这是作者的思路, 创建三个表, 第一个数是从四个数遍历, 第二个是数剔除第一个数进行遍历 第三个是剔除第一第二个数遍历 脚本如下 local a{1,2, 3, 4} local b{} local c{} local d{} local function copy(tbl) local ctbl{} for k,v in…

【复现】WordPress html5-video-player SQL 注入漏洞_39

目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一: 四.修复建议: 五. 搜索语法: 六.免责声明 一.概述 在WordPress中播放各种视频文件。一个简单,可访问,易于使用和完全可定制的视频播放器,适用于所…

基于springboot智慧养老平台源码和论文

首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统,主要包罗软件架构模式、整体功能模块、数据库设计。本项…

接口测试框架对比

公司计划系统的开展接口自动化测试,需要我这边调研一下主流的接口测试框架给后端测试(主要测试接口)的同事介绍一下每个框架的特定和使用方式。后端同事根据他们接口的特点提出一下需求,看哪个框架更适合我们。 需求 1、接口编写…