第 13 章练习与答案

🌈 关于《AI 零基础 36 讲》课后训练
📚 与正式讲解配套学习
本篇是《AI 零基础 36 讲》的配套课后训练,与对应章节的正式讲解一起使用。整个系列面向初学者,从日常 AI
使用逐步进入编程、模型训练和大模型应用开发。✍️ 先独立作答,再核对答案
训练围绕本章知识安排概念判断、结果分析或动手任务,并提供参考答案与解释。建议先读完对应的正式文章,再独立作答;遇到困难时回看相关例子,最后核对答案。
💻 代码题请亲手运行
观察程序输出,确认自己能解释结果、发现错误并完成修复。做完一道题,也要弄清答案为什么成立。
先自己做
- 四名学生、三门课的成绩数组,shape、ndim 和 size 分别是什么?
(3,)、(1, 3)和(3, 1)各有几个轴?- 对四行三列成绩,按学生与按课程求均分应各用哪个 axis?
(4, 3)和(4,)能直接广播相加吗?怎样把每名学生的调整量作用到所有课程?- 取小周和小陈的 Python、AI 基础成绩并算个人均分。
- 修改基本切片时为什么可能影响原数组?
对照答案
第 1 题分别是 (4, 3)、2 和 12。
第 2 题分别有一个、两个、两个轴。一维数组没有单独指定行或列的朝向。
第 3 题个人均分用 axis=1,课程均分用 axis=0。
第 4 题不能直接广播,右侧的 3 与 4 不对应。把四项调整量 reshape 成 (4, 1)。
第 5 题完整代码如下,数据为虚构教学成绩。
import numpy as np
scores = np.array([[80, 70, 90], [60, 85, 75], [95, 90, 85], [50, 60, 70]])
selected = scores[1:3, ::2]
print(selected)
print(selected.shape)
print(selected.mean(axis=1))
输出如下。
[[60 75]
[95 85]]
(2, 2)
[67.5 90. ]
这里 ::2 表示沿列方向每隔两项取一项,得到列 0 与列 2。
第 6 题基本切片通常共享原数据。需要独立修改时,先调用 copy。布尔索引等方式的复制行为要另查对应规则。
转载自 CSDN-专业IT技术社区
原文链接:https://blog.csdn.net/m0_73879806/article/details/167086063




