【期末总复习】机器学习(公式推导与代码实现)鲁伟

news2024/9/21 22:33:29

【第一章】机器学习预备知识

1、了解机器学习的发展简史

 2、复述出训练集、验证集和测试集的作用

训练集(Training set)

作用是用来拟合模型,通过设置分类器的参数,训练分类模型。后续结合验证集作用时,会选出同一参数的不同取值,拟合出多个分类器。

验证集(Cross Validation set)

作用是当通过训练集训练出多个模型后,为了能找出效果最佳的模型,使用各个模型对验证集数据进行预测,并记录模型准确率。选出效果最佳的模型所对应的参数,即用来调整模型参数。如svm中的参数c和核函数等。

测试集(Test set)

通过训练集和验证集得出最优模型后,使用测试集进行模型预测。用来衡量该最优模型的性能和分类能力。即可以把测试集当做从来不存在的数据集,当已经确定模型参数后,使用测试集进行模型性能评价。

3、阐述清楚回归任务和分类任务的差别

回归任务,是对连续值进行预测(比如多少);

分类任务,是对离散值进行预测(比如是不是属不属于,或者属于哪一类

 

4、熟练的阐述监督学习、非监督学习、半监督学习以及强化学习的相关概念

监督学习(supervised learning) 是指从标注数据中学习预测模型的机器学习问题。标注数据表示输入输出的对应关系,预测模型对给定的输入产生相应的输出。监督学习的本质是学习输入到输出的映射的统计规律。

无监督学习 (unsupervised learning) 是指从无标注数据中学习预测模型的机器学习问题。无标注数据是自然得到的数据,预测模型表示数据的类别、转换或概率。无监督学习的本质是学习数据中的统计规律或潜在结构。

半监督学习其不需要额外的“专家知识”,没有额外信息,仅利用未标记样本来提高泛化性能

强化学习C reinforcement learning) 是指智能系统在与环境的连续互动中学习最优行为策略的机器学习问题。假设智能系统与环境的互动基于马尔可夫决策过程(Markov decision process) ,智能系统能观测到的是与环境互动得到的数据序列。强化学习的本质是学习最优的序贯决策。

5、知道弱监督学习的三种类型,及每种类型的大致的标签质量

弱监督通常分为三种类型:不完全监督、不确切监督、不准确监督

不完全监督,指的是训练数据只有部分是带有标签的,同时大量数据是没有被标注过的。这是最常见的由于标注成本过高而导致无法获得完全的强监督信号的情况

不确切监督,即训练样本只有粗粒度的标签。例如,针对一幅图片,只拥有对整张图片的类别标注,而对于图片中的各个实体(instance)则没有标注的监督信息

不准确监督,即给定的标签并不总是真值。出现这种情况的原因有很多,例如:标注人员自身水平有限、标注过程粗心、标注难度较大。

6、复述出损失函数的定义以及意义,以及常见的损失函数:0/1 损失平方损失函数、对数损失函数和绝对损失函数的表达式

损失函数的作用衡量模型模型预测的好坏用来表现预测与实际数据的差距程度。

损失函数(loss function)是用来估量你模型的预测值f(x)与真实值Y的不一致程度,它是一个非负实值函数,通常使用L(Y, f(x))来表示,损失函数越小,模型的鲁棒性就越好。

 

7、掌握假设空间的基本概念

机器学习中可能的函数构成的空间称为“假设空间”

模型属于由输入空间到输出空间的映射的集合,这个集合就是假设空间(hypothesis space)。假设空间的确定意味着学习的范围的确定。

8、能够对过拟合、欠拟合现象进行分析并阐述其对应的解决方案

过拟合(overfitting):模型把训练集学得“太好”的时候,即把一些训练样本的自身特点当做了普遍特征;学习能力过强,以至于把训练样本所包含的不太一般的特性都学到了。

欠拟合(underfitting):模型学习能力不足,即训练集的基本特征都没有学习出来。学习能太差,训练样本的一般性质尚未学好。

