机器学习知识点复习 上(保研、复试、面试)百面机器学习笔记

机器学习知识点复习上

  • 一、特征工程
    • 1. 为什么需要对数值类型的特征做归一化?
    • 2. 文本表示模型
    • 3. 图像数据不足的处理方法
  • 二、模型评估
    • 1.常见的评估指标
    • 2.ROC曲线
    • 3.为什么在一些场景中要使用余弦相似度而不是欧氏距离?
    • 4.过拟合和欠拟合
  • 三、经典算法
    • 1.支持向量机SVM
    • 2.逻辑回归
    • 3.决策树
  • 四、降维
    • 1.主成分分析( Prinal Components Analysis, PCA )降维中最经典的方法
    • 2.线性判别分析LDA(有监督,对数据降维)

一、特征工程

1. 为什么需要对数值类型的特征做归一化?

(1)对数值类型的特征做归一化可以将所有的特征都统一到个大致相同的数值区间内;
(2)可以加快梯度下降收敛的速度,归一化后让等高线的分布更加均匀在一个范围内,类似于一个圆,减少求解过程中参数寻优的震荡,更加快找到最优解。
在这里插入图片描述

2. 文本表示模型

  • 词袋模型( Bag of Words,把每篇文章看成一袋子词,忽略顺序,用频率估量单词重要性) ;
  • TF-IDF (Term Frequency-Inverse Document Frequency );
  • 主题模型( Topic Model ,从文本库中发现有代表性的主题,计算主题分布);
  • 词嵌入模型( Word Embedding ,是将每个词都映射成低维空间上的K维向量) Word2Vec 是目前最常用的词嵌入模型之 一。Word2Vec 实际是一种浅层的神经网络模型, 有两种网络结构,分别是 CBOW (Continues Bag of Words )和 Skip-gram。

3. 图像数据不足的处理方法

(1)一定程度内的随机旋转、平移、缩版、裁剪、填充、左右翻转等,这些变换对应着同个目标在不同角度的观察结果。
(2)对图像中的像素添加躁声扰动,比如椒盐噪声、高斯白噪声等。
(3)颜色变换。
(4)改变图像的亮度、清晰度、对比度、锐度等。
在这里插入图片描述

二、模型评估

1.常见的评估指标

准确率( Accuracy ),精确率( Precision ),召回率( Recall ),均方根误差(Root Mean Square Error, RMSE)。F1 score ROC 曲线也能综合地反映一个排序模型的性能。
F1 score 是精准率和召回率的调和平均值
在这里插入图片描述

RMSE 能够很好地反映回归模型预测值与真实值的偏离程度。但在实际问题中,如果存在个别偏离程度非常大的离群点( Outlier )时,即使离群点数 非常少,也会让 RMSE 指标变得很差。可以使用平均绝对百分比误差( Mean Absolute Percent Error, MAPE)相比 RMSE, MAPE 相当于把每个点的误差进行了归一化,降低了个别离群点带来的绝对误差的影响。
在这里插入图片描述
在这里插入图片描述

2.ROC曲线

ROC 曲线,曲线下的面积( Aera Under Curve, AUC) ;P-R曲线

  • ROC 曲线的横坐标为假阳性率( False Positive Rate, FPR ),纵坐标为真阳性率( True Positive Rate, TPR)①真阳性(True Positive,TP):样本的正例被预测为正例,预测正确;②假阳性(False Positive,FP):样本的负例被预测成正例,预测错误。AUC指的是 ROC 曲线下的面积大小,AUC越大,说明分类器越可能把真正的正样本排在前面 分类性能越好。
  • 在样本不均衡时,选择ROC曲线能更好的反映模型本身好坏,适用场景多。(当 负样本的分布发生变化时, ROC 曲线的形状能够基本保持不变,而P-R曲线的形状一般会发生较剧烈的变化)
    在这里插入图片描述

3.为什么在一些场景中要使用余弦相似度而不是欧氏距离?

(1)欧氏距离体现数值上的绝对差异,而余弦相似度体现方向上的相对差异。
(2)欧式距离的数值受维度的影响,范围不固定。余弦相似度更关注相对差异,即向量之间的角度关系。不论是在高维还是低维空间,依然保持“相同时为1,正交时为0,相反时为-1”的性质。
(3)例如,用户A(1,0)和用户B(0,1),采用欧氏距离会很小,采用余弦相似度会很大。如果想要表示用户之间的相对差异时,余弦相似度会更好。
再比如,用户A(1,10)和用户(1,100),采用欧氏距离会很大,采用余弦距离会很近。如果更关注数值绝对差异,使用欧氏距离会更好。

4.过拟合和欠拟合

