题目(共10小题)

1.(多选)关于K-means聚类算法说法正确的是

        A. 是一种无监督学习方法

        B. 对大数据集有较高的效率并且具有可伸缩性

        C. 初始聚类中心的选择对聚类结果影响不大

        D. K值无法白动获取,初始聚类中心随机选择

2.(单选)C4.5算法在决策树各个子节点上应用(   )为准则来选择特征

        A. 增益率          B. 信息熵          C. 条件熵          D. 信息增益

3.(单选)0-1背包问题不能使用(   )解决

        A. 分支限界法          B. 动态规划法          C. 贪心算法          D. 回溯法

4.(单选)下列哪项不是建立线性规划模型的基本步骤

        A. 找出模型的目标函数

        B. 确定模型的损失函数

        C. 找出待定的未知变量

        D. 找出问题中的所有约束或限制

5.(单选)下列哪项不是隐马尔可夫模型的基本问题

        A. 概率计算问题          B. 学习问题          C. 预测问题          D. 编码问题

6.(单选)使用PCA算法提取特征的过程中,是将(   )的特征值从大到小排序,并选择其对应的K个特征向量组成特征向量矩阵

        A. 标准差          B. 协方差          C. 方差          D. 期望

7.(单选)关于常见的机器学习算法,以下说法错误的是

        A. xgboost和GDBT都属于boosting算法

        B. 随机森林属于Bagging算法

        C. LR加入正则化后过拟合能力下降(泛化能力增大)

        D. 线性SVM是寻找最小边缘的超平面的一个分类器

8.(单选)以下关于逻辑回归算法的叙述,说法正确的是

        A. Logistic Regression只能用于回归

        B. Logistic regression(逻辑回归)是一种监督式机器学习算法

        C. 逻辑回归不能解决三分类问题

        D. 不能用神经网络算法实现逻辑回归

9.(单选)EM算法是一种(   )算法

        A. 无监督          B. 有监督          C. 半监督          D. 都不是

10.(单选)关于K-means算法,以下说法正确的是

        A. 初始化K-均值的标准方法是将设置\mu _1=\mu _2...=\mu _k为等于零的向量

        B. 如果我们担心K-means陷入局部最优解,一种改善(减少)这个问题的方法是尝试使用多个随机初始化

        C. 由于K-Means是一种无监督的学习算法,它不能对数据进行过度拟合,因此最好在计算上尽可能多的聚类

        D.无论簇中心的初始化如何,K-均值都会给出相同的结果

解答

1.【答案】ABD

【解析】

  • 选项A:是一种无监督学习方法​​

    K-means聚类算法不需要标签数据,用于将数据分成聚类,因此属于无监督学习。该选项正确。

  • ​​选项B:对大数据集有较高的效率并且具有可伸缩性​​

    K-means的时间复杂度为O(nki),其中n是样本数,k是聚类数,i是迭代次数。它对大规模数据集处理效率较高,且易于扩展。该选项正确。

  • ​​选项C:初始聚类中心的选择对聚类结果影响不大​​

    K-means对初始聚类中心的选择非常敏感,不同的初始中心可能导致不同的聚类结果。因此,该选项错误。

  • ​​选项D:k值无法自动获取,初始聚类中心随机选择​​

    K-means需要用户预先指定聚类数k,算法本身无法自动确定k值。初始聚类中心通常随机选择(尽管有改进方法如K-means++,但标准K-means使用随机选择)。该选项正确。

因此,正确选项是​​A、B、D​​。

2.【答案】A

【解析】C4.5算法是决策树算法中非常经典的一种,它是ID3算法的改进版。

  • ​​信息增益​​:是ID3算法使用的特征选择准则。它的缺点是会倾向于选择取值较多的特征(例如“编号”、“姓名”这类唯一标识符),但这类特征通常没有实际的分类意义。

  • ​​增益率​​:正是C4.5算法为了克服信息增益的这一缺点而引入的。它通过引入一个“分裂信息”的惩罚项(即特征的固有值)来平衡信息增益的偏差,从而避免模型过拟合。

因此,C4.5算法在各个子节点上应用 ​​增益率​​ 作为准则来选择最优特征。

其他选项的区别:

  • ​​信息熵​​:是度量样本集合纯度的最常用指标,是计算信息增益的基础。

  • ​​条件熵​​:是在已知某个特征条件下,对目标值纯度的度量,也是计算信息增益的中间步骤。

简单总结:

  • ​​ID3算法​​ → 使用 ​​信息增益​​

  • ​​C4.5算法​​ → 使用 ​​增益率​

3.【答案】C