9、熟练复述出机器学习的基本流程,并详细阐述每一步骤要进行的主要工作

 

 10、列出梯度下降法的公式, 并根据公式讲解影响梯度下降法的三要素

 

11、熟练陈述学习率对梯度下降法的影响

学习率太小的话,梯度下降过程会很缓慢。

学习率太大的话,梯度下降步子太大,可能永远无法到达最低点,无法收敛甚至偏离收敛。

 12、能够根据具体的 Y_Pred  Y_true 绘制出混淆矩阵列出TPTN、FN,FP 的英文全称,并对以上概念进行解释说明

TP:True Positive判定为真的(positive),且判定对了(true)

TN:True Negative判定为假的(negative),且判定对了

FP:False Positive判定为真的(positive),但判定错了

FN:False Negative判定为假的(negative),且判定错了

 13、根据混淆矩阵计算 Accuracy、Precision、Recall 以及 F1

 

14、解释 P-R 曲线中的横纵坐标, 复述根据 P-R 图判断模型优劣的方法

 

 

15、能够解释 AUC 值的具体涵义, 可以根据 ROC 曲线和 AUC 值判断模型的好坏,以及AUC值取值对应的模型优劣

 

 

16、熟记常见回归任务的评价指标,如 MSE、MAE、R-square 的数学公式

 

 17、能够复述出交叉验证的作用,画出示意图并讲解交叉验证过程

 

【第二章】线性回归

1、能够列出线性回归公式,y=wx+b+⊱并阐述每一个参数的具体含义

 2、了解线性回归和非线性回归的区别

3、阐述最小二乘法的概念及用途,并且可以列举出最小二乘法所使用的损失函数

最小二乘法,也叫做最小平方法(LEAST SQUARE METHOD),它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其他一些优化问题也可通过最小化能量或最小二乘法来表达。

4、复述最小二乘法为什么采用的计算方式不是算点到直线的距离 

 

5、推导使用正规方程求解线性回归参数 w*和b*的过程,了解 w;b 转换成为 W*的过程

  

 6、从多项式拟合的实例中,阐述过拟合发生的原因,以及为什么多 项式的系数越高,模型越复杂

算法模型为了更好的拟合样本集,使其模型的拟合能力超过远远超过了问题复杂度,也就是学习模型过于复杂

多项式系数越高,模型越复杂是因为多项式次数的增加会使得函数的拟合能力增强。随着多项式次数的增加,模型将能够更准确地拟合数据,但同时也会带来更高的过拟合风险。

7、了解正则化系数对于模型表现能力的影响,能够熟练的表达其在训练集合测试集相应指标的变化趋势

矩阵的1-范数可定义为矩阵中所有元素的绝对值之和,而矩阵的L2范数是指矩阵中各元素的平方和再开均方根的结果。

L1:在优化过程中,正则化项的存在能够使那些不重要的特征系数逐渐为零,从而保留关键特征,使得模型简化。

L2:最小化参数矩阵的每个元素,使其无限接近0但又不像L1那样等于0,也能降:低模型的复杂度。

8、了解多元线性回归的基本概念

用两个或两个以上的影响因素作为自变量来解释因变量的变化,这就是多元回归。当多个自变量与因变量之间是线性关系时,所进行的回归分析就是多元性回归

当数据集D中的样本Xi由多个属性进行描述,此时称为“多元线性回归”

9、能够推导出多元线性回归的正规方程当 XT X 为正定矩阵时求解 W* (此处是将权重 w 和偏置 b 组合成为 W)的过程及最后结果

 

【第三章】对数几率回归

1、复述分类任务的具体输出

复述分类任务的具体输出是根据输入的文本,判断文本属于哪个类别,并输出该类别的标签。通常会使用机器学习算法对已有的数据进行训练,然后对新的文本进行分类。输出结果可以是文本所属的类别,也可以是每个类别对应的概率。

2、能够列出对数几率回归 Logistic regression 的基本公式,并解 释每一部分的含义

 3、能够熟练的陈列出线性回归模型和对数几率回归模型的异同

