(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.rhkb.cn/news/253872.html

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

相关文章

C语言笔试题之实现C库函数 strstr()(设置标志位)

实例要求: 1、请你实现C库函数strstr()(stdio.h & string.h),请在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始);2、函数声明:int strStr(char* h…

ubuntu20安装mongodb

方法一:直接安装(命令是直接从mongo官网Install MongoDB Community Edition on Ubuntu — MongoDB Manual复制的) cat /etc/lsb-release sudo apt-get install -y gnupg curl curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \sudo gp…

小程序中封装下拉选择框

小程序中没有现成的下拉选择组件&#xff0c;有个picker组件&#xff0c;但是是底部弹出的&#xff0c;不满足我的需求&#xff0c;所以重新封装了一个。 封装的下拉组件 html部分&#xff1a; <view class"select_all_view"><!-- 内容说明&#xff0c;可…

中小型网络系统总体规划与设计方法

目录 1.基于网络的信息系统基本结构 2.网络需求调研与系统设计原则 3.网络用户调查 4.网络节点地理位置分布情况 5.网络需求详细分析 6.应用概要分析 7.网络工程设计总体目标与设计原则 8.网络结构与拓扑构型设计方法 9.核心层网络结构设计 10.接入核心路由器 11.汇聚…

513. 找树左下角的值 - 力扣(LeetCode)

题目描述 给定一个二叉树的 根节点 root&#xff0c;请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 题目示例 输入: root [2,1,3] 输出: 1 解题思路 深度优先搜索 使用 depth 记录遍历到的节点的深度&#xff0c;result 记录深度在 depth 的最…

幻兽帕鲁mac可以玩吗?

《幻兽帕鲁》&#xff08;英文&#xff1a;Palworld&#xff09;是一款近期在 Steam 爆红的动作冒险生存游戏&#xff0c;游戏设置在一个居住着「帕鲁」的开放世界中&#xff0c;玩家可以战斗并捕捉帕鲁&#xff0c;也能用它们来建造基地、骑乘和战斗。 不过目前《幻兽帕鲁》仅…

Appium使用初体验之参数配置,简单能够运行起来

一、服务器配置 Appium Server配置与Appium Server GUI&#xff08;可视化客户端&#xff09;中的配置对应&#xff0c;尤其是二者如果不在同一台机器上&#xff0c;那么就需要配置Appium Server GUI所在机器的IP&#xff08;Appium Server GUI的HOST也需要配置本机IP&#xf…

Android Studio安装过程遇到SDK无法安装问题解决

首次打开studio遇到该类问题&#xff0c;需要下载SDK文件&#xff0c;后又发现SDK由于是Google源&#xff0c;无法进行正常安装&#xff0c;故转而进行SDK的镜像安装。 一、下载SDK Tools 地址&#xff1a;AndroidDevTools - Android开发工具 Android SDK下载 Android Studio…

macbook电脑如何永久删除app软件?

在使用MacBook的过程中&#xff0c;我们经常会下载各种App来满足日常的工作和娱乐需求。然而&#xff0c;随着时间的积累&#xff0c;这些App不仅占据了宝贵的硬盘空间&#xff0c;还可能拖慢电脑的运行速度。那么&#xff0c;如何有效地管理和删除这些不再需要的App呢&#xf…

C++面试宝典第27题:完全平方数之和

题目 给定正整数 n,找到若干个完全平方数(比如:1、4、9、16、...),使得它们的和等于n。你需要让组成和的完全平方数的个数最少。 示例1: 输入:n = 12 输出:3 解释:12 = 4 + 4 + 4。 示例2: 输入:n = 13 输出:2 解释:13 = 4 + 9。 解析 这道题主要考察应聘者对于…

JVM-运行时数据区程序计数器

运行时数据区 Java虚拟机在运行Java程序过程中管理的内存区域&#xff0c;称之为运行时数据区。《Java虚拟机规范》中规定了每一部分的作用。 程序计数器的定义 程序计数器&#xff08;Program Counter Register&#xff09;也叫PC寄存器&#xff0c;每个线程会通过程序计数器…

SpringCloud-Eureka原理分析

Eureka是Netflix开源的一款用于实现服务注册与发现的工具。在微服务架构中&#xff0c;服务的动态注册和发现是必不可少的组成部分&#xff0c;而Eureka正是为了解决这一问题而诞生的。 一、为何需要Eureka 在微服务架构中&#xff0c;服务之间的协同合作和高效通信是至关重要…

网络原理TCP/IP(1)

文章目录 端口号UDP协议 在网络通信中&#xff0c;协议非常重要 协议进行了分层 应用层就是对应着应用程序&#xff0c;是程序员打交道最多的这一层&#xff0c;调用系统提供的网络api写出来的代码都是属于应用层的 应用层有很多现成的协议&#xff0c;但是更多的还是程序员需要…

Redis篇之集群

一、主从复制 1.实现主从作用 单节点Redis的并发能力是有上限的&#xff0c;要进一步提高Redis的并发能力&#xff0c;就需要搭建主从集群&#xff0c;实现读写分离。主节点用来写的操作&#xff0c;从节点用来读操作&#xff0c;并且主节点发生写操作后&#xff0c;会把数据同…

RabbitMQ详解

RabbitMQ 1.初识MQ 1.1.同步和异步通讯 微服务间通讯有同步和异步两种方式&#xff1a; 同步通讯&#xff1a;就像打电话&#xff0c;需要实时响应。 异步通讯&#xff1a;就像发邮件&#xff0c;不需要马上回复。 两种方式各有优劣&#xff0c;打电话可以立即得到响应&a…

设计模式理解:单例模式+工厂模式+建设者模式+原型模式

迪米特法则&#xff1a;Law of Demeter, LoD, 最少知识原则LKP 如果两个软件实体无须直接通信&#xff0c;那么就不应当发生直接的相互调用&#xff0c;可以通过第三方转发该调用。其目的是降低类之间的耦合度&#xff0c;提高模块的相对独立性。 所以&#xff0c;在运用迪米特…

一文读懂转融通

最近多家公司都在讲解关于转融通要求。今天我们就来详细聊聊&#xff01; 转融通是一种证券借贷机制&#xff0c;它允许机构投资者在融资融券交易中借入或借出证券。 具体来说&#xff0c;机构投资者可以向券商借入证券&#xff0c;或者将持有的证券借给券商&#xff0c;以扩大…

诺奖经济学家称AI将取代STEM专业工作!Altman:人类无需工作,我给发钱

最近&#xff0c;2010年诺贝尔经济学奖得主&#xff0c;伦敦政治经济学院&#xff08;LSE&#xff09;教授Christopher Pissarides公开表态&#xff0c;在不远的未来&#xff0c;传统意义上的「数理化」学科知识和技能&#xff0c;都将会被AI取代。 这位劳动力市场经济学家警告…

mac检查CPU温度和风扇速度软件:Macs Fan Control Pro 1.5.17中文版

Macs Fan Control Pro for Mac是一款专业的电脑风扇控制工具&#xff0c;旨在帮助Mac用户有效控制电脑的风扇速度&#xff0c;提高电脑的运行效率和稳定性。 软件下载&#xff1a;Macs Fan Control Pro 1.5.17中文版 该软件支持多种风扇控制模式和预设方案&#xff0c;用户可以…

Vue源码系列讲解——虚拟DOM篇【一】(Vue中的虚拟DOM)

目录 1. 前言 2. 虚拟DOM简介 2.1什么是虚拟DOM&#xff1f; 2.2为什么要有虚拟DOM&#xff1f; 3. Vue中的虚拟DOM 3.1 VNode类 3.2 VNode的类型 3.2.1 注释节点 3.2.2 文本节点 3.2.3 克隆节点 3.2.4 元素节点 3.2.5 组件节点 3.2.6 函数式组件节点 3.2.7 小结 3…