【机器学习】机器学习知识点全面总结(监督学习+无监督学习)

news2024/10/6 18:25:14

目录:机器学习知识点全面总结

  • 一、监督学习
    • 1.1 单模型
      • 1.1.1 线性回归
      • 1.1.2 逻辑回归
      • 1.1.3 Lasso
      • 1.1.4 K近邻(KNN)
      • 1.1.5 决策树
      • 1.1.6 bp神经网络
      • 1.1.7 支持向量机(SVM)
      • 1.1.8 朴素贝叶斯
    • 1.2 集成学习
      • 1.2.1 Boosting
        • 1.2.1.1 GBDT
        • 1.2.1.2 Adaboost
        • 1.2.1.3 XGBoost
        • 1.2.1.4 LightGBM
        • 1.2.1.5 CatBoost
      • 1.2.2 Bagging
        • 1.2.2.1 随机森林
  • 二、无监督学习
    • 2.1 聚类
      • 2.1.1 K-means算法
      • 2.1.2 分层聚类
    • 2.2 降维
      • 2.2.1 PCA主成分分析
      • 2.2.2 SVD奇异值分解
      • 2.2.3 LDA线性判别

简单的归纳就是,是否有监督(supervised),就看输入数据是否有标签(label)。输入数据有标签,则为有监督学习;没标签则为无监督学习。

机器学习按照模型类型分为监督学习模型、无监督学习模型两大类:
在这里插入图片描述

一、监督学习

有监督学习通常是利用带有专家标注的标签的训练数据,学习一个从输入变量 X X X到输入变量 Y Y Y的函数映射。 Y = f ( X ) Y = f (X) Y=f(X),训练数据通常是 ( n × x , y ) (n×x,y) (n×x,y)的形式,其中 n n n代表训练样本的大小, x x x y y y分别是变量 X X X Y Y Y的样本值。

有监督学习可以被分为两类:

分类问题:预测某一样本所属的类别(离散的)。比如判断性别,是否健康等。

回归问题:预测某一样本的所对应的实数输出(连续的)。比如预测某一地区人的平均身高。

除此之外,集成学习也是一种有监督学习。它是将多个不同的相对较弱的机器学习模型的预测组合起来,用来预测新的样本。

1.1 单模型

1.1.1 线性回归

在这里插入图片描述
线性回归是指完全由线性变量组成的回归模型。在线性回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。

1.1.2 逻辑回归

在这里插入图片描述
用于研究 Y Y Y为定类数据时 X X X Y Y Y之间的影响关系情况,如果 Y Y Y为两类比如0和1(比如1为愿意和0为不愿意,1为购买和0为不购买),此时就叫二元逻辑回归;如果 Y Y Y为三类以上,此时就称为多分类逻辑回归。

自变量并不一定非要定类变量,它们也可以是定量变量。如果 X X X是定类数据,此时需要对 X X X进行哑变量设置。

1.1.3 Lasso

在这里插入图片描述
Lasso方法是一种替代最小二乘法的压缩估计方法。Lasso的基本思想是建立一个 L 1 L_1 L1正则化模型,在模型建立过程中会压缩一些系数和设定一些系数为零,当模型训练完成后,这些权值等于0的参数就可以舍去,从而使模型更为简单,并且有效防止模型过拟合。被广泛用于存在多重共线性数据的拟合和变量选择。

1.1.4 K近邻(KNN)

KNN做回归和分类的主要区别在于最后做预测时候的决策方式不同。KNN做分类预测时,一般是选择多数表决法,即训练集里和预测的样本特征最近的K个样本,预测为里面有最多类别数的类别。KNN做回归时,一般是选择平均法,即最近的K个样本的样本输出的平均值作为回归预测值。但它们的理论是一样的。

1.1.5 决策树

在这里插入图片描述
决策树中每个内部节点都是一个分裂问题:指定了对实例的某个属性的测试,它将到达该节点的样本按照某个特定的属性进行分割,并且该节点的每一个后继分支对应于该属性的一个可能值。分类树叶节点所含样本中,其输出变量的众数就是分类结果。回归树的叶节点所含样本中,其输出变量的平均值就是预测结果。