4、能够绘制出 Sigmoid 函数的函数图像,并根据图像阐述 Sigmoid 函数的性质

 得到的连续的输出映射到[0,1]变为概率值

 5、阐述对数几率回归模型对某一具体问题的求解过程

 

6、了解最大似然的基本概念和思想

核心:想办法让观察样本出现的概率最大 

7、能够推导出交叉熵损失的具体表达式并阐述交叉熵损失函数的具体涵义

 y是真实的标签值(正类值为1,负类值为0),y`是预测的概率值(y·∈(0,1)).它表征真实样本标签和预测概率之间的差值

8、能够解释为什么对数几率回归不能使用均方误差作为损失函数

 9、了解多分类对数几率回归模型采用的阈值激活函数,并能列出其表达式

 

 10、能够熟练的复述出 LDA 线性判别分析的基本思想

 

【第四章】回归模型拓展

1、能够列出 LASSO 回归的公式,解释公式中||w||1 的含义

 

其中||w||1即为矩阵的1-范数,入为1-范数项的系数。

2、能够从正规方程角度和正则化角度解释 LASSO 回归的作用

正则化角度:

LASSO回归是在线性回归的损失函数后面加一个L1正则化项

L1:距阵中所用元素的绝对值之和。使那些不重要的特征系数逐渐为0,从而保留关键特征,使模型简化。

正规方程角度:

LASSO回归的不同之处在于它使用L1正则化项对参数进行约束。通过修改线性回归模型的优化函数,LASSO回归可以在高维数据集中更好地处理特征选择问题。

3、了解矩阵范数的基本概念,知道常用的 1 范数和 2 范数的计算方法

4、解释为什么 LASSO 回归为什么不能使用梯度下降法进行优化

LASSO 回归不能使用梯度下降法进行优化的原因是 L1 正则化项不是可微的,它是由绝对值函数构成的,这使得通过梯度下降法进行优化变得困难。相反,LASSO 回归通常使用坐标下降或者最小角回归等算法进行优化。 

5、结合图 4-2 阐述坐标下降法的基本过程

6、能够复述 LASSO 回归使用 Numpy 建模的基本流程

 

7、能够结合图 4-1 解释 LASSO 回归为什么特征参数会被压缩到 0

 

8、能够列出 Ridge 回归的公式,解释公式中||w||2 的含义

 

9、能够从正规方程角度和正则化角度解释 Ridge 回归的作用

正规方程角度:

岭回归是对线性回归模型的正规方程进行修改,目的是使模型在解决过度拟合问题时更加稳定。与标准线性回归模型不同的是,岭回归在解决矩阵无法求逆的情况下,并通过添加一个偏置项使模型更具可解释性,有效地解决了多重共线性问题。

正则化角度:

Ridge回归是使用L2作为惩罚项改造线性回归损失函数模型。

L2:距阵中所用元素的平方和再求均方根。最小化参数矩阵的每个元素,使其无限接近于0但又不像L1那样等于0

 10、结合图 4-4 阐述 Ridge 求解参数的过程,以及是怎样使得参数尽可能接近于 0 的

 

【第六章】KNN

1、熟悉复述 KNN 算法对数据进行分类的思想,能对照下图说出新来实例点 Xu 的分类过程

k近邻法(k-nearest neighbor,k-NN)是一种基本分类与回归方法。 k近邻法的输入为实例的特征向量对应于特征空间的点;输出为实例的类别,可以取多类。 k近邻法假设给定一个训练数据集,其中的实例类别已定。分类时,对新的实例,根据其k个最近邻的训练实例的类别,通过多数表决等方式进行预测。因此,k近邻法不具有显式的学习过程。

2、能详细的复述 KNN 算法的过程:12345

对未知类别属性的数据集中的每个点依次执行以下操作:

①计算已知类别数据集中的点与当前点之间的距离;

②按照距离递增次序排序;

③选取与当前点距离最小的k个点;

④确定前k个点所在类别的出现频率;

⑤返回前k个点出现频率最高的类别作为当前点的预测分类

 3、熟练记忆 KNN 算法的三要素及其具体涵义

三要素:距离度量方式、k值选择、分类决策规则

即:距离待预测点的邻居的个数K样本点之间距离的计算方式决策函数的选择

4、列出闵式距离的公式,并阐述曼哈顿距离、欧式距离和切比雪夫距离公式中对应 P 的取值

5、能够结合二维空间的坐标图,找出曼哈顿距离、欧式距离和切比雪夫距离对应的部分

6、阐述 k 值选取对模型产生影响、对于学习误差和近似误差产生的影响等

如果选择较小的K值:

“学习”的近似误差会减小,但“学习”的估计误差会增大,噪声敏感 K值的减小就意味着整体模型变得复杂,容易发生过拟合.

如果选择较大的K值:

减少学习的估计误差,但缺点是学习的近似误差会增大. K值的增大就意味着整体的模型变得简单.

 7、熟练阐述如何根据交叉验证筛选出合适的 k 值

在交叉验证中,我们将数据集分为 k 个部分,每次取其中一个部分作为验证集,其余部分作为训练集。对于每个 k 值,重复上述流程并计算模型的平均误差。选择误差最小的 k 值作为模型参数。因此,可以根据最小错误来筛选出合适的 k 值。

8、了解分类决策规则

k 近邻法中的分类决策规则往往是多数表决,即由待分类样本的 k 个邻近分类样本中的多数类决定它的类。

 9、了解 KNN 和 K-Means 的对比差别

【第八章】神经网络

1、了解 MP 神经元模型的基本结构

2、能建立感知机的数学模型,并根据数学模型阐述感知机的基本原理

3、建立感知机模型中的损失函数,并说明推导过程

 4、复述出误分类的条件

5、能够根据感知机的模型对超平面的相关参数进行解释

 6、述解决感知机不能解决异或(非线性可分问题)的思路

对于线性不可分的情况,在感知机的基础上一般有两个处理方向,其中一个就是神经网络模型。这里的神经网络模型也称多层感知机(muti-layer perception,MLP),它与单层感知机在结构上的区别主要在于MLP多了若干隐藏层,这使得神经网络能够处理非线性问题。一个两层网络(多层感知机)。

7、依据神经网络的结构图,讲解神经网络的结构

 8、区分神经网络中隐藏层数量和隐藏层大小

隐藏层数量指的是神经网络中隐藏层的数量,即在输入层和输出层之间的中间层的数量。隐藏层大小则是指每个隐藏层中神经元的数量。在神经网络中,较多的隐藏层数量和更大的隐藏层大小通常可以增强网络的表达能力,提高其学习和预测的准确率。但是,过多的隐藏层或者过大的隐藏层大小可能会导致网络过度拟合和过度复杂化,而影响其泛化能力和性能表现。

9、了解神经网络中的三大概念

三大概念:反向传播、梯度下降、损失函数

神经网络训练的最基本的思想就是:先“猜”一个结果,称为预测结果 y_hat,看看这个预测结果和事先标记好的训练集中的真实结果 y_true 之间的差距,然后调整策略,再试一次,这一次就不是“猜”了,而是有依据地向正确的方向靠近。如此反复多次,一直到预测结果和真实结果之间相差无几,亦即 |y_hat-y_true|→0,就结束训练。 在神经网络训练中,我们把“猜”叫做初始化,可以随机,也可以根据以前的经验给定初始值。即使是“猜”,也是有技术含量的。

10、并述神经网络的训练思想

神经网络的训练思想是通过反向传播算法来调整神经元之间的连接权重,使得神经网络能够拟合出数据的模式和规律。具体来说,神经网络会根据输入数据以及其对应的标签,计算出每个神经元的输出值,然后根据损失函数来评估网络的预测结果和真实结果的差距,最后利用反向传播算法来更新权重以降低损失函数值,进而优化整个神经网络模型。

11、能够画出常见激活函数的图像如阶跃函数、Sigmoid 函数、Yanh 函数、ReLu 函数

 

12、描述计算机视觉的三大任务及卷积神经网络的发展历程

计算机视觉处理的三大任务:分割、定位、检测

早期神经网络,经典分类网络,ImageNet与经典分类网络,后ImageNet时代经典网络

 

 

 

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

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

相关文章

chatgpt赋能python:Python教程:求反向位置的字母

Python教程:求反向位置的字母 在这篇文章中,我们将介绍如何使用Python编程语言来找到给定字符串中的反向位置的字母。这是一个有趣的编程问题,特别是对于那些喜欢解决有趣问题的人来说,同时本文也将从SEO的角度来讲解如何优化文本…

LNMP搭建

一、编译安装nginx1.1 关闭防火墙,将安装nginx所需软件包传到/opt目录下并解压1.2 安装依赖包1.3 创建运行用户与组1.4 编译安装Nginx1.5 检查配置文件是否配置正确,并启动nginx服务 二、安装 MySQL 服务2.1 安装Mysql环境依赖包2.2 创建运行用户2.3 编译…

前端Vue自定义简单好用商品分类列表组件 侧边栏商品分类组件

前端Vue自定义简单好用商品分类列表组件 侧边栏商品分类组件 &#xff0c; 下载完整代码请访问uni-app插件市场地址&#xff1a;https://ext.dcloud.net.cn/plugin?id13148 效果图如下&#xff1a; # cc-defineCateList #### 使用方法 使用方法 <!-- data:商品列表数组…

C专家编程 —— 链接的思考

文章目录 编译器的作用动态链接和静态链接动态链接动态链接的优点 函数库链接的几个小秘密 编译器的作用 通常编译器被氛围六七个小的程序&#xff1a; C预处理器&#xff0c;得到main.i文件前端做语法语义分析&#xff0c;然后后端生成汇编的指令代码main.s文件优化器可以放…

Java-API简析_java.lang.SecurityManager类(基于 Latest JDK)(浅析源码)

【版权声明】未经博主同意&#xff0c;谢绝转载&#xff01;&#xff08;请尊重原创&#xff0c;博主保留追究权&#xff09; https://blog.csdn.net/m0_69908381/article/details/131346082 出自【进步*于辰的博客】 其实我的【Java-API】专栏内的博文对大家来说意义是不大的。…

【Python 基础篇】Python学生管理系统

文章目录 引言一、系统设计与功能分析二、系统设计与实现三、系统应用示例四、总结 引言 学生管理系统是一个常见的应用程序&#xff0c;它可以帮助学校、教育机构或教师管理学生的信息。本文将介绍如何使用面向对象编程思想&#xff0c;利用Python开发一个学生管理系统。系统…

源码编译 DolphinScheduler 1.3.9 海豚调度,修改Hadoop、Hive组件版本兼容

大前提&#xff1a; maven3 jdk8 环境 maven 私服换成国内镜像&#xff0c;推荐阿里云 maven 镜像 maven-3.6.3\conf\settings.xml <mirrors><mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共仓库</name&g…

Android 13(T) - binder阅读(1)- binder driver

1 总览 想要使用binder完成进程间通信&#xff08;IPC&#xff09;或者完成远程过程调用&#xff08;RPC&#xff09;&#xff0c;那么我们需要有如下三个要素&#xff1a; 源&#xff1a;即调用者&#xff08;Client&#xff09;目的&#xff1a;即服务提供者&#xff08;Se…

win10 64位系统下载、安装nodejs(图文教程)

windows电脑下载、安装nodejs是很容易的&#xff0c;参考下面的图文教程&#xff0c;很快就能搞定下载安装. 1&#xff0c;下载nodejs 下载地址&#xff1a;https://nodejs.org/en/download/ 2&#xff0c;安装nodejs 点击安装包&#xff0c;一路下一步 3&#xff0c;验证…

设计模式—责任链模式

一、待解决问题&#xff1a; 减少代码中 if else 语句&#xff0c;降低代码圈复杂度或深度&#xff0c;增强可读性。 1、需求背景&#xff1a; 采购订单创建&#xff0c;需要验证采购员、物料、供应商、供应商的银行账号等信息。如采购员权限到期、或供应商失效等问题&#xff…

python机器学习——机器学习相关概念 特征工程

目录 机器学习特征工程1.特征抽取2.特征处理2.1 归一化&#xff1a;传统精确小数据2.2 标准化&#xff1a;大多数情况 3.数据降维3.1特征选择3.2主成分分析PCA 案例&#xff1a;超市订单分析 机器学习 监督学习&#xff1a;输入数据有特征有标签&#xff0c;即有标准答案 分类&…

chatgpt赋能python:Python求累加求和指南

Python求累加求和指南 Python是一种简单而强大的编程语言&#xff0c;从事编程工作的人大多都对它有一定的了解。它具有开发复杂应用程序的强大功能&#xff0c;同时也可以被用作数据处理和分析等用途。其中一个最常见的任务就是累加求和&#xff0c;今天我们将介绍如何在Pyth…

Redis 集合相关命令

Redis 支持多种数据结构&#xff0c;比如 字符串、列表、集合、有序集合 和 哈希 等数据结构。本次我整理了关于 集合 相关的命令&#xff0c;也就是关于 Sets 相关的命令&#xff0c;如下图。 上图中用红色圈中的部分&#xff0c;就是关于 集合 相关的命令。如果想要在 Redis …

JDBC小记——基础入门

目录 JDBC概念 JDBC入门 1. 导入数据库的驱动jar包 2. 加载驱动jar包 3. 获取连接对象 4. 获取操作对象 5.执行SQL语句 6.释放资源 IDEA连接数据库 结果集对象 登录练习 JDBC概念 Java DataBase Connectivity 即 Java数据库连接 JDBC&#xff0c;其实就是Java定义…

第7章 Scala集合

第7章 Scala集合 7.1 简介 ​ ​ scala.collection.immutable ​ scala.collection.mutable ​ 7.2 数组 ​ 不可变数组 package chapter07object Test01_ImmutableArray {def main(args: Array[String]): Unit {// 1. 创建数组val arr: Array[Int] new Array[Int](10…

【AUTOSAR】AUTOSAR开发工具链(二)----TASKING库的封装

1、集成工程 步骤&#xff1a; 拷贝模块代码&#xff1a; 将源工程的所有模块代码拷贝到库工程&#xff0c;将源工程拷贝一份&#xff0c;并删除不必要的文件作为释放工程&#xff0c;完成结果如下图&#xff1a; 源工程&#xff08;左&#xff09;VS库工程&#xff08;中&am…

[CUDA][Ubuntu]如何卸载cuda和cudnn和nvidia driver

百度有很多牛鬼蛇神的办法&#xff0c;试了一晚上&#xff0c;都不行。 包括&#xff1a;通过安装方式卸载&#xff0c;我tm根本不知道当初这个机器是怎么安装的cuda&#xff0c;我怎么卸载&#xff1f;&#xff1f;&#xff1f; 通过删除文件夹和自带uninstall程序&#xff…

安卓蓝牙协议数据包格式

本文解析蓝牙传输的数据包格式&#xff0c;目的是对蓝牙的各个层次的协议有更深的理解。 bit数据流格式 在讲数据报文之前&#xff0c;必须了解协议中对数据的BIT排序的规定&#xff0c;在协议中规定数据包或者PDU都是以Little Endian format(小端模式)存放&#xff0c;也就是…

数据库信息速递 - 将可观测性带到现代数据堆栈 (译)

开头还是介绍一下群&#xff0c;如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题&#xff0c;有需求都可以加群群内有各大数据库行业大咖&#xff0c;CTO&#xff0c;可以解决你的问题。加群请联系 liuaustin3 &#xff0c;在新加的朋友会分到2群&#xff08;共…

Layui基础入门

一、引言 1.1 介绍 官网&#xff1a;<https://www.layui.com/ > 这个不维护了 看下面这个 https://www.layuiweb.com/ 在官网首页&#xff0c;可以很方便的下载LayUI LayUI 是一款经典模块化前端 UI 框架&#xff0c;我们只需要定义简单的HTML、CSS、JS即可实现很复杂的前…