【解析】根据0-1背包问题的特性,每个物品只能选择放入或不放入(不能分割),且需要找到最大化价值而不超过背包容量的最优解。分析各选项:

  • ​​分支限界法​​:可以用于解决0-1背包问题,通过枚举和剪枝找到最优解。

  • ​​动态规划法​​(选项中的“劲态规划法”应为“动态规划法”):是解决0-1背包问题的标准方法,通过构建DP表找到最优解。

  • ​​贪心算法​​:不能保证得到最优解,因为它基于局部最优选择(如价值密度),但0-1背包问题要求全局最优,贪心算法可能失败。

  • ​​回溯法​​:可以用于解决0-1背包问题,通过暴力搜索所有组合,尽管效率较低。

因此,0-1背包问题不能使用贪心算法解决。正确答案是​​贪心算法​​。

4.【答案】B

【解析】根据线性规划(Linear Programming)的基本原理,建立模型通常包括以下步骤:

  • ​​确定决策变量​​(对应选项C:找出待定的未知变量)

  • ​​定义目标函数​​(对应选项A:找出模型的目标函数)

  • ​​列出约束条件​​(对应选项D:找出问题中的所有约束或限制)

选项B“确定模型的损失函数”不是线性规划模型的基本步骤。损失函数通常与机器学习或统计模型相关,用于衡量预测误差,而线性规划的目标是优化一个线性目标函数(如最大化利润或最小化成本),并不涉及损失函数。

因此,本题的正确答案是 ​​B. 确定模型的损失函数​​。

5.【答案】D

【解析】根据隐马尔可夫模型(HMM)的理论,其基本问题通常包括以下三个:

  • ​​概率计算问题​​:给定模型参数和观测序列,计算观测序列的概率(对应选项A)。

  • ​​学习问题​​:给定观测序列,估计模型参数(对应选项B)。

  • ​​预测问题​​:给定模型参数和观测序列,找到最可能的状态序列(对应选项C)。

选项D的“编码问题”并不是隐马尔可夫模型的基本问题。在HMM的上下文中,“编码”可能指的是其他领域(如信息论或数据压缩),但与HMM的标准问题无关。

因此,本题的正确答案是 ​​D. 编码问题​​。

6.【答案】B

【解析】根据PCA(主成分分析)算法的原理,在提取特征的过程中,首先计算数据的协方差矩阵,然后计算协方差矩阵的特征值和特征向量。特征值表示对应特征向量方向上的方差大小,因此将特征值从大到小排序,并选择前K个最大的特征值对应的特征向量,组成特征向量矩阵用于降维。

选项分析:

  • ​​标准差​​:是方差的平方根,不直接用于PCA的特征值排序。

  • ​​协方差​​:正确选项,PCA基于协方差矩阵的特征分解。

  • ​​方差​​:特征值代表方差,但PCA排序的是协方差矩阵的特征值,而不是直接的方差。

  • ​​期望​​:是平均值,与PCA的特征提取无关。

因此,正确答案是​​协方差​​。

7.【答案】D

【解析】

A. xgboost和GDBT都是属于boosting算法​​

  • ​​正确​​。Boosting是一种集成学习方法,通过顺序训练多个弱学习器(如决策树),每个学习器尝试纠正前一个的错误。XGBoost(Extreme Gradient Boosting)和GDBT(Gradient Boosting Decision Trees)都是boosting算法的代表。XGBoost是GDBT的优化扩展版本,但两者核心都属于boosting框架。

  • ​​结论​​: 这个说法正确,没有错误。

​​B. 随机森林属于Bagging算法​​

  • ​​正确​​。Bagging(Bootstrap Aggregating)是一种集成学习方法,通过有放回抽样(bootstrap)训练多个模型,然后平均结果以提高泛化能力。随机森林(Random Forest)是典型的Bagging算法,它构建多个不相关的决策树(同时引入特征随机性),并通过投票机制组合结果。

  • ​​结论​​: 这个说法正确,没有错误。

​​C. LR加入正则化后过拟合能力下降(泛化能力增大)​​

  • ​​正确​​。LR(Logistic Regression,逻辑回归)在加入正则化(如L1正则化或L2正则化)后,会添加惩罚项来约束模型权重,从而降低模型的复杂度。这会导致“过拟合能力下降”(即模型对训练数据的过度拟合倾向减少),同时泛化能力(对新数据的处理能力)通常增强。例如:

    • 未正则化的LR可能对噪声过拟合,加入L2正则化后,模型更稳健。

  • ​​注意​​: 选项中的“过拟合能力下降”应理解为“过拟合的趋势减弱”,与“泛化能力增大”一致。

  • ​​结论​​: 这个说法正确,没有错误。