1.1.6 bp神经网络

在这里插入图片描述
bp神经网络是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。bp神经网络的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的分类错误率最小(误差平方和最小)。

BP 神经网络是一种多层的前馈神经网络,其主要的特点是:信号是前向传播的,而误差是反向传播的。具体来说,对于如下的只含一个隐层的神经网络模型:

BP 神经网络的过程主要分为两个阶段,第一阶段是信号的前向传播,从输入层经过隐含层,最后到达输出层;第二阶段是误差的反向传播,从输出层到隐含层,最后到输入层,依次调节隐含层到输出层的权重和偏置,输入层到隐含层的权重和偏置。

1.1.7 支持向量机(SVM)

支持向量机回归(SVR)用非线性映射将数据映射到高维数据特征空间中,使得在高维数据特征空间中自变量与因变量具有很好的线性回归特征,在该特征空间进行拟合后再返回到原始空间。

支持向量机分类(SVM)是一类按监督学习方式对数据进行二元分类的广义线性分类器,其决策边界是对学习样本求解的最大边距超平面。

1.1.8 朴素贝叶斯

在这里插入图片描述
在给定一个事件发生的前提下,计算另外一个事件发生的概率——我们将会使用贝叶斯定理。假设先验知识为 d d d,为了计算我们的假设 h h h为真的概率,我们将要使用如下贝叶斯定理:

在这里插入图片描述
该算法假定所有的变量都是相互独立的。

1.2 集成学习

集成学习是一种将不同学习模型(比如分类器)的结果组合起来,通过投票或平均来进一步提高准确率。一般,对于分类问题用投票;对于回归问题用平均。这样的做法源于“众人拾材火焰高”的想法。

集成算法主要有三类:Bagging,Boosting 和Stacking。本文将不谈及stacking。

在这里插入图片描述

1.2.1 Boosting

在这里插入图片描述

1.2.1.1 GBDT

GBDT 是以 CART 回归树为基学习器的 Boosting 算法,是一个加法模型,它串行地训练一组 CART 回归树,最终对所有回归树的预测结果加和,由此得到一个强学习器,每一颗新树都拟合当前损失函数的负梯度方向。最后输出这一组回归树的加和,直接得到回归结果或者套用 sigmod 或者 softmax 函数获得二分类或者多分类结果。

1.2.1.2 Adaboost

Adaboost给予误差率低的学习器一个高的权重,给予误差率高的学习器一个低的权重,结合弱学习器和对应的权重,生成强学习器。回归问题与分类问题算法的不同点在于误差率计算的方式不同,分类问题一般都采用0/1损失函数,而回归问题一般都是平方损失函数或者是线性损失函数。

1.2.1.3 XGBoost

XGBoost 是"极端梯度上升"(Extreme Gradient Boosting)的简称,XGBoost 算法是一类由基函数与权重进行组合形成对数据拟合效果佳的合成算法。由于 XGBoost 模型具有较强的泛化能力、较高的拓展性、较快的运算速度等优势, 从2015年提出后便受到了统计学、数据挖掘、机器学习领域的欢迎。

xgboost是GBDT的一种高效实现,和GBDT不同,xgboost给损失函数增加了正则化项;且由于有些损失函数是难以计算导数的,xgboost使用损失函数的二阶泰勒展开作为损失函数的拟合。

1.2.1.4 LightGBM

LightGBM 是 XGBoost 一种高效实现,其思想是将连续的浮点特征离散成 k 个离散值,并构造宽度为 k 的直方图。然后遍历训练数据,计算每个离散值在直方图中的累计统计量。在进行特征选择时,只需要根据直方图的离散值,遍历寻找最优的分割点;且使用带有深度限制的按叶子生长(leaf-wise)策略,节省了不少时间和空间上的开销。

1.2.1.5 CatBoost

catboost 是一种基于对称决策树算法的 GBDT 框架,主要解决的痛点是高效合理地处理类别型特征和处理梯度偏差、预测偏移问题,提高算法的准确性和泛化能力。

1.2.2 Bagging

在这里插入图片描述

1.2.2.1 随机森林