过拟合:对训练数据拟合太过贴合,训练集上很好,测试集很差;
欠拟合:训练和预测都不好,没学到位。
在这里插入图片描述

  • 降低“过拟合”:
    (1)数据上,更多数据(扩充、数据增强、生成式对抗网络合成数据);
    (2)降低模型复杂度;
    (3)正则化,避免权值过大带来过拟合;
    (4)集成学习,集成多个模型。
  • 降低“欠拟合”:
    (1)添加新特征;
    (2)增加模型复杂度;
    (3)减小正则化系数。

三、经典算法

1.支持向量机SVM

SVM 模型推导,核函数,SMO (Sequential Minimal Optimization )算法
支持向量机(support vector machines, SVM)是一种二分类模型,①它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使它有别于感知机;②SVM还包括核技巧,这使它成为实质上的非线性分类器。
(SVM 实际上是在为找到木棒的最佳放置位置,使得两边的球都离分隔它们的木棒足够远。)
在这里插入图片描述

  • 对于任意线性可分的两组点, 它们在 SVM 分类的超平面上的投影都是线性不可分的。
  • 核函数的引入一方面减少了我们计算量,另一方面也减少了我们存储数据的内存使用量。常用核函数有:线性核函数、多项式核函数、高斯核函数

优点:

  • 数学理论支持,可解释性强;
  • 采用核技巧之后,可以处理非线性分类/回归任务。

缺点:

  • 训练时间长。
  • 模型预测时,预测时间与支持向量的个数成正比。当支持向量的数量较大时,预测计算复杂度较高。

因此支持向量机目前只适合小批量样本的任务,无法适应百万甚至上亿样本的任务。

2.逻辑回归

逻辑回归,线性回归,多标签分类, Softmax

  1. 逻辑回归处理的是分类问题,分类问题是指因变量是离散的,比如二分类(0或1),多分类(A,B,C等)。
    线性回归处理的是回归问题,回归问题是指因变量是连续的,比如房价,身高等。这是两者的最本质的区别。
  2. 线性回归使用最小二乘法(使所有点到直线的距离之和最小,就是使均方误差最小化)作为参数估计方法,逻辑回归使用极大似然法(极大似然函数反映了参数与数据的匹配程度,越大说明越匹配,越有可能是真实的参数值)作为参数估计方法。

线性回归的模型如下:
在这里插入图片描述
线性回归得出的模型不一定是一条直线,在只有一个变量的时候,模型是平面中的一条直线;有两个变量的时候,模型是空间中的一个平面;有更多变量时,模型将是更高维的。

  1. 非线性回归: 非线性回归模型的形式可以是任意的非线性函数,例如多项式函数 (至少有一个变量的指数不是1)、指数函数、对数函数等。它的形态是曲线形态。非线性回归模型假设因变量与自变量之间的关系是非线性的。

问题:当使用逻辑回归处理多标签的分类问题时,有哪些常见做法,分别应用于哪些场景,他们之问又有怎样的关系?
当存在样本可能居于多个标签的情况时,我们可以训练k个二分类的逻辑回归分类器。第i个分类器用以区分每个样本是否可以归为第i类,训练该分类器时,需要把标签重新整理为“第i类标签”与“非第i类标签”两类。

3.决策树

决策树的决策过程,例子如下:
在这里插入图片描述
将决策树应用集成学习的思想 以得到随机森林、梯度提升决策树等模型。
决策树的生成包含了特征选择、树的构造、树的剪枝三个过程。

问题1:决策树有哪些常用的启发函数?

  1. ID3一一最大信息增益
    只能处理离散型变量;
    用于分类任务;
    对样本特征缺失值比较敏感;
    通过剪枝来权衡树的准确性与泛化能力。
  2. C4.5一一最大信息增益比
    处理连续型变量,将连续型变量转换为多个取值区间的离散型变量;
    用于分类任务;
    通过剪枝来权衡树的准确性与泛化能力。
  3. CART一一最大基尼指数( Gini )
    构建是每次都会对特征进行二值划分,很好适用于连续型变量;
    分类、回归都可以;
    用全部数据发现所有可能的树结构进行对比。

问题2:如何对决策树进行剪枝?
决策树很可能会过拟合,需要剪枝来提升模型泛化能力。
剪枝两种方法:预剪枝和后剪枝。

  • 预剪枝: 在生成决策树的过程中提前停止树的增长。
    结点拓展之前,若计算不能带来模型能力提升,不再生长子树。
    简单高效,适合解决大规模问题。不易估计何时停止树的生长,有欠拟合风险。

  • 后剪枝: 先生成完全的决策树,再从底层向上计算是否剪枝。
    剪枝过程将子树删除,用一个叶子结点替代。
    可以得到泛化能力更强的决策树,但时间开销会更大。

四、降维

1.主成分分析( Prinal Components Analysis, PCA )降维中最经典的方法

