python基础和机器学习知识

测试习题

#### 1. 以下哪一行代码可以正确打印出 "Hello World"?

A. `print "Hello World"`  

B. `echo "Hello World"`  

C. `printf("Hello World")`  

D. `print("Hello World")`  

**答案**: D

#### 2. 运行以下代码 `print(type([]))` 的结果是什么?

A. `<class 'list'>`  print(type([]))

B. `<class 'tuple'>`  print(type(()))

C. `<class 'set'>`  print(type(set()))

D. `<class 'dict'>`  print(type({}))

**答案**: A

#### 3. `len()` 函数在 Python 中的作用是什么?

A. 返回字符串中的字符数  

B. 返回列表中的元素数量  

C. 返回函数中的参数数量  

D. A 和 B 都正确  

**答案**: D

#### 4. 以下哪种数据类型是不可变的(immutable)?

A. 列表(List)  

B. 字典(Dictionary)  

C. 集合(Set)  

D. 元组(Tuple)  

**答案**: D

#### 5. 运行以下代码 `print(3 * "abc")` 的输出结果是什么?

A. `abcabcabc`  

B. `abcabcabcabc`  

C. `abc abc abc`  

D. `SyntaxError`  

**答案**: A

#### 6. Python 中使用哪个关键字定义函数?

A. `function`  

B. `def`  

C. `lambda`  

D. `fun`  

**答案**: B

#### 7. 运行以下代码 `a = [1, 2, 3]; print(a[1])` 的输出结果是什么?

A. 1  

B. 2  

C. 3  

D. 错误  

**答案**: B

#### 8. 以下哪种运算符用于检查两个变量是否引用同一对象?

A. `==`  用于比较两个对象的值是否相等。

B. `!=`  用于检查两个对象的值是否不相等。

C. `is`  

D. `and`   是一个逻辑运算符,用于组合多个条件。

**答案**: C

#### 9. `range(3)` 的输出是什么?

A. `0, 1, 2`  

B. `[0, 1, 2]`  

C. `(0, 1, 2)`  

D. `None`  

**答案**: B

#### 10. 以下哪种是用于处理异常的关键字?

A. `try`  用于包裹可能引发异常的代码块。

B. `except`  用于捕获并处理特定异常。

C. `finally`  用于包裹无论是否发生异常都需要执行的代码块。

D. 以上都是  

**答案**: D

#### 11. 以下哪个不是 Python 的内置数据类型?

A. `list`  

B. `tuple`  

C. `array`  不是Python的内置数据类型,通过导入 array 模块来使用。

D. `set`  

**答案**: C

#### 12. Python 中,`'=='` 和 `'is'` 的区别是?

A. `'=='` 比较值,`'is'` 比较引用  

B. `'=='` 比较引用,`'is'` 比较值  

C. 它们是完全相同的  

D. `'=='` 比较类型,`'is'` 比较值  

**答案**: A

#### 13. 运行以下代码 `print(type({}))` 的输出是什么?

A. `<class 'set'>`  

B. `<class 'list'>`  

C. `<class 'dict'>`  

D. `<class 'tuple'>`  

**答案**: C

#### 14. Python 中用哪个方法可以给字典新增键值对?

A. `append`  是列表(list)的方法,用于在列表末尾添加一个元素。

B. `add`  是集合(set)的方法,用于在集合中添加一个元素。

C. `insert`  是列表的方法,用于在指定位置插入一个元素。

D. `update`  

**答案**: D

#### 15. Python 中的 `lambda` 是用来干什么的?

A. 定义类  

B. 定义匿名函数  

C. 定义循环  

D. 定义条件判断  

**答案**: B

#### 16. 以下代码中 `print(5 // 2)` 的输出是什么?

A. 2.5  

B. 2  

C. 3  

D. 2.0  

**答案**: B

#### 17. 在 Python 中,以下哪种方式可以复制列表?

A. `copy()`  这是列表对象的一个方法,用于创建列表的一个浅拷贝。

B. `deepcopy()`  这是标准库copy模块中的一个函数,用于创建对象的深拷贝,包括列表中的所有嵌套对象。

C. 切片 `[:]`  使用切片操作符可以快速复制列表。

D. 以上都可以  

**答案**: D

#### 18. 以下哪个是正确的变量命名方式?

A. `1_variable`  

B. `variable_1`  

C. `variable-1`  

D. `variable 1`  

**答案**: B

#### 19. 运行以下代码的输出结果是什么:`a = 3; b = 2; print(a**b)`?

A. 6  

B. 9  

C. 8  

D. 1  

**答案**: B

#### 20. Python 中的 `break` 语句用于什么?

A. 结束当前循环并开始下一个循环  

B. 结束整个循环  

C. 跳过当前迭代  

D. 结束函数  

**答案**: B

#### 21. 以下哪种方式是读取文件的常用方法?

A. file.read() 是读取文件内容的方法,但这种方法需要先使用open()函数打开文件。

