机器学习算法入门与编程实践

第一章 机器学习概述

1.无监督学习的两个主要任务是(多选)BD

A 回归                                        B 降维

C 分类                                        D 聚类

2.下列对无监督学习描述错误的是  C  

A 无标签                                                B 核心是聚类

C 不需要降维                                        D 具有很好的可解释性

3.下列对有监督学习描述错误的是 D 

A 有标签                                                              B 核心是分类

C 分类分类原因不透明                                        D 所有数据都相对独立分布

4.在以下学习策略中,使用的训练数据只有部分存在标签的是  C  

A 监督学习                                        B 深度学习

C 半监督学习                                    D 无监督学习

5.下面符合特征选择标准的是  A   

A 能够反映不同事物差异的特性                                  B 越多越好

C 越少越好                                                                  D 数值型的必定性数据好

6.给定一定数量的红细胞和白细胞图像及它们对应的标签,设计出一个红细胞和白细胞分类器,这属于   C    问题。

A 半监督学习                                      B 无监督学习

C 监督学习                                         D 以上都可以

7.给定一定数量的红细胞和白细胞图像,但并不知道图像与标签的对应关系,设计出一个红细胞和白细胞分类器,这属于   B    问题。

A 半监督学习                                      B 无监督学习

C 监督学习                                         D 以上都可以

8.机器学习可以用于以下哪些情形?  ABCD  

A 人类无法解释的专业知识                                          B 模型需要基于大量数据

C 当人类专业知识不存在时                                         D 模型必须定制

9.以下哪些领域应用机器学习需要考虑样本不平衡问题?  ABCD  

A 医学诊断                                                    B 预测罕见事件

C 检测信用卡欺诈                                         D 预测故障和失效

10.以下说法正确的是   B   

A 特征的个数越多,机器学习的效果越好                                       

B 样本的数量越多,机器学习的效果越好 

C “过拟合”只在监督学习中出现,在无监督学习中没有“过拟合”                                         

D 特征的个数应该和样本的数量相匹配

11.泛化误差是指  C  

A 训练误差                                                    B 测试误差

C 学习误差                                                   D 测量误差

12.与有监督学习相比,下面那些属于半监督学习的优势?  BD  

A 半监督学习模型训练时间更短                                                    

B 在标注数据量有限时,采用半监督学习有望训练得到更有优的机器学习模型

C 半监督学习 的数学优化问题更容易求解                                                  

D 能够节约大规模数据标注带来的时间和费用的开销

13.简述机器学习的主要步骤。

  1. 收集相关样本
  2. 特征提取
  3. 构建模型
  4. 评估模型的有效性
  5. 使用模型预测新样本

14.简述机器学习中验证集和测试集的区别。

答:验证集:是在模型训练的过程中评估模型,评估之后模型还会继续被修改

        测试集:是在模型训练好之后评估模型,评估之后模型不会再被修改。

15.什么是泛化能力?

答:所谓泛化能力是指模型对未知类别的新鲜样本正确分类的能力。

16.评价机器学习模型优劣的重要指标是什么?

答:泛化能力是评价机器学习模型优劣的最根本的指标

17.简述监督学习和无监督学习的区别。

监督学习:监督学习是从带有类别标签的训练数据中学得一个模型,并基于此模型来预测新样本的标签。

无监督学习:无监督学习是在无标签的训练集中发现数据规律。

两者区别:无监督学习和监督学习的主要区别在于无监督学习的样本没有标签,这使得无监督学习更具有挑战性。

18.特征选择和数据降维有何区别?

数据降维,一般说的是维数约简(Dimensionality reduction)。它的思路是:将原始高维特征空间里的点向一个低维空间投影,新的空间维度低于原特征空间,所以维数减少了。在这个过程中,特征发生了根本性的变化,原始的特征消失了(虽然新的特征也保持了原特征的一些性质)。