问题1:如何定义主成分?从这种定义出发,如何设计目标函数使得降维达到提取主成份的目的?针对这个目标函数,如何对 PCA 问题进行求解?
PCA 旨在找到数据中的主成分,并利用这些主成分表征原始数据从而达到降维的目的。PCA 的求解方法如下:
在这里插入图片描述
问题2:PCA 求解的真实是最佳投影方向,即一条直线,这与数学中线性回归问题的目标不谋而合,能否从回归的角度定义 PCA 的目标并相应地求解问题呢?
从最小化回归误差来定义和求解 PCA 的问题。这时,我们可以把 PCA 看作是一种无监督的回归方法,它没有区分输入变量和输出变量,而是将所有的变量都视为同等重要的。我们的目标是找到一个 d 维超平面,使得数据点到这个超平面的距离平方和最小。这相当于用一个低维的线性模型来拟合数据的分布,从而达到降维的目的。

2.线性判别分析LDA(有监督,对数据降维)

问题:LDA、PCA 作为经典的降维算法,他们的不同是?

  1. 目标不同: ①PCA 选择的是投影后数据方差最大的方向,也就是保留了数据的最大信息量。PCA 是无监督的,它不考虑数据的类别标签,只是用主成分来表示原始数据,去除冗余的维度,达到降维的目的。②LDA 选择的是投影后类内方差小、类间方差大的方向,也就是使得数据的判别性最强。LDA 是有监督的,它利用了数据的类别标签信息,为了找到数据中具有判别性的维度,使得原始数据在这些方向上投影后,不同类别尽可能区分开。
  2. 结果不同: ①PCA 降维后的数据可能会混合不同类别的数据,导致分类效果不佳。②LDA 降维后的数据能够较好地保留类别信息,提高分类效果。
  3. 应用不同: ①PCA 主要在无监督的任务中使用,例如数据压缩、降噪、可视化等。②LDA 主要在有监督的任务中使用,例如分类、特征选择等。一般来说,对于无监督的任务,可以使用 PCA 先进行降维,过滤掉一些噪声和冗余的特征。对于有监督的任务,可以使用 LDA 对数据进行降维,提取出具有判别性的特征。

一个基本的原则一一对无监督的任务使用 PCA 进行降维,对有监督的则应用 LDA。

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

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

相关文章

✅ Windows11 系统 I 卡独显 A770 安装 深度学习 Pytorch 环境

📋 文献参考 这里非常感谢知乎上的 ‘丢丢’ 的[**Windows系统下英特尔独显Pytorch的历程**] 为我提供了一开始的 I 卡安装想法!但是文中并未介绍如何进行额外的环境变量操作问题,导致很多软件直接安装至系统盘,占用系统盘空间&am…

19.相机,棱镜和光场

一、成像方法 Imaging Synthesis Capture 1.Synthesis(图形学上)合成:比如之前学过的光线追踪或者光栅化 2.Capture(捕捉):把真实世界存在的东西捕捉成为照片 二、相机 1.小孔成像 利用小孔成像的相…

【数据结构】矩阵的压缩存储

矩阵的压缩存储 5.1 普通矩阵的存储 用二维数组存储 分为行优先和列优先: 行优先:优先存放一行的数据。 列优先:优先存放一列的数据。 注意下标是从0还是1开始的! 5.2 对称矩阵的存储 对称矩阵定义 若n阶方阵中任意一个元素 a i …

Sqoop “hcatalog does not exist!” 提示信息消除方法

sqoop运行的时候老是有这个报错提示,看着可烦,解决消除一下 解决方法: 1、在$SQOOP_HOME/bin目录下面修改configure-sqoop文件 1)进文件夹 cd /training/sqoop-1.4.7/bin2)编辑文件 vi /configure-sqoop3&#xff…

K8s Pod控制器

目录 前言: 1.Deployment 查看控制器配置 查看历史版本 2.SatefulSet 安装CoreDNS,仅二进制部署环境需要安装CoreDNS 方法一 方法二 查看statefulset的定义 清单定义StatefulSet 创建pv 定义PV 创建statefulset 滚动更新 总结 扩展伸缩…

【MySQL | 第三篇】MySQL索引及两种索引分类方法总结