B. open.read() 是不正确的,因为没有这样的方法链。正确的是先调用open()函数打开文件,然后使用read()方法。

C. with  open()  as  file:  file.read()

with open('filename.txt', 'r') as file:

    content = file.read()

D. read.file() 也是不正确的,read()方法应该在打开文件对象之后使用,而不是在open()函数之前。

**答案**: C

  1. 考虑以下代码段,运行后列表numbers的内容是什么?

numbers = [1, 2, 3, 4]

numbers.append(numbers.pop(0))

print(numbers)

结果;[2, 3, 4, 1]

在Python中,要读取某个文件的内容时,首先使用的内置函数是:

  1. open()

file = open('filename.txt', 'r')  # 打开文件用于读取

content = file.read()  # 读取文件内容

file.close()  # 关闭文件

或者

with open('filename.txt', 'r') as file:

    content = file.read()  # 读取文件内容

# 文件在with块结束时自动关闭

#### 1. 统计学中,以下哪种方法用于描述数据集的中心趋势?

A. 方差  是衡量数据分散程度的统计量,表示每个数据点与均值的差的平方的平均值。

B. 均值  

C. 标准差  也是衡量数据分散程度的统计量,它是方差的平方根。

D. 偏度  是描述数据分布形态的统计量,用来衡量数据分布的不对称性。

**答案**: B

#### 2. 假设某事件 A 的概率为 0.4,事件 B 的概率为 0.5,且 A 和 B 互斥,A 或 B 发生的概率是多少?

A. 0.9  

B. 0.2  

C. 0.7  

D. 1.0  

**答案**: A

#### 3. 数据集中 75% 的数据点小于第几百分位?

A. 第 50 百分位  

B. 第 90 百分位  

C. 第 75 百分位  

D. 第 25 百分位  

**答案**: C

#### 4. 3. 数据集中 75% 的数据点小于第几百分位?

A. 第 50 百分位  

B. 第 90 百分位  

C. 第 75 百分位  

D. 第 25 百分位

**答案**: A

#### 5. 方差的平方根被称为:

A. 均值  

B. 标准差  

C. 中位数  

D. 四分位距  

**答案**: B

#### 6. 以下哪种描述的是一个事件发生的可能性?

A. 均值  

B. 方差  

C. 概率  

D. 中位数  

**答案**: C

#### 7. 如果两个事件是独立的,它们发生的联合概率等于:

A. 两者概率的和  

B. 两者概率的差  

C. 两者概率的乘积  

D. 两者概率的比值  

**答案**: C

#### 8. 样本均值是总体均值的:

A. 无偏估计  

B. 有偏估计  

C. 精确估计  

D. 无法确定  

**答案**: A

#### 9. 假设一项测试的正态分布均值为 100,标准差为 15,得分为 115 的人在该分布中的 Z 值是多少?

A. 1.0  

B. 2.0  

C. 0.5  

D. -1.0  

**答案**: A

#### 10. 数据的离散程度可以通过以下哪种统计量来描述?

A. 均值  

B. 中位数  

C. 方差  

D. 百分位数  

**答案**: C

#### 11. 当观测值分布呈对称时,以下哪种度量最合适?

A. 均值  

B. 中位数  

C. 众数  

D. 极差  

**答案**: A

#### 12. 一个数据集的极差(Range)是指:

A. 最大值与最小值的差  

B. 最大值与平均值的差  

C. 最小值与中位数的差  

D. 平均值与标准差的差  

**答案**: A

#### 13. 一个样本中,均值比中位数小,表示数据是:

A. 正偏  正偏(右偏)分布中,均值会大于中位数,因为数据的尾部向右延伸,有较多的较大值。

B. 负偏  而在负偏(左偏)分布中,均值会小于中位数,因为数据的尾部向左延伸,有较多的较小值。

C. 对称  对称分布的均值和中位数通常是相等的。

D. 无法判断  

**答案**: B

#### 14. 一个总体中包含 1000 个元素,样本量为 100。每个样本的标准误是多少?

A. 标准差除以 10  

B. 标准差乘以 10  

C. 标准差除以 100  

D. 标准差乘以 100  

**答案**: A

#### 15. 在正态分布中,68.27% 的数据落在:68-95-99.7法则(经验法则)

A. 1 个标准差范围内  

B. 2 个标准差范围内  

C. 3 个标准差范围内  

D. 0.5 个标准差范围内  

**答案**: A

### **统计学 (概率论与数据分析基础) 测试选择题 (继续)**

#### 16. 假设某总体的标准差为 20,样本量为 100。样本均值的标准误是多少?

A. 2  20/根号100=2

B. 20  

C. 200  

D. 0.2  

**答案**: A

#### 17. 在概率论中,两个事件的联合概率 P(A ∩ B) 是指:

A. 事件 A 和 B 发生的概率之和  

B. 事件 A 或 B 发生的概率  