随机森林分类在生成众多决策树的过程中,是通过对建模数据集的样本观测和特征变量分别进行随机抽样,每次抽样结果均为一棵树,且每棵树都会生成符合自身属性的规则和分类结果(判断值),而森林最终集成所有决策树的规则和分类结果(判断值),实现随机森林算法的分类(回归)。

二、无监督学习

无监督学习问题处理的是,只有输入变量X没有相应输出变量的训练数据。它利用没有专家标注训练数据,对数据的结构建模。

2.1 聚类

将相似的样本划分为一个簇(cluster)。与分类问题不同,聚类问题预先并不知道类别,自然训练数据也没有类别的标签。

2.1.1 K-means算法

在这里插入图片描述
聚类分析是一种基于中心的聚类算法(K 均值聚类),通过迭代,将样本分到 K 个类中,使得每个样本与其所属类的中心或均值的距离之和最小。与分层聚类等按照字段进行聚类的算法不同的是,快速聚类分析是按照样本进行聚类。

2.1.2 分层聚类

在这里插入图片描述
分层聚类法作为聚类的一种,是对给定数据对象的集合进行层次分解,根据分层分解采用的分解策略。层次聚类算法按数据分层建立簇,形成一棵以簇为节点的树。如果按自底向上进行层次分解,则称为凝聚的层次聚类,比如 AGNES。而按自顶向下的进行层次分解,则称为分裂法层次聚类,比如 DIANA。一般用的比较多的是凝聚层次聚类。

2.2 降维

降维指减少数据的维度同时保证不丢失有意义的信息。利用特征提取方法和特征选择方法,可以达到降维的效果。特征选择是指选择原始变量的子集。特征提取是将数据从高纬度转换到低纬度。广为熟知的主成分分析算法就是特征提取的方法。

2.2.1 PCA主成分分析

在这里插入图片描述
主成分分析将多个有一定相关性的指标进行线性组合,以最少的维度解释原数据中尽可能多的信息为目标进行降维,降维后的各变量间彼此线性无关,最终确定的新变量是原始变量的线性组合,且越往后主成分在方差中的比重也小,综合原信息的能力越弱。

2.2.2 SVD奇异值分解

奇异值分解(SVD)是在机器学习领域广泛运用的算法,他不光可以用在降维算法中的特征值分解,还可以用于推荐系统,以及自然语言处理等领域,是很多算法的基石。

2.2.3 LDA线性判别

在这里插入图片描述
线性判别的原理是将样本投影到一条直线上,使得同类样本的投影点尽可能接近,不同样本的投影点尽可能远离;在对新样本进行分类时,将其投影到同样的直线上,再根据投影点的位置来确定新样本的类别。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

防火墙NAT配置实验

目录 一、NAT的种类 分为基于源IP的转换 基于目的的IP转换 外部用户找内部服务器 二、实验拓扑 登陆防火墙 三、配置NAT 配置接口 实验一 配置no-pat NAT 测试no-pat 实验二 NAPT配置 NAPT测试 实验三 配置Easy ip 实验四 配置NAT sever 测试Nat Sever 一、NAT的种…

C++类构造函数和析构函数

11.3 类构造函数和析构函数 构造函数:是为了在定义对象时自动初始化其成员变量的值。 构造函数没有返回值,也没有被声明为void类型;因此,构造函数没有声明类型。 11.3.1 声明和定义一个构造函数 构造函数原型:在这…

windows安装配置git和ToriseGit

目录1、下载安装git2、下载安装ToriseGit3、配置ToriseGit4、公司钥生成1、下载安装git 下载地址 安装:所有都按照默认,直接next就行 2、下载安装ToriseGit 下载地址 下图中两个都要下载,第二个是语言包 安装: 1、先安装主程…

C++行为型模式-职责链模式

1.1 基本概念 职责链模式(Chain of Responsibility Pattern):避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这类对象链接成一条链,并沿着这条链传递请求,直到有对象处理它为止。 1.2 …

Neural Collaborative Filtering论文笔记

ABSTRACT 深度神经网络在语音识别、计算机视觉和自然语言处理等方面取得了巨大的成果,但是对于推荐系统尚且缺少。虽然即使有用深度学习作为推荐,但是都是对建模起辅助作用。当涉及到用户和项目之间的交互,都会选择流行的矩阵分解&#xff0…