文章目录 3.MySQL索引及两种索引分类方法3.1索引的概念3.1.1相关定义3.1.2查询例子 3.2索引的底层3.2.1二叉树(1)满二叉树(2)完全二叉树(3)二叉查找树(4)二叉平衡树(AVL&…

HTML静态网页成品作业(HTML+CSS)——电影网首页网页设计制作(1个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有1个页面。 二、作品演示 三、代…

Vue3_2024_6天【回顾上篇watch常见的前三种场景】另两种待补

第一种情况:监视【ref】定义(基本数据类型) 1.引入watch2.格式:watch(基本数据类型数据,监视变化的回调函数) 注意点: 2.1.watch里面第一个参数,是数据~~【监视的基本类…

[Buuctf] [MRCTF2020] Xor

运行 1.查壳 32位exe文件,没有壳 2.用32位IDA打开 找到main函数,F5查看伪代码,但是这里会弹出一个窗口 函数分析失败!! 这里我在看别人的题解时发现一种玄学方式解决了这个问题 窗口里面弹出了一个地址401095&…

LVS+Keepalived 高可用负载均衡集群

一. 高可用集群的相关知识 1.1 高可用(HA)集群和普通集群的比较 ① 普通集群 普通的群集的部署是通过一台度器控制调配多台节点服务器进行业务请求的处理,但是仅仅是一台调度器,就会存在极大的单点故障风险,当该调度…

蓝桥杯备赛之二分专题

常用的算法二分模板 1. 在数组a[]中找大于等于x的第一个数的下标 //int ans lower_bound(a, a n, x) - a //相当于下方 int l 0, r n - 1; while(l < r) {int mid l r >> 1;if(a[mid] > x) r mid;else l mid 1; } cout << r;2. 在数组a[]中找大于…

qml中toolbox控件、ComboBox控件、PlainText实现及美化

一. 内容简介 qml中toolbox控件、ComboBox控件、PlainText实现及美化 二. 软件环境 2.1vsCode 2.2Anaconda version: conda 22.9.0 2.3pytorch 安装pytorch(http://t.csdnimg.cn/GVP23) 2.4QT 5.14.1 新版QT6.4,&#xff0c;6.5在线安装经常失败&#xff0c;而5.9版本…

亚马逊运营要使用什么海外代理IP?

代理IP作为网络活动的有力工具&#xff0c;同时也是跨境电商的必备神器。亚马逊作为跨境电商的头部平台&#xff0c;吸引了大量的跨境电商玩家入驻&#xff0c;想要做好亚马逊&#xff0c;养号、测评都需要代理IP的帮助。那么应该使用什么代理IP呢&#xff1f;如何使用&#xf…

JS-02-javaScript快速入门

一、javaScript代码的编写位置 JavaScript代码可以直接嵌在网页的任何地方&#xff0c;但是一般&#xff0c;我们用如下编写方式。 1-1、直接写到HTML文件中 通常我们都把JavaScript代码放到<head>中&#xff0c;由<script>...</script>包含的代码就是Java…

【深度学习】1. 深度学习概述

感知器模型 人脑中的神经元:一个神经元通常具有多个树突&#xff0c;主要用来接受传入信息;而轴突只有一条&#xff0c;轴突尾端有许多轴突末梢可以给其他多个神经元传递信息。轴突末梢跟其他神经元的树突产生连接&#xff0c;从而传递信号。 而在计算机的神经网络中&#xff…

985硕的4家大厂实习与校招经历专题分享(part2)

我的个人经历&#xff1a; 985硕士24届毕业生&#xff0c;实验室方向:CV深度学习 就业&#xff1a;工程-java后端 关注大模型相关技术发展 校招offer: 阿里巴巴 字节跳动 等10 研究生期间独立发了一篇二区SCI 实习经历:字节 阿里 京东 B站 &#xff08;只看大厂&#xff0c;面试…

Mysql - is marked as crashed and should be repaired

概述 上周发生了一个Mysql报错的问题&#xff0c;今天有时间整理一下产生的原因和来龙去脉&#xff0c;Mysql的版本是5.5,发生错误的表存储引擎都是MyISAM,产生的报错信息是Table xxxxxx is marked as crashed and should be repaired。 定位问题 产生的后果是Nginx服务没有…

C++入门知识点

文章目录 一、C的域作用限定符1.1全局域1.2限定域作用范围 二、C的命名空间域2.1单个命名空间的变量访问和单个不同命名空间的相同变量名的访问2.2命名空间的嵌套调用 三、C的流插入、流提取操作符四、C的缺省参数4.1函数的全缺省4.1函数的部分缺省 五、C的函数重载5.1函数重载…

this关键字

this关键字 this 是 Java 的一个关键字&#xff0c;表示某个对象 this 可以出现在构造方法、实例方法中&#xff0c;但不可以出现在类方法中 出现在构造方法中&#xff0c;代表使用该构造方法创建的对象出现在实例方法中&#xff0c;代表正在调用该方法的当前对象 一、构造…

Docker-容器网络互联

目录 1 前言 2 常用指令 3 实现容器互联 3.1 自定义网络 3.2 让容器连接创建的网络 3.2.1 容器创建后连接网络 3.2.2 容器创建时连接网络 3.3 尝试使用容器名访问(测试) 1 前言 在默认情况下&#xff0c;docker中的容器都是连接到一个虚拟的网桥上的&#xff0c;这为独…