“12.19 更新至《聚类》”
01
—
概述
1.scikit-learn 是目前编程最常用的机器学习库。
2.通过 降维 把数据维度降低为2维或者3维,可以实现数据的可视化。
3.教材推荐采用 Anaconda 包管理工具来构建机器学习开发环境。
4.对回归问题,标签通常是 连续 型的。
5.我们教材将机器学习系统构建分为了4个阶段,分别是 预处理 , 学习 , 评估 , 预测 。
6.监督学习的训练数据由样本特征和标签 组成。
7. 聚类 技术将数据分成有意义的群组。
8.对分类问题,标签通常是离散 型的。
9.我们教材约定用矩阵表示训练数据,矩阵的一行表示一个 样本、一列表示一个 特征 。
10.监督学习有两个主要任务,分别是 分类, 回归 。
11.教材给出的3种不同类型的机器学习是 有监督学习, 无监督学习, 强化学习。
12.下列哪种语言是目前最流行的学习机器学习的语言。 (Python)
13.以下哪种机器学习方法,不是我们教材关注的重点。 (强化学习)
14.用机器学习方法让机器学会下棋可以采用强化学习来实现。(√)
15.机器学习是人工智能的一个分支。(√)
02
—
感知机
1.pandas读取csv文件的函数是 read_csv 。
2.感知器算法的模型参数是 w、 b。
3.python类的构造函数的名字是 __init__ 。
4.在python中,用 import指令导入包。
5.numpy中实现两个矩阵相乘的函数是dot。
6.下列是感知机算法需要学习的参数。(特征值权重w)
7.以下哪个性质不是感知机算法所具有的?(封闭解)
8.感知机算法只有在样本线性可分的情况下才会收敛。(√)
9.感知器算法通常将正类的标签标记为1。(√)
10.梯度下降算法一定可以找到全局最优解。(×)(局部最优解)
11.感知器算法通常将正类的标签标记为0。(×)(1)
12.感知机算法伪代码:
03
—
逻辑回归
1.模型过拟合的表现是模型能在 训练数据集上效果非常好,但是在 测试数据集上效果不好。
2.sklearn中封装的分类器对象一般通过fit成员函数的调用完成模型的训练。
3.sklearn库自带的数据集对应的模块名是 datasets 。
4.sklearn中封装的逻辑回归分类器在 linear_model模块中,类名为 LogisticRegression。
5.sklearn库中用来进行数据集划分的函数名是 train_test_split。
6.用 sigmoid函数将逻辑回归的输出值映射到0到1之间。
7.sklearn中封装的逻辑回归类,控制正则化强度的参数越大,则模型越 复杂。
8.函数accuracy_score用来计算模型在特定数据上的分类 准确率 。
9.sklearn中封装的逻辑回归类,通过 C/c参数来控制模型的正则化强度。
10.sklearn中的StandardScaler类的作用是对数据进行 标准化 。
11.正则化是通过惩罚模型的 参数 来实现的,即惩罚大的权重值。
12.正则化的目的是防止模型 过拟合 。
13.sklearn中封装的分类器对象一般通过 fit成员函数的调用完成模型的训练。
14.以下哪个说法是不正确的?
逻辑回归模型的参数数量和样本特征数量无关
逻辑回归模型的求解需要学习率η作为参数
逻辑回归的分类结果一定比感知器好
(×)逻辑回归的一个优点是可输出分类结果的可能性
15.以下哪个说法是正确的?
(√)逻辑回归采用交叉熵作为损失函数(逻辑回归的损失函数和交叉熵是一致的)
线性回归损失函数——平方损失函数,逻辑回归损失函数——对数损失函数
16.逻辑回归的损失函数与极大似然估计具有等价性。(√)
17.针对一个样本,逻辑回归的输出结果是一个数值,并且在0到1之间。(√)
18.正则化越强,模型参数越小,模型越简单。(√)
19.逻辑回归是一种高级的回归算法。(×)(低级)
20.逻辑回归在训练阶段求解模型参数一般采用迭代算法求解。(√)
21.复杂的模型不容易过拟合。(×)(复杂的模型更容易过拟合)
22.原始的逻辑回归算法处理的是二分类问题。(√)
23.正则化越弱,模型参数越大,模型越复杂。(√)
04
—
回归分析
1.回归问题按照输入变量和输出变量之间关系的类型,分为 线性回归和 非线性回归。
2.回归模型表示从 输入变量到 输出变量之间映射的函数。
3.回归问题按照输入变量的个数,分为 一元回归和 多元回归。
4.回归问题分为 学习 和 预测 两个过程。
5.下列哪一项不是正规方程的特点?
只适用于线性模型,不适用于逻辑回归等其他模型
不要学习率a
如果特征维度太高,不宜再考虑该方法
(×)多次运算得出(一次运算得出)
6.回归(regression)是属于下列哪一类机器学习问题?(监督学习)
7.下列哪一项不是梯度下降的特点?
需要选择适当的学习率a
需要进行多步迭代
能应用到一些更加复杂的算法中,如逻辑回归等
(×)当特征数量很大时,不能较好适用(对多特征适应性较好,能在特征数量很多时仍然工作良好)
8.归一化和正则化是两种常见的可以将不同的特征统一到同一比例的方法。(×)(归一化和标准化)
9.线性回归模型推广到多个解释变量,这个过程叫作多元线性回归。(√)
10.回归问题的学习等价于函数拟合。(√)
11.当目标函数不是凸函数时,可以使用随机梯度下降法避免优化过程陷入局部最忧。(√)
12.梯度下降就是逐步最大化损失函数的过程。(×)(梯度下降是逐步最小化损失函数的过程)
13.损失函数用来衡量参数选择的准确性。(√)
14.线性回归的目的是针对一个或多个特征与连续目标变量之间的关系建模。(√)
15.什么是梯度下降算法,它的作用是什么?(梯度下降法是一种寻找目标函数最小化的方法,作用是逐步最小化损失函数)
附加
———
统计学基本概念
1.统计学习方法的步骤:
1.得到一个有限的训练、数据集合;
2.确定包含所有可能的模型的假设空间,即学习模型的集合;
3.确定模型选择的准则,即学习的策略;
4.实现求解最优模型的算法,即学习的算法;
5.通过学习方法选择最优模型;
6.利用学习的最优模型对新数据进行预测或分析。
2.如果给定的样本数据充足,进行模型选择的一种简单方法是随机地将数据集分成三部分,分别为 训练集, 验证集和 测试集。
3.监督学习方法又可以分为 生成方法和 判别方法。所学到的模型分别称为 生成模型和 判别模型。
4.为避免过拟合,常用的两种模型选择方法是 正则化和 交叉验证。
5.统计学习方法都是由 模型, 策略, 算法三要素构成。
6. 泛化 能力是指由该方法学习到的模型对未知数据的预测能力。
7.正则化是 结构风险最小化 策略的实现。
8.下列哪一项不是统计学习的主要特点?
以数据为研究对象
多个领域的交叉学科
以计算机及网络为平台
(×)以信息为中心(以方法为中心)
9.下列哪一项是过拟合的特点?(模型对己知数据预测得很好,但对未知数据预测得很差)
10.在监督学习过程中,模型就是所要学习的条件概率分布或决策函数。(√)
11.损失函数主要用来度量平均意义下模型预测的好坏。(×)(损失函数:一次预测的好坏;风险函数:平均意义下模型预测的好坏)
12.统计学习也称为统计机器学习。(√)
13.统计学习的目的是对数据(特别是未知数据)进行预测和分析。
14.统计学习的目标就是选择期望风险最大的模型。(×)(学习的目标是选择期望风险最小的模型)
05
—
降维
1.样本协方差矩阵的 特征向量 就是PCA算法要求解的投影方向。
2.向PCA投影后,新的特征之间具有 不相关/线性不相关 的性质。
3.PCA的全称为 主成分分析 。
4.LDA的全称为 线性判别分析 。
5.KPCA的全称为 核主成分分析 。
6.KPCA是通过 核函数 避免了显示的将特征映射到高维空间。
附:(对称性、半正定性)
线性核:
多项式核:
径向基核函数(高斯核):
7.以下关于PCA算法的描述正确的有哪些?
即使输入数据X各个维度上的数值相似度较高,依旧需要对其去均值
使用PCA算法时,数据压缩后的维度M可以设置的偏小一点
(×)已知使用PCA算法压缩后的数据Y以及压缩矩阵A,但是无法大致还原压缩前的数据
(×)在使用PCA算法时,有可能陷入局部最小值,所以需要使用不同的初始化数值多次计算以获得更好的结果
8.有L个输入样本,每个样本的特征维度是N。在设置压缩后的维度M时,以下哪些设置方式是合理的?
根据能量百分比准则,保留占据95%能量的M值
M = 0.1 * N
(×)根据能量百分比准则,保留占据5%能量的M值
9.以下哪些是PCA算法可以解决的问题?
对维度大于3的数据进行可视化处理
对特征相关性较高的数据进行降维
数据维度压缩
(×)对维度较小的数据进行维度扩充
10.以下哪些特征选取方式是无监督的?
使用PCA进行特征抽取
使用协方差矩阵抽取协方差值较高的特征
(×)使用线性神经网络抽取特征
(×)使用卷积层,pooling层处理输入图像,得到降维后的特征图
11.PCA是一种无监督学习算法。(√)
12.LDA是一种有监督学习算法。(√)
13.PCA的目标是使得训练样本在低维空间中尽量分散。(√)
14.PCA可以采用梯度上升法求解。(√)
15.PCA算法没有解析解。(×)(通常是近似数值解,而非没有解析解)
16.对非线性分布的数据,PCA降维仍然可以取得较好的效果。(×)(PCA线性降维方法)
06
—
模型评价与调优
1. 混淆矩阵 用于显示不同类别的样本被具体分类的情况。
2.ROC曲线下的面积指标被称为 AUC 。(分类器性能指标,曲线越接近左上角越好)
3.网格搜素的目的是寻找最优的 超参数 。(网格搜索即选中某一参数后自动遍历该参数范围中的所有值,以找到最佳参数)
4.学习曲线是模型准确率随 训练样本 数量的变化曲线。
5.验证曲线是模型准确率随 模型参数 的变化曲线。
6.下面正确的是?
将所有数据先随机打乱顺序,百分之80用来训练模型,剩下的百分之20作为测试集,预测结果正确率最高的模型就是我们所要选的模型
7.如果一个模型在训练集上正确率为99%,测试集上正确率为60%。我们应该怎么做?
(高方差(偏差1,方差39)->过拟合->复杂模型)
加入正则化项
增加训练样本数量
减少模型复杂度
8.如果一个模型,它在训练集上正确率为85%,测试集上正确率为80%,则模型是过拟合还是欠拟合?其中,来自于偏差的误差为?来自方差的误差为?
(总误差20%)
欠拟合,15%,5%
附:误差分析及过拟合/欠拟合
来自偏差的误差:100% - 测试集上正确率
来自方差的误差:训练集正确率 - 测试集正确率
欠拟合:偏差 > 方差,对应简单模型
过拟合:偏差 < 方差,对应复杂模型
9.假设,我们现在利用5折交叉验证的方法来确定模型的超参数,一共有4组超参数,我们可以知道,5折交叉验证,每一组超参数将会得到5个子模型的性能评分,假设评分如下,我们应该选择哪组超参数?
子模型1:0.8 子模型2:0.8 子模型3:0.8 子模型4:0.8 子模型5:0.6(选总评最高的一组超参数)
10.下列说法正确的是?
自助法对集成学习方法有很大的好处
使用交叉验证能够增加模型泛化能力
在数据难以划分训练集测试集时,可以使用自助法
(×)相比自助法,在初始数据量较小时交叉验证更常用(交叉验证和留出法(37、28、分层抽样)常用于数据量足够的情况)
11.下列说法正确的是?
相比MSE指标,MAE对噪声数据不敏感
RMSE指标值越小越好
(×)R-Squared指标值越小越好(R方参数为回归模型的正确率,值越大越好)
(×)当我们的模型不犯任何错时,R-Squared值为0(0表示全错...)
附:回归评价指标
MSE均方误差:真实值-预测值,然后平方之后求和平均(即线性回归损失函数)
RMSE均方根误差:Root of MSE
MAE平均绝对误差:真实值-预测值的绝对值求和平均,对噪声数据不敏感
R-Squared R方:线性回归正确率,越接近1说明模型越好
12.训练集与测试集的划分对最终模型的确定没有影响。(×)
13.一个分类模型的分类准确率高,则一定是一个好的分类模型。(×)
07
—
聚类
1.层次聚类在度量群组之间的距离时,常用的度量方法有单连接、多连接和平均连接。
2.热度图是利用 颜色来表示样本特征大小的一种可视化方法。
3.DBSCAN是一种基于 密度 的聚类算法。
4.DBSCAN聚类算法将样本点分为 核心点、 边界点和 噪声点三类。
5.K均值聚类算法的求解需要求样本间的距离。(√)
6.K均值聚类算法的聚类数量需要提前决定。(√)
7.多次运行K均值聚类算法,只要K是相同的,结果也会是相同的。(×)(因为是随机选取的中心)
8.可以利用肘法决定最佳聚类数量。(√)
9.凝聚层次聚类是一种自底向上的聚类过程。(√)
10.主观题。
①简述K均值聚类算法的目标函数。
最小化群内误差平方和(SSE)(群惯性)
②简述K均值聚类算法的基本思想和步骤。
基本思想:
对于给定的样本集,按照样本之间的距离大小,将样本集划分为K个簇。让簇内的点尽量紧密的连在一起,而让簇间距离尽量大。
算法步骤:
1.随机从样本中挑选k个重心作为初始聚类中心;
2.将每个样本分配到最近的重心μ (j),j∈{1,…,k};
3.把重心移到已分配样本的中心;
4.重复步骤2和3,直到集群赋值不再改变或达到用户定义的容限或最大迭代数。
③如何改进K均值聚类算法初始聚类中心不佳的问题,简述基本思想。
使用k均值++算法。
算法步骤:
1.初始化空集合M来存储选择的k个重心;
2.从输入样本中随机选择第一个重心μ(j)然后加入M;
3.找出不在M中的每个样本x(i)与M中每个点的最小距离的平方d(x(i), M)² ;
4.随机选择下一个重心μ(p),计算加权概率分布;
5.重复步骤2和3直至选中k个重心;
6.继续进行经典的k-均值算法。
④简述模糊聚类K均值聚类的基本思想。
基本思想:
将一个样本分配给一个或多个集群;并确定每个数据点属于各个聚类的概率。
算法步骤:
1.指定k重心的数量然后随机为每个重心点分配集群成员。
2.计算集群的中心μ(j),j∈{1,…,k}。
3.更新每个点的集群成员。
4.重复步骤2和3直到成员系数不再变化,或达到用户定义的容限或最大迭代数。
⑤简述什么是轮廓图及轮廓图的作用。
轮廓图(Silhouette)是一种用于表现集群中样本分类的紧密程度,即聚类准确度的度量。
用于量化聚类的质量。
⑥简述层次聚类算法的基本思想和步骤。
将所有的样本点自底向上合并(凝聚)或者自顶向下分裂(分裂)成一棵树。
⑦简述凝聚层次聚类算法的基本思想,写出算法步骤(伪代码)
基本思想:
自底向上的策略,首先将每个对象作为一个簇,然后合并这些原子簇为更大的簇,直到所有的对象都在同一个簇中,或者满足终止条件。
算法步骤:
1.计算所有样本的距离矩阵;
2.将每个数据点表示为单例集群;
3.根据最不相同的成员之间的距离合并两个最近的集群;
4.更新相似度矩阵;
5.重复步骤2-4直到一个集群保持不变。
⑧简述DBSCAN聚类算法的基本思想,写出算法步骤。
基本思想:
由密度可达关系导出的最大密度相连的样本集合,即为聚类的一个类别(簇)。
算法步骤:
1.用每个核心或连接的核心点组成单独的集群(如果不超过ε的范围,核心点被视为连接的);
2.把每个边界点分配到与其核心点相对应的集群。
原创:大林
编辑:大林
校对:大林