C. 事件 A 发生而 B 不发生的概率  

D. 事件 A 和 B 同时发生的概率  

**答案**: D

#### 18. 样本的期望值可以用来:

A. 估计样本标准差  

B. 估计总体期望值  

C. 估计样本中位数  

D. 估计总体标准差  

**答案**: B

#### 19. 假设一个实验的结果只有两种可能,事件发生的概率为 p,事件不发生的概率为 1-p,这种实验被称为:

A. 泊松实验  

B. 二项实验  

C. 正态实验  

D. 指数实验  

**答案**: B

#### 20. 在一项二项分布试验中,事件 A 的概率为 0.6,进行 5 次试验后,事件 A 发生 3 次的概率为多少?

A. 0.3456  

B. 0.6  

C. 0.5  

D. 0.3125  

**答案**: A

#### 1. 以下哪一个是计算机的主要部件?

A. 键盘  

B. 显示器  

C. 主板  

D. 打印机  

**答案**: C

#### 2. 在计算机中,RAM 是指:

A. 随机存取存储器  

B. 只读存储器  

C. 缓存  

D. 硬盘  

**答案**: A

#### 3. 以下哪一项是网络通信中常用的协议?

A. FTP  

B. HTTP  

C. TCP/IP  

D. 以上都是  

**答案**: D

#### 4. 下列哪种设备负责将局域网(LAN)连接到广域网(WAN)?

A. 交换机  

B. 路由器  

C. 集线器  

D. 网卡  

**答案**: B

#### 5. 以下哪种存储器属于非易失性存储器?

A. RAM  

B. ROM  

C. 缓存  

D. 寄存器  

**答案**: B

#### 6. IP 地址的作用是:

A. 标识主机的物理位置  

B. 标识网络设备在网络中的位置  

C. 加快数据传输  

D. 加密数据  

**答案**: B

#### 7. 二进制数 1010 等于十进制数:

A. 5  

B. 10  

C. 15  

D. 20  

**答案**: B

#### 8. 在计算机网络中,以下哪种设备工作在 OSI 模型的第 2 层?

A. 路由器  

B. 集线器  

C. 网桥  

D. 交换机  

**答案**: D

#### 9. 以下哪一项是高速缓存的主要作用?

A. 储存用户数据  

B. 储存临时文件  

C. 提高 CPU 处理数据的速度  

D. 存放操作系统  

**答案**: C

#### 10. 哪种存储设备可以长期保存数据,即使断电后也不会丢失?

A. RAM  

B. ROM  

C. CPU 缓存  

D. SSD  

**答案**: D

#### 11. CPU 的核心功能是:

A. 存储数据  

B. 执行指令和处理数据  

C. 管理内存  

D. 控制显示设备  

**答案**: B

#### 12. 局域网(LAN)中,通常使用以下哪种拓扑结构?

A. 星型拓扑  

B. 环型拓扑  

C. 总线型拓扑  

D. 以上都有可能  

**答案**: D

#### 13. IPv4 地址的长度是多少?

A. 16 位  

B. 32 位  

C. 64 位  

D. 128 位  

**答案**: B

#### 14. 下列哪个协议用于在网络上解析域名到 IP 地址?

A. HTTP  

B. FTP  

C. DNS  

D. SMTP  

**答案**: C

#### 15. 在数据链路层,数据单位被称为:

A. 数据包  

B. 帧  

C. 比特  

D. 段  

**答案**: B

#### 16. 以下哪种存储设备访问速度最快?

A. 硬盘  

B. U 盘  

C. 光盘  

D. SSD  

**答案**: D

#### 17. 网络带宽是指:

A. 数据传输的速度  

B. 网络设备的处理能力  

C. 网络中连接的设备数量  

D. 网络中的数据包大小  

**答案**: A

#### 18. 在 OSI 七层模型中,负责加密与解密的层是:

A. 物理层  

B. 数据链路层  

C. 会话层  

D. 表示层  

**答案**: D

#### 19. 下列哪一项是用来保护计算机网络免受攻击的硬件设备?

A. 防火墙  

B. 交换机  

C. 路由器  

D. 集线器  

**答案**: A

#### 20. 计算机硬盘存储器的容量通常以什么单位衡量?

A. 比特  

B. 字节  

C. 赫兹  

D. 瓦特  

**答案**: B

#### 21. 局域网(LAN)和广域网(WAN)的主要区别是什么?

A. 连接的设备数量  

B. 覆盖的地理区域  

C. 使用的传输介质  

D. 传输的速度  

**答案**: B

#### 22. 交换机和路由器的主要区别是?

A. 交换机用于连接网络设备,路由器用于连接多个网络  

B. 交换机提供 IP 地址,路由器传输数据  

C. 交换机进行数据加密,路由器控制流量  

D. 交换机用于无线网络,路由器用于有线网络  

**答案**: A

#### 1. 机器学习中的 "监督学习" 是指:

