研究生课程:机器学习-期末复习
《机器学习》期末复习
选择题
各种分类
监督学习:贝叶斯分类器、支持向量机、Logistic回归、决策树、线性回归、最大熵、CRF
无监督学习:主成分分析、K-Means、高斯混合聚类、层次聚类
线性分类方法:感知机、线性鉴别分析、最小距离分类器
非线性分类方法:决策树、最近邻、集成学习、核SVM
线性分类器最佳准则:感知准则函数、支持向量机、Fisher准则
生成式模型:朴素贝叶斯、隐马尔可夫模型、高斯混合模型
判别式模型:支持向量机、线性分类器、神经网络、线性判别分析
回归
Logistic回归使用最大似然估计
回归问题和分类问题的区别:前者预测函数值为连续值,后者为离散值
最小二乘回归方法的等效回归方法:线性均值和正态误差的最大似然回归
正则化的回归分析,可以避免过拟合
假如使用一个较复杂的回归模型来拟合样本数据,使用岭回归,调试正则化参数λ,来降低模型复杂度。若λ较大时,偏差增大,方差减小
在线性回归中使用正则项,你发现解的不少coefficient都是0,这个正则项可能是L0-norm或L1-norm
LR模型的损失函数是交叉熵
在Logistic Regression 中,如果同时加入L1和L2范数,可以做特征选择,并在一定程度上防止过拟合
逻辑斯蒂回归没有利用回归的思想
共轭分布
二项式分布的共轭分布是Beta分布
多项式分布的共轭分布是Dirichlet分布
贝叶斯
- 以贝叶斯定理为基础
- 可以解决有监督学习的问题
- 可以用极大似然估计法解贝叶斯分类器
朴素贝叶斯分类器的特点是假设样本各维属性独立
最大似然估计没有考虑先验分布
对于正态密度的贝叶斯分类器,各类协方差矩阵相同时,决策函数为线性决策函数
下面关于贝叶斯分类器描述错误:是基于后验概率,推导出先验概率
朴素贝叶斯模型属于生成式模型
贝叶斯分类器参数估计的准则:最大高斯后验、最大beta后验、极大似然
错误:以贝叶斯估计的角度来看朴素贝叶斯时,其没有估计联合概率
以下模型中属于贝叶斯网络的有( BD )
A.马尔可夫随机场
B.隐马尔可夫模型
C.条件随机场
D.朴素贝叶斯分类器
SVM
支持向量机属于判别式模型
SVM的原理:最大间隔分类
SVM的算法性能取决于:核函数的选择、核函数的参数、软间隔参数C
支持向量机的对偶问题是凸二次优化
支撑向量:最大间隔支撑面上的向量
避免直接的复杂非线性变换,采用线性手段实现非线性学习的方法是:核函数方法
软间隔SVM的阈值趋于无穷:只要最佳分类超平面存在,它就能将所有数据全部正确分类
核函数并不是把特征映射到的空间维度越高越好
如果SVM模型欠拟合, 以下方法哪些可以改进模型:增大惩罚参数C的值,增大核系数(gamma参数)
聚类
密度聚类方法充分考虑了样本间的密度可达关系
混合高斯聚类使用了EM算法
k-means算法初始值不同,最终结果可能不同
k-means不适合处理非凸型数据
以下可用于聚类性能测量的评估方法:Jaccard系数、FM指数、Rand指数、DB指数
降维
主成分分析方法是一种降维方法
PCA在做降维处理时,优先选取中心化样本的协方差矩阵的最大特征值对应特征向量
可以用于特征降维的:SVD、PCA和LDA
不可以用于特征降维的:蒙特卡洛方法
特征降维带来的好处:节省数据通信开销、节省数据存储资源、加快模型计算速度
决策树
关于决策树节点划分指标描述正确的是信息增益越大越好
决策树不受数据归一化影响,SVM、神经网络、Logistic回归都会受影响
增加决策树的深度可能导致随机森林模型过拟合数据
我们想在大数据集上训练决策树, 为了使用较少时间, 我们可以减少树的深度,减少树的数量
集成学习
Bootstrap数据:有放回地从总共N个样本中抽样n个样本
集成学习中基分类器多样,差异大,学习效率通常越好,每个基分类器的正确率的最低要求50%以上
Bagging方法的特点:构造训练集时采用Bootstraping的方式
Boosting方法的特点:预测结果时,分类器的比重不同
随机森林方法属于Bagging方法
Adaboost算法:
- 是弱分类器的线性组合
- 提升树是以分类树或者回归树为基本分类器的提升办法
- 该算法实际上是前向分步算法的一个实现,在这个方法里,模型是加法模型,损失函数是指数损失,算法是前向分步算法。
Adaboost方法中,需要迭代调整的两个重要参数是:样本权重和分类器权重
深度学习
以下关于深度网络训练的说法正确的:
- 训练过程需要用到梯度,梯度衡量了损失函数相对于模型参数的变化率
- 损失函数衡量了模型预测结果与真实值之间的差异
- 训练过程基于一种叫做反向传播的技术
在训练神经网络时,如果出现训练error过高,增加训练数据不能大幅度降低训练error
Tanh可以导致梯度消失
ReLU在神经网络中引入了非线性
关于CNN,Pooling层用于减少图片的空间分辨率
卷积神经网络可以有多个卷积核,可以不同大小
GRU和LSTM的说法正确的是:GRU的参数比LSTM的参数少
与普通反向传播不同的是,BPTT会在每个时间步长内叠加所有对应权重的梯度
在RNN中,梯度裁剪可以较好地处理梯度爆炸问题
循环神经网络有反馈连接并常被用来处理序列数据
过拟合和欠拟合
数据增强会增加模型的欠拟合风险
过拟合现象中训练样本的测试误差最小,测试样本的正确识别率却很低
过拟合:训练误差小,测试误差大
容易引起过拟合:SVM算法中使用高斯核代替线性核
不容易引起过拟合:增加训练集量、减少神经网络隐藏层节点数、删除稀疏的特征
神经网络处理过拟合:Dropout、Batch Normalization、regularization
概率图模型
在HMM中,如果已知观察序列和产生观察序列的状态序列,那么可用极大似然估计直接进行参数估计
解决隐马模型中预测问题的算法是维特比算法
其他
K-NN最近邻方法在什么情况下效果好:样本较少但典型性较好
以下可行的最近邻分类的加速方案:分层搜索和训练样本缩减
线性鉴别分析:找到一个投影方向,使得类内距离最小,类间距离最大
KL散度是根据类概率密度构造的可分性判据
最大似然估计没有考虑先验分布
多层感知机方法中,可用作神经元的非线性激活函数:logistic 函数
在有限支撑集上,均匀分布的熵最大
已知均值和方差,高斯分布的熵最大
受限玻尔兹曼机属于概率图模型
余弦距离会侧重考虑向量的方向
除了EM算法,梯度下降也可求混合高斯模型的参数
下列哪个不属于常用的文本分类的特征选择算法(D)
A. 卡方检验值
B. 互信息
C. 信息增益
D. 主成分分析
解决样本类别不平衡的手段:欠采样、过采样、使用focal loss
对于k折交叉验证, 以下对k的说法正确的是:
A.k越大, 不一定越好, 选择大的k会加大评估时间
B.选择更大的k, 就会有更小的bias ,因为训练集更加接近总数据集
C.在选择k时, 要最小化数据集之间的方差
下列选项中,关于KNN算法说法不正确的是(D)
A.能找出与待测样本相近的K个样本
B.可以使用欧氏距离度量相似度
C.实现过程相对简单,但是可解释性不强
D.效率很高
73.关于特征预处理,下列说法中错误的是(B )
A.包含标准化和归一化
B.标准化在任何场景下受异常值的影响都很小
C.归一化利用了样本中的最大值和最小值
D.标准化实际上是将数据在样本的标准差上做了等比例的缩放操作
交叉验证不能够提升模型的准确率
76.EM算法(Expectation Maximization Algorithm)是机器学习领域的一个经典算法,下面关于EM算法的说法中不正确的有:(A)
A.EM算法属于一种分类算法
B.EM算法可用于隐马尔科夫模型的参数估计
C.EM算法可以分为E-step和M-step两步
D.EM算法可用于从不完整的数据中计算最大似然估计
将一个k分类问题分解成一对一问题时总共需要k(k-1)/2个分类器
在有限支撑集上,下面分布中熵最大的是均匀分布
在机器学习中,当模型的参数量大于样本量时参数估计使用梯度下降法
- GRU和LSTM的说法正确的是(D)
A. GRU通过output gate控制memory;
B. LSTM对memory不做控制,直接传递给下一个unit
C. GRU不对上一时刻的信息做任何控制;
D. GRU的参数比LSTM的参数少;
以下哪些算法, 可以用神经网络去构造( BD )
A.KNN
B.Logistic回归
C.决策树
D.最小二乘估计
简答题
原题目
试阐述LDA(线性鉴别分析)的分类思想
给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近,异类样例的投影点尽可能远离;
在对新样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来判断新样本的类别。
请简要介绍SVM的设计思想
答案:SVM是一个分类算法,它的目标为确定一个分类超平面,从而将不同类别的数据分隔开达到分类的目标。
当训练数据线性可分时,通过硬间隔最大化,学习一个线性的分类器,即线性可分支持向量机,又称为硬间隔支持向量机;
当训练数据近似线性可分时,通过软间隔最大化,也学习一个线性的分类器,即线性支持向量机,又称为软间隔支持向量机;
当训练数据线性不可分时,通过使用核技巧及软间隔最大化,学习非线性支持向量机。
试分析SVM对噪声敏感的原因
给定训练集,SVM最优决策边界由支持向量决定。
当增加噪声时,那么该噪声有极高的可能是含噪声训练集的一个支持向量,这意味着决策边界需要变。
简要介绍在深度神经网络中引入非线性激活函数的作用
不引入非线性激活函数的情况下,不管神经网络有多少层其输出都是输入的线性组合,与没有隐藏层的效果相当
在数据处理时,为什么通常要进行标准化处理
在实际问题中,我们使用的样本通常是多维数据,每一维对应一个特征,这些特征的量纲和数量级都是不一样的
这时需要对数据进行标准化处理,试所有的特征具有同样的尺度
试述将线性函数用作神经元激活函数的缺陷
如果单用线性函数作为激活函数,无论多少层的神经网络会退化成一个线性回归,不能处理非线性分类任务。
试述学习率的取值对神经网络训练的影响
如果学习率太低,每次下降的很慢,使得迭代次数非常多。
如果学习率太高,在后面迭代时会出现震荡现象,在最小值附近来回波动。
神经网络为什么会产生梯度消失,有什么解决方案
前面层上的梯度是来自于后面层上梯度的乘积。当存在过多的层次时,且激活函数的梯度小于1时,就会使前面层的梯度变得很小,更新速度过慢,导致梯度消失。
一种解决方案是使用Relu激活函数替换sigmoid,relu函数的梯度不会随着x的增大而变小,sigmoid在x取值较大时梯度趋近于0。
卷积核尺度和参数的计算
对3个32×32的特征图进行卷积层操作,卷积核10个5×5,Stride是1,pad为2,输出特征图的尺度是多少?卷积层的参数是多少?写出公式和结果。
输出尺度:(N+2P-F)/stride+1
卷积层的参数:(F×F×n+1)×N
答案:输出尺度( 32+2×2-5)/1+1 = 32
卷积层的参数 (5×5×3+1)×10=760
试析随机森林为何比决策树Bagging集成的训练速度更快
随机森林是Bagging算法的一个扩展变体,以决策树为基学习器构建Bagging集成,
Bagging在选择划分属性时需要考察结点的所有属性,而随机森林只需随机地考察一个属性子集
所以随机森林比决策树Bagging训练速度更快,泛化能力越强。
请给出L1范数和L2范数的计算方法及他们的使用场景。
L1范数为向量各个元素绝对值之和可以使权值稀疏,方便特征提取。
L2 范数为向量各个元素平方和的1/2次方可以防止过拟合,提升模型的泛化能力。
试述为什么基于L1范数可以进行特征选择。
基于L1范数的特征选择:不能直接设置最终选择特征的个数k;通过设置正则化系数λ来隐式控制k;
λ值越大,模型越关注稀疏性,得到的非零系数个数越少;
反之,非零稀疏个数越多;
可以设置一个选择特征个数的上限,通过设置不同λ值,得到满足要求的特征。
从有条件极值问题的角度来看,L1范数相当于将模型界空间限制在了L1-ball上,目标函数的等高线有很大的概率与坐标轴和边相交,这样的解具有稀疏性。
请指出数据聚类存在哪些挑战性问题
- 能够处理高维数据:在高维空间聚类更具挑战性,随着维数的增加,具有相同距离的两个样本其相似程度可以相差很远。对于高维稀疏数据,这一点更突出。
- 对噪声鲁棒:在实际中,绝大多数样本集都包含噪声、空缺、部分未知属性、孤立点、甚至错误数据。
- 具有约束的聚类:在实际应用中,通常需要在某种约束条件下进行聚类,既满足约束条件,以希望有高聚类精度,是一个挑战性问题。
- 对初始输入参数鲁棒:具有自适应的簇数判定能力,对初始聚类中心鲁棒。
- 能够解决用户的问题:聚类结果能被用户所理解,并能带来经济效益,特别是在数据挖掘领域。
描述主成分分析的主要步骤
- 数据标准化
- 计算协方差矩阵,求协方差的特征值和特征向量。
- 将特征值按照从大到小的顺序排序,选择其中最大的k个,然后将其对应的k个特征向量分别作为列向量组成特征向量矩阵。
- 将样本点投影到选取的特征向量上。
请描述机器学习中的分类任务
根据给定的训练集,其中,要求寻找上的决策函数 。
请给出你对泛化误差的理解
泛化误差 = 偏差+方差+噪声
偏差:度量了学习算法的期望预测与真实结果的偏离程度,刻画了学习算法本身的拟合能力
方差:度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响
噪声:表达了在当前任务上任何学习算法所能达到的期望泛化误差的下界,即刻画了学习问题本身的难度
模型评估过程中,欠拟合和过拟合现象是什么。
过拟合是指模型对于训练数据拟合呈过当的情况,反映到评估指标上,就是模型在训练集上的表现很好,但在测试集和新数据上的表现较差。
欠拟合是模型在训练和预测时表现都不好的情况。
说出几种降低过拟合和欠拟合的方法。
降低过拟合:
- 从数据入手,获得更多的训练数据。使用更多的训练数据是解决过拟合问题最高效的手段,因为更多的样本能够让模型学习到更多更高效的特征。当然,直接增加实验数据一般是很困难的,但是可以通过一定的规则来扩充训练数据。比如在图像分类的问题上,可以通过图像的平移、旋转、缩放等方式扩充数据,更进一步地,可以使用生成式对抗网络来合成大量的新训练数据。
- 降低模型复杂度。在数据较少时,模型过于复杂是产生过拟合的主要因素,适当降低模型复杂度可以避免模型拟合过多的采样噪声。例如,在神经网络模型中减少网络层数、神经元个数等;在决策树模型中降低树的深度、进行剪枝等。
- 正则化方法。给模型的参数加上一定的正则约束,比如将权值的大小加入到损失函数中。
- 集成学习方法。集成学习是把多个模型集成在一起,来降低单一模型的过拟合风险,如Bagging方法。
降低欠拟合:
- 添加新特征。当特征不足或者现特征与样本标签的相关性不强时,模型容易出现欠拟合。通过挖掘“上下文特征”“ ID 类特征”“组合特征”等新的特征,往往能够取得更好的效果。
- 增加模型复杂度。简单模型的学习能力较差,通过增加模型的复杂度可以便模型拥高更强的拟合能力。例如,在线性模型中添加高次项,在神经网络模型中增加网络层数或神经元个数等。
- 减小正则化系数。正则化是用来防止过拟合的,但当模型出现欠拟合现象时,则需要针对性地减小正则化系数。
K均值算法的优缺点是什么,如何对其调优。
K均值算法缺点:例如受初值和离群点的影响每次的结果不稳定、结果通常不是全局最优而是局部最优解、无法很好地解决数据簇分布差别比较大的情况、不太适用于离散分类等。
K均值聚类的优点:主要体现在对于大数据集,K均值聚类算法相对是高效的,计算复杂度是 O(NKt) 接近于线性,其中N是数据对象的数目,K是聚类的簇数,t 是迭代的轮数。
调优方法:数据归一化,离群点预处理,采用核函数,合理选择K值。
请简述relu激活函数的优缺点
优点:
- 从计算的角度上,Sigmoid与Tanh激活函数均需要计算指数,复杂度高。而ReLU 只需要一个阈值即可得到激活值。
- ReLU的非饱和性可以有效地解决梯度消失的问题。
- ReLU的单侧抑制提供了网络的稀疏表达能力。
缺点:
在较大学习率设置下Relu可能会出现大量神经元死亡问题。后面神经元方向传播梯度为正,且学习率较大,Relu的梯度为1,梯度下降此时会导致该神经元的参数为负值,可能之后不会再被激活,造成神经元死亡。
补充题目
生成式模型和判别式模型的区别
生成模型估计的是联合概率分布,然后求出条件概率分布P(Y|X)作为预测的模型,即生成模型:P(Y|X)= P(X,Y)/ P(X)。
生成方法关心的是给定输入x产生输出y的生成关系。
判别模型估计的是条件概率分布,有数据直接学得决策函数P(X)或者条件概率分布P(Y|X)作为预测的模型。
判别式方法关心的是给定输入X,应该预测什么样的输出Y
逻辑回归和线性回归的异同
不同之处:
- 逻辑回归解决的是分类问题,因此因变量是离散的;而线性回归解决的是回归问题,因此因变量是连续的。这是两者最本质的区别
- 在自变量和超参数确定的情况下逻辑回归可看作广义的线性模型在因变量下服从二元分布的一个特殊情况
- 使用最小二乘法求解线性回归时我们认为因变量服从正态分布
相同之处:
- 二者在求解超参数的过程中都使用梯度下降的方法
- 二者都使用了极大似然估计对训练样本进行建模
距离函数的四个基本性质
- 非负性:
- 同一性:
- 对称性:
- 直递性:
随机变量x的支撑集(也就是非零值域)定义为[a,b],没有别的限制加在x上,该随机变量的最大熵分布是什么
根据最大熵模型, 推导出x概率密度函数是一个常函数,所以最大熵分布为均匀分布。
随机变量x的给定均值和方差限制在x上,该随机变量的最大熵分布是什么
根据最大熵模型推导出x概率密度函数是一个高斯分布 。
计算题
概率图
写出概率图模型联合分布的因子分解式
无向图看团,有向图看条件概率
贝叶斯网络计算概率
HMM
前向算法
后向算法
维特比解码
聚类
Kmeans:
- 确定初始中心点
- 计算聚类结果
- 根据结果更新中心点
层次聚类自底向上:初始每一个点为一类,逐步合并更新中心即可,注意更新的时候要使用原始的点重新进行计算
贝叶斯
贝叶斯最小错误分类
贝叶斯最小风险
决策树
- ID3:最大信息增益:根据类别计算经验熵,然后按照特征对类别算条件熵,两者相减,取比较大的特征作为划分的节点
- C4.5:最大信息增益比:在ID3计算后的基础上除以每一个特征的经验熵
- CART:最小基尼指数:外层是特征比例,内层是特征内部的类别比例
Maximum Likelihood
抛一枚硬币问题,观察数据情况是:一枚硬币包括正反两面,共抛了30次,其中12次是正面,18次是反面。采用Maximum Likelihood方法,估计正面出
现的概率和反面出现的概率。
Fisher
设计题
10万张图片分类,说明模型结构和训练方法
在机器学习中常常采用基于数据驱动的方法进行图像分类。所谓基于数据驱动的方法,就是给计算机很多数据,然后实现学习算法,让计算机学习到每个类的外形的方法。基于这种方法的完整流程如下
- 输入:输入是包含 N 个图像的集合,每个图像的标签是 K 种分类标签中的一种。这个集合称为训练集。
- 学习:这一步的任务是使用训练集来学习每个类到底长什么样。一般该步骤叫做训练分类器或者学习一个模型。
- 评价:让分类器来预测它未曾见过的图像的分类标签,并以此来评价分类器的质量。我们会把分类器预测的标签和图像真正的分类标签对比。毫无疑问,分类器预测的分类标签和图像真正的分类标签如果一致,那就是好事,这样的情况越多越好。
[