三、react组件的生命周期

目标 灵活掌握react组件的生命周期以及组件的活动过程。 能够灵活使用react的生命周期 知识点 react的类组件的生命周期分为三个阶段 实例期存在期销毁期 实例期在组件第一次被实例化的时候触发一次,在这个过程中会执行的生命周期函数如下: construct…

2、CKA-简单搭建K8s集群

基础环境: 主机IP资源系统主机名192.168.100.1104核8GCentos8K8s-master192.168.100.1204核8GCentos8K8s-node1192.168.100.1304核8GCentos8K8s-node2 推荐一个小网站:https://labs.play-with-k8s.com/ 其他的废话不多说,直接部署起来先~~ 部…

[附源码]Python计算机毕业设计 校园疫情防控系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

校企合作,人才共育|湖南工程学院第二期万应低代码实训营圆满收官

2022年11月11日,湖南工程学院第二期万应低代码实训营圆满收官,来自湖南工程学院计算机与通信学院(人工智能产业学院)的47位同学经过为期9天、共计51课时的培训课程,用出色的交付成果顺利结业。湖南工程学院计算机与通信…

最简单的git图解(最基本命令)

git clone: 这个命令用于将远程代码仓库克隆到本地,这是对任何项目进行开发前的第一步。 比如你本地本来并没有某个项目的代码仓库,此时随便找一个文件目录并进入cmd命令窗口,执行命令git clone [remote address],[remote addres…

春节静态HTML网页作业模板 传统节日文化网站设计作品 静态学生网页设计作业简单网页制作

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

python计算长方形面积 青少年编程电子学会python编程等级考试一级真题解析2022年6月

目录 python计算长方形面积 一、题目要求 1、编程实现 2、输入输出

TCP粘包和拆包

TCP粘包和拆包 (1)TCP是面向连接的,面向流的,提供可靠性服务。收发两端(客户端和服务端)都要有一一成对的socket,因此,发送端为了将多个发给接收端的包,更有效的发给对方…

【前端】Vue+Element UI案例:通用后台管理系统-代码总结

文章目录前言项目文件目录apimockServehome.jspermission.jsindex.jsmock.jsuser.jsassertcomponentsCommonAside.vueCommonHeader.vueCommonTags.vuedataechartsDataorder.jsuser.jsvideo.jsmockDatatableData.jsuserData.jsvideoData.jsCountData.jsMenuData.jsTableData.jsT…

389. 找不同(简单不一定知道)

问题描述: 给定两个字符串 s 和 t ,它们只包含小写字母。 字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。 请找出在 t 中被添加的字母。 示例 : 示例 1: 输入:s "abcd", t …

大学生抗疫逆行者网页作业 感动人物HTML网页代码成品 最美逆行者dreamweaver网页模板 致敬疫情感动人物网页设计制作

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

多维时序 | MATLAB实现ELM极限学习机多维时序预测(股票价格预测)

多维时序 | MATLAB实现ELM极限学习机多维时序预测(股票价格预测) 目录 多维时序 | MATLAB实现ELM极限学习机多维时序预测(股票价格预测)效果一览基本介绍程序设计结果输出参考资料效果一览 基本介绍

MySQL-僵持锁

前言 一个僵持锁(deadlocks)是指锁处于僵持的状态,持有锁的事务既得不到期望的资源,也不愿意释放其他事务需要的资源,也就是,多个锁相互之间都持有其他锁所需的资源,所有的事务都在等待各自需要…

防止重复下单(redis+数据库唯一索引requestId实现幂等)

文章目录为什么会重复下单如何防止重复下单利用数据库实现幂等利用Redis防重为什么会重复下单 为什么会重复下单,对于订单服务而言,就是接到了多个下单的请求,原因可能有很多,最常见的是这两种: 用户重复提交网络原因…

使用easygui制作app

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 使用easygui制作app [太阳]选择题 对于以下python代码表述错误的一项是? import easygui easygui.msgbox("我是msgbox","msgbox标题") choices["A",…