A. 没有标签的数据学习  

B. 有标签的数据学习  

C. 使用未标注数据来进行预测  

D. 数据压缩  

**答案**: B

#### 2. 在线性回归模型中,目标是:

A. 最小化误差  

B. 最大化误差  

C. 最小化方差  

D. 最大化方差  

**答案**: A

#### 3. K 近邻算法 (KNN) 属于哪一类机器学习算法?

A. 回归  

B. 聚类  

C. 分类  

D. 生成模型  

**答案**: C

#### 4. 下列哪一个不是用于评估分类模型性能的指标?

A. 准确率  

B. 召回率  

C. 均方误差  

D. F1 分数  

**答案**: C

#### 5. 决策树算法中的 "信息增益" 是指:

A. 分类的错误率  

B. 特征提供的有用信息  

C. 数据噪声的比例  

D. 分类模型的准确性  

**答案**: B

#### 6. 支持向量机 (SVM) 是一种:

A. 回归算法  

B. 分类算法  

C. 聚类算法  

D. 降维算法  

**答案**: B

#### 7. 在机器学习中,过拟合指的是:

A. 模型对训练数据的拟合不足  

B. 模型在训练数据上表现很好,但在新数据上表现较差  

C. 模型对新数据的拟合不足  

D. 模型能适应不同的数据集  

**答案**: B

#### 8. 正则化技术的作用是:

A. 提高模型的复杂度  

B. 增加数据量  

C. 降低模型的复杂度,防止过拟合  

D. 提高模型的运行速度  

**答案**: C

#### 9. 随机森林算法是基于以下哪种算法的集成方法?

A. 线性回归  

B. 决策树  

C. 支持向量机  

D. K-均值  

**答案**: B

#### 10. 在神经网络中,隐藏层的主要作用是:

A. 直接输出预测值  

B. 提高模型的计算速度  

C. 通过非线性变换提取数据特征  

D. 减少误差  

**答案**: C

#### 11. K-均值聚类算法的目标是:

A. 将数据分类  

B. 最大化聚类间的相似度  

C. 最小化聚类内的相似度  

D. 最小化聚类内的误差平方和  

**答案**: D

#### 12. 下列哪种算法通常用于降维?

A. 主成分分析 (PCA)  

B. 线性回归  

C. K-均值聚类  

D. 支持向量机 (SVM)  

**答案**: A

#### 13. 在梯度下降算法中,学习率的作用是什么?

A. 控制梯度下降的方向  

B. 控制每一步的下降幅度  

C. 控制模型的复杂度  

D. 控制模型的精确度  

**答案**: B

#### 14. 在训练神经网络时,反向传播算法的主要目的是:

A. 计算输出层的结果  

B. 更新权重以减少误差  

C. 增加隐藏层的数量  

D. 提高训练数据的数量  

**答案**: B

#### 15. 贝叶斯分类器基于以下哪一条定理?

A. 中心极限定理  

B. 高斯定理  

C. 贝叶斯定理  

D. 皮尔逊定理  

**答案**: C

#### 16. 下列哪一项是处理回归问题的算法?

A. 逻辑回归  

B. 线性回归  

C. K-最近邻 (KNN)  

D. 随机森林分类器  

**答案**: B

#### 17. 在随机森林算法中,树之间的差异是通过以下哪种方法引入的?

A. 使用不同的目标变量  

B. 使用不同的特征子集和数据子集  

C. 使用不同的损失函数  

D. 使用不同的输出层  

**答案**: B

#### 18. 在机器学习中,交叉验证的目的是:

A. 提高模型的训练速度  

B. 防止过拟合,评估模型的泛化能力  

C. 增加模型的复杂性  

D. 减少训练数据的大小  

**答案**: B

#### 19. 下列哪种损失函数通常用于回归问题?

A. 交叉熵损失  

B. Hinge 损失  

C. 均方误差  

D. 指数损失  

**答案**: C

#### 20. 在 K-均值聚类算法中,聚类中心的初始化方法会影响最终的结果。为解决这一问题,常用的改进方法是:

A. K-最近邻 (KNN)  

B. K-均值++  

C. 随机森林  

D. 主成分分析 (PCA)  

**答案**: B

### 重新打乱顺序的填空题及答案

1. **填空**: 在监督学习中,目标变量是已知的,模型通过 **_______** 数据进行训练。  

   **答案**: 标记

2. **填空**: **_______** 是一种基于树结构的算法,可以用于分类和回归任务,其通过树的分支来做出决策。  

   **答案**: 决策树

3. **填空**: 支持向量机 (SVM) 中寻找的最优决策边界称为 **_______**。  

   **答案**: 最大间隔超平面

4. **填空**: 在 Python 中,使用 **_______** 库可以绘制数据的可视化图表,如散点图和折线图。  

   **答案**: Matplotlib

5. **填空**: **_______** 是用于衡量分类模型预测准确性的重要指标,计算公式为正确预测结果占总预测结果的比例。  

   **答案**: 准确率