而特征选择,是从 n 个特征中选择 d (d

注意:数据降维不可以作为特征选择的一种手段。

第二章 Python机器学习与可视化

1、关于Python语言的语法,下列哪项是错误的?(B)

A.python程序中的代码缩进不能随意删除

B.import语句必须写在程序的开始位置

C.print('Hey')输出Hey后会自动换行

D.python语句是区分大小写的

2、下列不属于NumPy数组属性的是(D)

A ndim                        B shape                        C size                        D add

3、创建一个3x3维的数组,下列代码中错误的是(C)
A np.arange(0,9).reshape(3,3)                        B np.eye(3)

C np.random.random([3,3,3])                          D np.mat(np.zeros((3,3)))

4、以下关于绘图标准流程说法错误的是(B)

A 绘图最简单的图形可以不用创建画布

B 添加图例可以在绘制图形之前

C 添加x轴、y轴的标签可以在绘制图形之前

D 添加图的标题可以在ply.show()方法之后

5、下列代码中能够绘制出散点图的是(A)

A plt.scatter(x,y)                                                B plt.plot(x,y)

C plt.legend(x,y)                                                D plt.figure(x,y)

6、下列字符串表示plot线条颜色、点的形状和类型为红色五角星短虚线的是(D)

A 'bs-'                B 'go-.'                C 'r+-.'                D 'r*:'

7、train_test_split()函数的返回值有(D)个。

A 1                     B 2                        C 3                      D 4

8、数据(B)要求知道样本的最大值和最小值。

A  标准化                B 归一化                C 二值化                D 正则化

9、要设置x轴的坐标范围需要用到(B)

A xlabel                B xlim                        C xticks                 D hlines

10、使用Pandas不能读取下列哪种文件(D)

A xlsx                  B txt                        C CSV                        D MDB

11、NumPy提供的两种基本对象是 多维数组对象ndarray    和 通用函数对象ufunc

12、将NumPy一维数组a中的所有元素反转,方法是   a[::-1]   

13、提取NumPy数组中除了最后一列的所有列,方法是 data[:, 0:-1] 

14、创建一个范围在(0,1)之间长度为12的等差数列,方法是  np.linspace(0,1,12)

15、、在Matplotlib中,要绘制多个子图,需要使用  subplot()   函数。

16、train_test_split()函数能将样本划分为  训练集     测试集 

17、数据的  规范化  需要计算样本数据的标准差和均值。

18、在sklearn中,需要训练数据拟合模型,需要使用   fit()   方法。

19、数据的维度是指样本  特征属性 的个数。

20、主成分分析一般用来实现数据的  降维 

21、元组与列表的主要区别是什么?S=(9,6,5,1,55,7)能添加元素吗?

元组中的元素不能修改,但能添加和删除。

S=(9,6,5,1,55,7)能添加元素

22、读取鸢尾花数据集,使用循环和子图绘制各个特征之间的散点图。

import numpy as  np
import matplotlib.pyplot as plt
iris = np.load('d:/tmp/iris.npz',allow_pickle=True)['data'][:, :-1]
name = np.load('d:/tmp/iris.npz',allow_pickle=True)['features_name']
plt.rcParams['font.sans-serif'] = 'SimHei'
p = plt.figure(figsize=(16, 16))
plt.title(“鸢尾花散点图矩阵”)
for i in range(4):
    for j in range(4):
        p.add_subplot(4, 4, (i * 4) + (j + 1))
        plt.scatter(iris[:, i], iris[:, j])
        plt.xlabel(name[i])
        plt.ylabel(name[j])        
plt.savefig(“E:/data.png”)       
plt.show()

23、创建一个长度为10、一个维全为0的ndarray对象,然后让第5个元素等1。

import numpy as np
t1 = np.zeros(10,dtype=int)
print(t1)
t1[4]=1
print(t1)



运行结果:
[0 0 0 0 0 0 0 0 0 0]
[0 0 0 0 1 0 0 0 0 0]

第三章 关联规则与推荐算法

1、下列哪一项不是一个集合?(A)

A 项                        B 项集                        C 事物                        D 事物数据库

2、对于同一个事物数据库中的两条关联规则:A=>C和C=>A,可知(A)

A 它们的支持度一定相等                         B 他们的置信度一定相等

C 它们的支持度不一定相等                     D 他们的置信度不一定相等

3、设{A,B,C}不是频繁项集,则可知(B)
A {A.B}一定不是频繁项集                        B {A,B,C,D}一定不是频繁项集

C {A.B}一定是频繁项集                           D {A,B,C,D}一定是频繁项集

4、若已知{A,B,C}的支持度是50%,C的支持度是75%,则可知(B)

A A,B=>C的置信度是66.6%                        B C=>A,B的置信度是66.6%

C  A,B=>C的置信度是150%                       D C=>A,B的置信度是150% 

5、设N(a)={A,B,E}表示对物品a感兴趣的用户有A、B和E,N(b)={A,C,D}表示对物品b感兴趣的用户有A、C和D,每个用户对各物品的感兴趣程度均为1,则物品a、b之间的相似度为 (A)

A 1/3                        B1/9                           C 1/2                                D 1/6

6、寻找关联规则可分为两步,第一步是着    频繁项集 

7、协同过滤推荐算法使用  余弦相似度   作为指标来评价项与项之间的相似度。

8、经典的关联规则挖掘算法是  Apiori      ,为了提高关联规则的计算效率,改进的关联规则算法是  FP-Growth     

9、假设事物集只有6个项,对于频繁项集3-项集的集合{1,2,3},{1,2,4},{1,2,5},{1,3,4},{2,3,4},{3,4,6}:

(1)列出由Apriori算法得到的所有候选集4-项集。

所有候选四项集

{1,2,3,4},{1,2,3,5},{1,2,3,6},{1,2,4,5},{1,2,5,6},{1,3,4,5},{1,3,4,6},{2,3,4,5},{2,3,4,6},{2,3,5,6},{3,4,5,6}

(2)列出剪枝后剩下的候选4-项集。

剪枝后的候选四项集

{1,2,3,4},{1,2,3,5},{1,2,4,5},{2,3,4,5},{2,3,4,6},{2,3,5,6}

第四章 聚类

 1、在统计学中,数据的类型有3种,不包括(B)

A 定类数据                                                                B 定性数据

C 定距数据                                                                D 定序数据

2、下列那一列不属于聚类算法(B)
A K-中心点                                                                B K近邻

C K-means                                                                D DNSCAN

3、下列那种距离是两点之间的直线距离?(A)
A 欧氏距离                                                                B 曼哈顿距离

C 切比雪夫距离                                                        D 闵科夫斯基距离

4、从性能角度上看,(C)聚类算法的速度是最快的。

A K-中心点                                                                B 层次聚类法

C K-means                                                                D DNSCAN

5、在DBSCAN中,一个簇是一个(C)的区域。

A 密度可达                                                                B 直接密度可达

C 密度相连                                                                D 直接密度相连

6、聚类算法可分为   基于划分的方法       基于层次的方法     、基于密度的方法和基于模型的方法。

7、在聚类算法中是通过   距离     度量相似度的。

8、在sklearn提供的聚类模块中,参数n_clusters用于设置    簇的个数    

9、DBSCAN算法中定义的3类点分别是核心点、    边界点       噪声点    

第五章 分类

1、以下哪种算法生成的决策树一定是二叉树?(C)

A.ID3                     B.C4.5                         C.CART                        D.都不一定

2、在C4.5算法中,若特征属性A的取值只有两种,两种取值的样本数都是5个,则属性A的分裂信息split_info(A)的值为(A)。

A.1                                  B.2                                          C.3                                          D.5

3、以下哪个sklearn函数的参数为训练集?(A)

A.fit()                             B.predict()                          C.fit_predict()                         D.transform(x)

4、如果要在大型数据集上训练决策树,为了花费更少的时间来训练这个模型,下列哪种做法是正确的?(C)

A.增加树的深度                                                          B.增加学习率

C.减小树的深度                                                          D.减少树的数量

5、朴素贝叶斯分类是通过比较各个类别的哪个值的大小进行分类的?(A)

A.P(cⱼ|x)                            B.P(x|cⱼ;)                           C.P(cⱼ)/P(x)                                   D.P(cⱼ;)

6、混淆矩阵的真负率公式是(A)。

A.TP/(TP+FN)                                                             B.FP/(FP+TN)                  

C.FN/(TP+FN)                                                            D.TN/(TN+FP)

7、混淆矩阵中的TP=16,FP=12,FN=8,TN=4,F1-score是(B)。

A.4/13                         B.8/13                          C.4/7                          D.2/3

8、若某个消息出现的概率是0.25,则该消息的自信息量是___2___。

9、ID3算法选取  信息增益  最大的节点作为根节点;C4.5算法选取  信息增益率  最大的节点作为根节点。

10、在K-近邻算法中,K的含义是  近邻点的个数    ;在K-均值算法中,K的含义是   聚类的类别数 

11、对于分类模型,fit()函数的参数为    训练集的特性    ;对于聚类模型,fit()函数的参数为特征属性集

12、给定贝叶斯公式p(cj|x)=(p(x|cj)p(cj))/p(x)公式中的p(cj|x)称为   后验概率     (填写先验概率、后验概率或全概率)。朴素贝叶斯分类的依据是要求上式中   p(x|cj)p(cj)     的值最大。

13、在决策树分类中,属性的信息增益等于   无条件熵     与   有条件熵     的差。

14、决策树是用样本的属性作为节点,用    属性的取值    作为分支的树结构。

15、CART算法是选择基尼指数    小    (填大或小)的节点作为根节点。

16.只能对离散型数据进行决策树分类的算法是    ID3    

17、Bootstrap重采样技术采用   有放回     (填有放回或无放回)抽样。

18、在sklearn中,fit()函数的返回值是   模型     ,predict()函数的返回值是   标签     

19、什么是训练集?聚类的训练集和分类的训练集有何区别?

训练集是样本集的一部分,在机器学习中用于建立模型和评估模型参数。

聚类的训练集无类别属性(或无标签),而分类的训练集有类别属性(或有标签)。

20、简述分类的一般步骤。

特征提取→特征选择→分类→使用此模型预测新样本→评估效果.分类模型预测结果。            

20、简述什么是集成学习。集成学习的精确率一定比单个学习器的精确率更高吗?

(1)集成学习:多个性能一般的普通模型进行有效集成,形成一个性能优良的集成模型的过程

(2)若学习器的分类准确率较低,则组合生成的集成学习模型的分类准确率会更低,故集成学习准确率不一定比单个学习器的准确率高。

22、设有甲、乙、丙三个车间生产同一种产品,已知各车间的产量分别占全厂产量的25%、35%和40%,各车间的产品次品率依次为5%、4%和2%。现从待出厂的产品中检查出一个次品,试用朴素贝叶斯分类预测该次品最有可能是由哪个车间生产的,并指出该分类的特征属性和类别属性。

次品、车间

第六章 回归与逻辑回归

1、关于逻辑回归模型,以下说法错误的是(D)。

A.逻辑回归属于有监督学习

B.逻辑回归是回归分析的一种

C.逻辑回归使用最大似然估计来训练回归模型

D.逻辑回归的损失函数是通过最小二乘法来定义的

2、hθ(x)=θTX可作为(A)模型的公式

A.逻辑回归                                                           B.多元线性回归

C.多重线性回归                                                   D.神经网络

3.要实现非线性分类,可以使用(B)。

A.多元逻辑回归                B.多项式逻辑回归

C.多重共线性回归            D.非线性逻辑回归

4、对于一个测试样本,逻辑回归模型的输出值     等于   样本属于该类别的概率值。(填等于、小于或大于)

5、回归与分类的区别是,   回归   的预测值是连续值。(填回归或分类)                                   

6、逻辑回归使用   sigmoid     函数对线性回归进行变换。

7、如果直接用线性回归进行分类,会存在什么问题?

无法确定分类的阈值取多少合适。

8、回归与分类的区别是什么?

        分类和回归的区别在于输出变量的类型。定量输出称为回归,或者说是连续变量的预测;定性输出称为分类,或者说是离散变量的预测。

9、简述使用逻辑回归进行分类的步骤。

①建模;②估计逻辑回归系数;③解释回归系数;④检验模型整体;⑤检验特征变量

第八章 支持向量机

1、使用支持向量机进行非线性分类,需要用到的关键技术是(C)。

A.拉格朗日函数                                                 B.SMO算法

C.核函数                                                           D.软间隔方法

2、松弛变量惩罚项系数在sklearn中用哪个参数进行设置?(A)

A.C                                                                   B.degree

C.tol                                                                 D.coef0

3、如果要对环形分布的数据集进行分类,使用哪种核函数的效果最好?(C)

A.Linear                                                           B.poly

C.RBF                                                             D.Sigmoid

4、下列哪种核函数只能设置gamma参数?(C)

A.linear                                                            B.poly

C.RBF                                                             D.Sigmoid

5、SVM分类的目标是    分类间隔d    最大。

6、SVM间隔的计算公式为   d=2/||w||   

7.所谓支持向量是指距离间隔    最近     (填写远或近)的点

8.如果多项式核函数的   degree     参数设置为1,则相当于线分类。

你可能感兴趣的:(算法,人工智能)