​​D. 线性SVM是寻找最小边缘的超平面的一个分类器​​

  • ​​错误​​。线性支持向量机(SVM)的核心目标是找到一个超平面(决策边界),使间隔(margin)最大化,而不是最小化。间隔是指超平面到最近数据点的距离,最大化间隔可以增强泛化能力和鲁棒性。

    • 正确表述:线性SVM是寻找最大间隔(maximum margin)超平面的分类器。

    • 错误原因:如果寻找“最小边缘”(最小间隔),会导致模型对噪声和异常值敏感,容易过拟合,这与SVM的设计原理完全相反。例如,在SVM的优化问题中,目标函数是最大化间隔(最小化||w||^2,其中w是权重向量)。

  • ​​结论​​: 这个说法错误。

8.【答案】B

【解析】本题要求判断关于逻辑回归(Logistic Regression)的说法是否正确。以下是对每个选项的详细分析:

  • ​​选项A: Logistic Regression只能用于回归​​

    ​​错误​​。逻辑回归虽然名称中包含“回归”,但它实际上是一种分类算法,而非回归算法。回归算法用于预测连续值(如线性回归),而逻辑回归通过Sigmoid函数将输出映射到概率值,从而用于分类(尤其是二分类)。因此,逻辑回归不能用于回归任务,而是用于分类。

  • ​​选项B: Logistic regression(逻辑回归)是一种监督式机器学习算法​​

    ​​正确​​。逻辑回归是一种典型的监督学习算法,它需要带标签的训练数据(即输入特征和对应的输出标签)来学习模型参数。在训练过程中,它通过最大化似然函数或最小化损失函数(如交叉熵损失)来优化参数,然后用于预测新数据的类别。因此,它属于监督学习的范畴。

  • ​​选项C: 逻辑回归不能解决三分类问题​​

    ​​错误​​。逻辑回归虽然通常用于二分类,但可以通过扩展来处理多分类问题,包括三分类。常见的方法有:

    • ​​一对多(One-vs-Rest, OvR)​​:训练多个二分类器,每个分类器区分一个类别与其他所有类别。

    • ​​多项式逻辑回归(Multinomial Logistic Regression)​​:使用Softmax函数直接处理多分类,输出每个类别的概率。

      因此,逻辑回归能够解决三分类问题。

  • ​​选项D: 不能用神经网络算法实现逻辑回归​​

    ​​错误​​。逻辑回归实际上可以被视为一个简单的神经网络模型。具体来说:

    • 对于二分类,逻辑回归等价于一个没有隐藏层的神经网络,使用Sigmoid激活函数。

    • 对于多分类,逻辑回归等价于一个没有隐藏层的神经网络,使用Softmax激活函数。

      因此,我们可以用神经网络算法(如使用反向传播)来实现逻辑回归,许多深度学习框架(如TensorFlow或PyTorch)都支持这种实现。

9.【答案】A

【解析】EM算法​​(Expectation-Maximization Algorithm)是统计学中用于​​求解含有隐变量(Latent Variables)的概率模型参数​​的迭代优化算法。

  • ​​核心应用场景​​:

    • 处理数据不完整或存在缺失值的情况(如聚类、混合模型)。

    • 典型例子:高斯混合模型(GMM)的参数估计、隐马尔可夫模型(HMM)的训练。

  • ​​无需标注数据​​:EM算法的输入仅为观测数据(无标签),通过迭代优化模型参数(如概率分布),属于​​无监督学习​​范畴。

10.【答案】B

【解析】

  • 选项A​​: 初始化K-均值的标准方法并不是将簇中心\mu _1=\mu _2...=\mu _k设置为零向量。实际上,标准初始化方法是随机选择数据点作为初始簇中心,以避免偏见和改善收敛。设置为零向量可能导致聚类效果差,因为数据可能不在原点附近。因此,选项A错误。

  • ​​选项B​​: 如果担心K-means陷入局部最优解,使用多个随机初始化是一种常见且有效的改善方法。通过多次运行K-means算法并选择最优结果(如最小化簇内平方和),可以减少局部最优的风险。这是K-means算法中的标准实践,因此选项B正确。

  • ​​选项C​​: K-Means虽然是无监督学习算法,但也能过拟合数据。例如,当簇数量K设置过大时,会导致每个数据点几乎成为一个簇,失去聚类的意义。因此,并不应该尽可能多地聚类,而需要通过方法(如肘部法则或轮廓系数)选择合适的K。选项C错误。

  • ​​选项D​​: K-均值算法的结果受簇中心初始化的影响很大。不同的初始化可能导致不同的聚类结果,这正是算法对初始条件敏感的特性。因此,选项D错误。

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