6. **填空**: 在监督学习中,**_______** 学习是一种通过与环境交互来学习的方式,通常用于决策问题。  

   **答案**: 强化学习

7. **填空**: **_______** 是自然语言处理中的一种技术,用于将文本数据转换为模型可处理的向量形式。  

   **答案**: 词嵌入 (Word Embedding)

8. **填空**: **_______** 学习使用标记数据训练模型来进行预测或分类; **_______** 学习则使用未标记数据来寻找数据的隐藏结构或模式。  

   **答案**: 监督,无监督

9. **填空**: 在深度学习中,**_______** 神经网络是一种能够处理图像数据的神经网络结构。  

   **答案**: 卷积

10. **填空**: **_______** 是神经网络中的一个函数,决定神经元是否应该被激活。它引入非线性,使得神经网络可以学习和表示复杂的模式。  

    **答案**: 激活函数

11. **填空**: 在卷积神经网络中,**_______** 操作通过将图像分成若干小区域并分别处理,以减少计算量并提取特征。  

    **答案**: 池化 (Pooling)

12. **填空**: 在神经网络中,反向传播算法通过 **_______** 计算误差的梯度来更新权重。  

    **答案**: 梯度下降

13. **填空**: 在逻辑回归模型中,**_______** 函数将线性回归的结果映射到 0 和 1 之间,进而预测二分类结果。  

    **答案**: Sigmoid

14. **填空**: 数据的 **_______** 是度量数据离散程度的指标,常见的指标有方差和标准差。  

    **答案**: 离散程度

15. **填空**: 逻辑回归的损失函数通常采用 **_______** 损失,适用于二分类问题。  

    **答案**: 交叉熵

16. **填空**: 在集成学习中,**_______** 是通过多个弱分类器的加权投票或加权平均来提高模型性能的方法。  

    **答案**: 提升 (Boosting)

17. **填空**: **_______** 是一种基于多个决策树的集成学习方法,通过多数投票或平均决策来提高模型的准确性和稳健性。  

    **答案**: 随机森林

18. **填空**: 在聚类算法中,K 均值算法通过最小化 **_______** 来寻找最佳的聚类中心。  

    **答案**: 簇内误差平方和

19. **填空**: **_______** 是用于计算模型准确率的评价指标,特别适用于不平衡分类问题。  

    **答案**: AUC-ROC 曲线

20. **填空**: 数据的 **_______** 是指数据的中心趋势,常见的指标有均值、中位数和众数。  

    **答案**: 集中趋势

21. **填空**: **_______** 是评估二分类模型性能的重要指标,表示实际为正类但被错误分类为负类的样本数。  

    **答案**: 假负类 (False Negative)

22. **填空**: 在机器学习中,**_______** 是用来防止模型过拟合的技术,通过对特征进行随机组合来训练不同的模型。  

    **答案**: 随机森林

23. **填空**: **_______** 是一种对称的概率分布,数据在平均值附近集中,形成钟形曲线。其特征是均值、中位数和众数相等。  

    **答案**: 正态分布

24. **填空**: 标准化将不同特征的数据缩放到相同范围,以便在比较时消除量纲的影响,特别是在 **_______** 和 **_______** 中常用。  

    **答案**: 回归分析,机器学习算法

25. **填空**: **_______** 是一种避免过拟合的正则化技术,通常通过随机丢弃一些神经元来提高模型的泛化能力。  

    **答案**: Dropout

26. **填空**: **_______** 是在机器学习中减少维度的一种方法,它通过将原始特征组合为若干个主成分来简化数据。  

    **答案**: 降维

27. **填空**: **_______** 是衡量分类器性能的混淆矩阵中的一项指标,表示模型的精确度与召回率的调和平均。  

    **答案**: F1 值

28. **填空**: 在数据预处理中,**_______** 是一种处理缺失数据的方法,通常将缺失值替换为均值或中位数。  

    **答案**: 插补

29. **填空**: 在线性回归中,回归系数的估计可以通过 **_______** 法求解。  

    **答案**: 最小二乘

30. **填空**: 在机器学习中,**_______** 是一种特征缩放方法,常用于将不同量纲的特征缩放到相同的范围。  

    **答案**: 标准化

31. **填空**: **_______** 是处理连续变量的一种无监督学习方法,常用于降低数据的维度。  

    **答案**: 主成分分析 (PCA)

32. **填空**: 随机梯度下降法 (SGD) 在每次迭代中只使用一个或少量样本来更新 **_______**。  

    **答案**: 权重

33. **填空**: **_______** 监控并控制网络流量,根据设定的安全规则允许或阻止流量,通过过滤不安全的或不需要的流量来保护网络。  

    **答案**: 防火墙

34. **填空**: **_______** 是计算机的主要存储器,它用于临时存储正在使用的数据和指令,具有快速读写速度。  

    **答案**: RAM

35. **填空**: **_______** 是一种无监督学习算法,适用于降维分析,用来寻找数据的主成分。  

    **答案**: 主成分分析 (PCA)

36. **填空**: 在机器学习中,**_______** 学习是一种通过多个弱分类器的加权投票或加权平均来提高模型性能的方法。  

    **答案**: 提升 (Boosting)

37. **填空**: **_______** 是高速存储设备,存储常用数据以提高访问速度。它减少了 CPU 直接访问慢速存储设备的次数,从而提升性能。  

    **答案**: 缓存

38. **填空**: **_______** 是表示数据分布的图形,通常用来展示数据的频率。  

    **答案**: 直方图

39. **填空**: 交叉验证是一种评估模型泛化能力的技术,常见的交叉验证方法是 **_______**。  

    **答案**: K 折交叉验证

40. **填空**: 在 K 均值聚类算法中,优化的目标是最小化 **_______**,这表示数据点与其簇中心的距离。  

**答案**: 簇内误差平方和

41. **填空**: **_______** 是一种通过防止相同数据包多次传输来优化网络的协议,用于确保数据在不可靠的网络上传输时仍然能够完整送达。  

   **答案**: TCP(传输控制协议)

42. **填空**: 在网络中,**_______** 是用于将域名转换为 IP 地址的系统,它使得用户可以通过易记的名字访问网络资源。  

   **答案**: DNS(域名系统)

43. **填空**: **_______** 是指在因特网或局域网中,数据通过多个节点进行传输,每个节点决定下一跳的路径,以确保数据到达目的地。  

   **答案**: 路由

44. **填空**: **_______** 是一种在统计学中用来评估不同组之间均值差异的分析方法,通常用于比较三组或以上的样本均值。  

   **答案**: 方差分析(ANOVA)

45. **填空**: **_______** 是网络安全中的一种攻击,攻击者通过伪造 IP 地址发起大量数据包,导致目标网络过载和服务不可用。  

   **答案**: DDoS(分布式拒绝服务攻击)

46. **填空**: **_______** 是描述一组数据中变化程度的统计量,常用的有方差和标准差。  

   **答案**: 离散度

47. **填空**: 在网络安全中,**_______** 是一种加密协议,用于保护在互联网传输中的敏感信息,如密码和信用卡信息。  

   **答案**: SSL(安全套接层)/ TLS(传输层安全)

48. **填空**: **_______** 是用于在两个或多个网络之间进行数据转发的设备,通过选择合适的路径来传递数据包。  

   **答案**: 路由器

49. **填空**: **_______** 是一种常见的假设检验方法,用于评估数据是否与某个特定的理论分布相符。  

   **答案**: 卡方检验

50. **填空**: **_______** 是一种网络架构,用于将多个局域网或广域网连接在一起,允许设备在不同的网络中进行通信。  

    **答案**: VPN(虚拟专用网络)

51. **填空**: 在统计学中,**_______** 是表示数据集各个观测值与均值的平方差的平均值,用于度量数据的波动程度。  

    **答案**: 方差

52. **填空**: **_______** 是一种统计方法,用于检测两个变量之间是否存在线性关系,并通过回归方程预测一个变量对另一个变量的影响。  

    **答案**: 线性回归

53. **填空**: **_______** 是通过计算大样本量的数据从而估计总体参数的一种方法,在现代统计中应用广泛。  

    **答案**: 最大似然估计(MLE)

54. **填空**: **_______** 是统计学中用于对比两个相关样本之间差异的非参数检验,适用于样本不满足正态分布的情况。  

    **答案**: 威尔科克森符号秩检验

55. **填空**: **_______** 是一种测量离散数据的集中趋势的指标,它表示在一组数据中出现次数最多的值。  

    **答案**: 众数

56. **填空**: **_______** 是一种在统计推断中用于计算置信区间的技术,通过多次重抽样来估计总体的统计量。  

    **答案**: Bootstrap(自助法)

57. **填空**: **_______** 是一种经典的统计假设检验方法,用于比较两组样本的均值差异是否显著。  

    **答案**: t 检验

58. **填空**: 在网络安全中,**_______** 是一种攻击手段,攻击者通过诱导用户访问恶意网站或下载恶意软件,从而窃取数据或破坏系统。  

    **答案**: 钓鱼攻击

59. **填空**: **_______** 是一种非对称加密算法,用于在互联网上安全地传输数据,其公钥和私钥由不同的密钥生成。  

    **答案**: RSA

60. **填空**: 在概率论中,**_______** 是指事件 A 和事件 B 共同发生的概率,通常用来表示两事件是否有相互关系。  

**答案**: 联合概率

  1. 读取data.xlsx,选择height列值在130160之间的所有行(包含130160),并打印出来

import pandas as pd# 读取Excel文件

df = pd.read_excel('data.xlsx')# 筛选height列值在130到160之间的所有行

filtered_df = df[(df['height'] >= 130) & (df['height'] <= 160)]

print(filtered_df)# 打印筛选后的结果

  1. 读取data.xlsx,并打印height列众数、中位数、平均数、最大值、最小值。

import pandas as pd# 读取Excel文件

df = pd.read_excel('data.xlsx')# 计算height列的统计数据

mode = df['height'].mode()  # 众数

median = df['height'].median()  # 中位数

mean = df['height'].mean()  # 平均数

max_value = df['height'].max()  # 最大值

min_value = df['height'].min()  # 最小值

# 打印统计数据

print(f"众数: {mode[0]}")

print(f"中位数: {median}")

print(f"平均数: {mean}")

print(f"最大值: {max_value}")

print(f"最小值: {min_value}")

  1. 编写两个函数分别计算基尼系数(gini)和信息熵(entropy)。

import numpy as np

def gini(y_true):

    """

    计算给定标签的基尼系数。

    参数:

    y_true -- 真实的标签列表或数组

    返回:

    基尼系数

    """

    # 计算类别的频率

    class_probabilities = np.mean(y_true == np.unique(y_true), axis=0)

    # 计算基尼系数

    gini_index = 1 + np.sum(class_probabilities * (1 - class_probabilities))

    return gini_index

def entropy(y_true):

    """

    计算给定标签的信息熵。

    参数:

    y_true -- 真实的标签列表或数组

    返回:

    信息熵

    """

    # 计算类别的频率

    class_probabilities = np.mean(y_true == np.unique(y_true), axis=0)

    # 计算信息熵

    entropy_value = -np.sum(class_probabilities * np.log2(class_probabilities))

    return entropy_value

# 示例使用

# 假设y_true是一个包含真实标签的数组

y_true = np.array([1, 1, 2, 2, 2, 3, 3, 3, 3])

print("基尼系数:", gini(y_true))

print("信息熵:", entropy(y_true))

  1. 用while循环语法计算1+2+....+100的和偶数

# 初始化变量

odd_sum = 0  # 奇数和

even_sum = 0  # 偶数和

number = 1  # 当前数字

# 使用while循环计算1到100的奇数和与偶数和

while number <= 100:

    if number % 2 == 0:

        even_sum += number  # 如果是偶数,加到偶数和

    else:

        odd_sum += number  # 如果是奇数,加到奇数和

    number += 1  # 增加当前数字

# 打印结果

print("奇数和:", odd_sum)

print("偶数和:", even_sum)

  1. 编写一个Python训练(算法自选择,回归问题)函数 train(df, xindex, yindex),该函数接受一个Pandas DataFrame df,一个自变量列名集合 xindex和一个因变量列名yindex,返回模型文件名。

import pandas as pd

from sklearn.model_selection import train_test_split

from sklearn.linear_model import LinearRegression

from sklearn.metrics import mean_squared_error

import joblib

def train(df, xindex, yindex):

    """

    训练一个线性回归模型并保存模型。

    参数:

    df -- pandas DataFrame,包含数据

    xindex -- 自变量列名的列表

    yindex -- 因变量列名的字符串

    返回:

    模型文件名

    """

    # 从DataFrame中提取自变量和因变量

    X = df[xindex]

    y = df[yindex]

    # 划分训练集和测试集

    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

    # 创建线性回归模型

    model = LinearRegression()

    # 训练模型

    model.fit(X_train, y_train)

    # 预测测试集

    y_pred = model.predict(X_test)

    # 计算均方误差

    mse = mean_squared_error(y_test, y_pred)

    print(f"均方误差: {mse}")

    # 保存模型

    model_filename = 'linear_regression_model.pkl'

    joblib.dump(model, model_filename)

return model_filename

# 示例使用

# 假设你有一个DataFrame 'df',其中包含自变量列 'feature1', 'feature2' 和因变量列 'target'

# df = pd.read_csv('your_data.csv')  # 加载数据

# model_file = train(df, ['feature1', 'feature2'], 'target')

# print("模型已保存为:", model_file)

  1. 编写一个Python预测函数 predict(X,model_name),该函数接受一个自变量数据集合 X 和模型名字(题5输出的模型名字),返回预测结果。
  2. 编写一个函数,输入整数 n,生成包含前 n 个斐波那契数的列表。

def fibonacci(n):

    """

    生成包含前 n 个斐波那契数的列表。

    参数:

    n -- 要生成的斐波那契数的个数

    返回:

    包含前 n 个斐波那契数的列表

    """

    if n <= 0:

        return []

    elif n == 1:

        return [0]

    else:

        fib_sequence = [0, 1]

        while len(fib_sequence) < n:

            next_fib = fib_sequence[-1] + fib_sequence[-2]

            fib_sequence.append(next_fib)

        return fib_sequence[:n]

# 示例使用

n = 10

print(f"前 {n} 个斐波那契数:", fibonacci(n))

补齐程序,用for循环语法计算1+2+...+100的偶数和。(注意使用半角符号,变量前后无需填写空格)[编程题]

#!/usr/bin/python3

res = 0

for num in range(1, 101):  # 填空:range(1, 101),生成1到100的数字

    if num % 2 == 0:  # 填空:num % 2 == 0,判断是否为偶数

        res += num

print("偶数的和:", res)

冒泡排序:

#!/usr/bin/python3

def bubble_sort(arr):

    n = len(arr)

    # 遍历所有数组元素

    for i in range(n):

        # Last i elements are already in place

        for j in range(0, n-i-1):

            # 遍历数组从0到n-i-1

            # 交换元素

            if arr[j] > arr[j+1]:  # 填空:arr[j] > arr[j+1],如果当前元素大于下一个元素,则交换

                arr[j], arr[j+1] = arr[j+1], arr[j]

    return arr

# 测试数组

test_arr = [64, 34, 25, 12, 22, 11, 90]  # 调用函数,打印排序后的数组

sorted_arr = bubble_sort(test_arr)

print("Sorted array is:", sorted_arr)

机器学习方法分类知识点:

分类(Classification):

算法:

逻辑回归(Logistic Regression):用于二分类问题,也可以扩展到多分类。

决策树(Decision Trees):适用于处理有明确规则的问题。

随机森林(Random Forests):用于处理大型数据集,抗过拟合能力强。

支持向量机(Support Vector Machines, SVM):在高维空间中表现良好,适用于复杂的分类问题。

K最近邻(K-Nearest Neighbors, KNN):简单有效,适用于小数据集。

朴素贝叶斯(Naive Bayes):基于概率理论,适用于文本分类等。

神经网络(Neural Networks):强大的模型,适用于复杂的模式识别任务。

应用场景:预测离散标签,如垃圾邮件检测(是垃圾邮件或不是垃圾邮件)或者识别图片中的对象是猫还是狗。垃圾邮件检测;疾病诊断;图像识别;文本情感分析

回归(Regression):

算法:

线性回归(Linear Regression):用于预测连续值,基于最佳拟合直线。

岭回归(Ridge Regression):线性回归的变体,引入L2正则化项。

LASSO回归(Least Absolute Shrinkage and Selection Operator):线性回归的变体,引入L1正则化项。

决策树回归(Decision Tree Regression):用于处理非线性关系。

随机森林回归(Random Forest Regression):集成多个决策树进行回归。

支持向量回归(Support Vector Regression, SVR):基于SVM的回归方法。

神经网络(Neural Networks):适用于复杂非线性关系的预测。

应用场景:预测连续值,如预测房价、未来销售、股票价格或者明天的天气。房价预测;股票价格预测;销量预测;医疗诊断中的生存时间预测

聚类(Clustering):

算法:

K-Means:将数据点分成K个簇,使得簇内的方差尽可能小。

层次聚类(Hierarchical Clustering):通过创建一个聚类树来逐步合并或分割簇。

DBSCAN(Density-Based Spatial Clustering of Applications with Noise):基于密度的聚类方法,可以识别任意形状的簇。

谱聚类(Spectral Clustering):基于图论中的谱理论,适用于复杂的聚类结构。

应用场景:将数据点分成多个簇,使得同一簇内的数据点相似度高,不同簇的数据点相似度低,例如,市场细分、社交网络分析或者图像分割(给定一个关于用户信息的数据库,自动将用户分组到不同的市场细分中)市场细分;社交网络分析;图像分割;基因表达数据分析

降维(Dimensionality Reduction):

算法:

主成分分析(Principal Component Analysis, PCA):通过线性变换将数据投影到新的坐标系,保留最大的方差。

线性判别分析(Linear Discriminant Analysis, LDA):不仅降维,还考虑了分类标签的信息。

t-分布随机邻域嵌入(t-Distributed Stochastic Neighbor Embedding, t-SNE):用于可视化高维数据。

自编码器(Autoencoders):使用神经网络来学习数据的有效编码。

应用场景:减少数据的维度,同时尽可能保留原始数据的信息;数据可视化;预处理步骤,提高算法效率;特征提取;降噪。

深度学习中,卷积神经网络(CNN)是一种专门用于处理图像数据的神经网络结构。它包含输入层、卷积层、池化层(可选)、激活函数、全连接层以及输出层等部分

混淆矩阵是一种在机器学习中用于评估分类模型性能的工具,它显示了模型预测结果与实际标签之间的关系。混淆矩阵通常用于二分类问题,但也可以扩展到多分类问题。混淆矩阵中的四个基本组成部分是:

真正例(True Positive, TP):模型正确预测为正例的数量。

假负例(False Negative, FN):模型错误预测为负例的正例数量。

假正例(False Positive, FP):模型错误预测为正例的负例数量。

真负例(True Negative, TN):模型正确预测为负例的数量。

基于混淆矩阵,我们可以计算出多个评估指标:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值