week1-2练习题及答案

单变量线性回归,线性代数,多元线性回归,Octave练习

Posted by Hilda on March 4, 2025

吴恩达课程系列

1-1 欢迎参加《机器学习》课程【机器学习简介/例子】

1-2 什么是机器学习【机器学习的2个定义和分类】

1-3监督学习【监督学习的定义,监督学习的分类(回归与分类)】

1-4无监督学习【无监督学习的定义,无监督学习问题的分类(聚类/信号分离/降维)】

2-1模型描述【如何描述一个模型(用一些符号),单变量线性回归是什么?】

2-2~2-4代价函数【代价函数的数学定义、代价函数的直观理解】

2-5 梯度下降【梯度下降的数学原理】

2-6梯度下降知识点总结【导数项、学习率的直观理解】

2-7线性回归的梯度下降【线性回归问题运用梯度下降法(求偏导)】

3-线性代数回顾【矩阵,向量,矩阵乘法,矩阵求逆转置(我补充了利用Numpy和Pandas进行运算的方法】)

4-多变量线性回归【梯度下降应用于多变量,特征缩放,多项式回归,正规方程及其不可逆性】

Week 1 | 1 介绍

第 1 题

一个计算机程序从经验E中学习任务T,并用P来衡量表现。并且,T的表现P随着经验E的增加而提高。 假设我们给一个学习算法输入了很多历史天气的数据,让它学会预测天气。什么是P的合理选择?

A. 计算大量历史气象数据的过程 B. 以上都不 C. 正确预测未来日期天气的概率 D. 天气预报任务

第 2 题

假设你正在做天气预报,并使用算法预测明天气温(摄氏度/华氏度),你会把这当作一个分类问题还是一个回归问题?

A. 分类 B. 回归

第 3 题

假设你在做股市预测。你想预测某家公司是否会在未来7天内宣布破产(通过对之前面临破产风险的类似公司的数据进行训练)。你会把这当作一个分类问题还是一个回归问题?

A. 分类 B. 回归

第 4 题

下面的一些问题最好使用有监督的学习算法来解决,而其他问题则应该使用无监督的学习算法来解决。以下哪一项你会使用监督学习?(选择所有适用的选项)在每种情况下,假设有适当的数据集可供算法学习。

A. 根据一个人的基因(DNA)数据,预测他/她的未来10年患糖尿病的几率

B. 根据心脏病患者的大量医疗记录数据集,尝试了解是否有不同类患者群,我们可以为其量身定制不同的治疗方案

C. 让计算机检查一段音频,并对该音频中是否有人声(即人声歌唱)或是否只有乐器(而没有人声)进行分类

D. 给出1000名医疗患者对实验药物的反应(如治疗效果、副作用等)的数据,发现患者对药物的反应是否有不同的类别或“类型”,如果有,这些类别是什么

第 5 题

哪一个是机器学习的合理定义?

A. 机器学习从标记的数据中学习

B. 机器学习能使计算机能够在没有明确编程的情况下学习

C. 机器学习是计算机编程的科学

D. 机器学习是允许机器人智能行动的领域

答案

1.C

2.B

3.A

4.AC

解析:要判断哪些问题适合使用监督学习还是无监督学习,需要理解两者的区别:

  • 监督学习:需要有标记的数据集(即输入和对应的输出标签),目标是基于训练数据预测或分类新数据。例如,分类问题(如“是/否”)或回归问题(如预测数值)。
  • 无监督学习:没有标记的数据,目标是发现数据中的模式、结构或分组。例如,聚类或降维。

5.B

Week 1 | 2 单变量线性回归

第 6 题

基于一个学生在大学一年级的表现,预测他在大学二年级表现。 令x等于学生在大学第一年得到的“A”的个数(包括A-,A和A+成绩)学生在大学第一年得到的成绩。预测y的值:第二年获得的“A”级的数量 这里每一行是一个训练数据。在线性回归中,我们的假设\(h_\theta(x)=\theta_0+\theta_1x\),并且我们使用m来表示训练示例的数量。

1
2
3
4
5
| x    | y    |  
| 3    | 2    |  
| 1    | 2    |  
| 0    | 1    |  
| 4    | 3    |  

对于上面给出的训练集(注意,此训练集也可以在本测验的其他问题中引用),m的值是多少?

第 7 题

对于这个问题,假设我们使用第一题中的训练集。并且,我们对代价函数的定义是\(J(\theta_0, \theta_1)=\frac{1}{2m}\sum_{i=1}^m(h_{\theta}(x^{(i)})-y^{(i)})^2\)。求\(J(0,1)\)

第 8 题

令问题1中,线性回归假设的\(\theta_0=-1, \theta_1=2\),求\(h_\theta(6)\)?

第 9 题

代价函数\(J(\theta_0, \theta_1)\)与\(\theta_0, \theta_1\)的关系如图2所示。“图1”中给出了相同代价函数的等高线图。根据图示,选择正确的选项(选出所有正确项)

Image Name

A. 从B点开始,学习率合适的梯度下降算法会最终帮助我们到达或者接近A点,即代价函数\(J(\theta_0, \theta_1)\)在A点有最小值

B. 点P(图2的全局最小值)对应于图1的点C

C. 从B点开始,学习率合适的梯度下降算法会最终帮助我们到达或者接近C点,即代价函数\(J(\theta_0, \theta_1)\)在C点有最小值

D. 从B点开始,学习率合适的梯度下降算法会最终帮助我们到达或者接近A点,即代价函数\(J(\theta_0, \theta_1)\)在A点有最大值

E. 点P(图2的全局最小值)对应于图1的点A

第 10 题

假设对于某个线性回归问题(比如预测房价),我们有一些训练集,对于我们的训练集,我们能够找到一些\(\theta_0, \theta_1\),使得\(J(\theta_0, \theta_1)=0\)。

以下哪项陈述是正确的?(选出所有正确项)

A. 为了实现这一点,我们必须有\(\theta_0=0, \theta_1=0\),这样才能使\(J(\theta_0, \theta_1)=0\)

B. 对于满足\(J(\theta_0, \theta_1)=0\)的\(\theta_0, \theta_1\)的值,其对于每个训练例子\((x^{(i)}, y^{(i)})\),都有\(h_\theta(x^{(i)})= y^{(i)}\)

C. 这是不可能的:通过\(J(\theta_0, \theta_1)=0\)的定义,不可能存在\(\theta_0, \theta_1\)使得\(J(\theta_0, \theta_1)=0\)

D. 即使对于我们还没有看到的新例子,我们也可以完美地预测\(y\)的值(例如,我们可以完美地预测我们尚未见过的新房的价格)

答案:

  1. m=4

  2. 0.5

\[J(0,1)=\frac{1}{2∗4}((3−2)^2+(1−2)^2+(0−1)^2+(4−3)^2)=0.5\]
  1. 11
  2. AE
  3. B 注意:D选项:在现实中(如房价预测),新数据可能受到未建模的变量影响(如位置、市场波动),即使训练集完美拟合,泛化到新数据通常不会完美。

Week 1 | 3 线性代数

第 11 题

image-20250304171805956

第 12 题

image-20250304171857038

第 13 题

image-20250304171920853

第 14 题

image-20250304171936260

第 15 题

image-20250304171953634

答案

11.D

12.

image-20250304172139019

13.

image-20250304172149761

14.2

15.AB

Week 2 | 1 多元线性回归

第 16 题

假设m=4个学生上了一节课,有期中考试和期末考试。你已经收集了他们在两次考试中的分数数据集,如下所示:

期中得分 (期中得分)^2 期末得分
89 7921 96
72 5184 74
94 8836 87
69 4761 78

你想用多项式回归来预测一个学生的期中考试成绩。具体地说,假设你想拟合一个\(h_{\theta}(x)=\theta_0+\theta_1x_1+\theta_2x_2\)的模型,其中\(x_1\)是期中得分,\(x_2\)是\((期中得分)^2\)。此外,你计划同时使用特征缩放(除以特征的“最大值-最小值”或范围)和均值归一化。

标准化后的\(x^{(4)}_2\)特征值是多少?(提示:期中=89,期末=96是训练示例1)

第 17 题

用\(\alpha=0.3\)进行15次梯度下降迭代,每次迭代后计算\(J(\theta)\)。你会发现\(J(\theta)\)的值下降缓慢,并且在15次迭代后仍在下降。基于此,以下哪个结论似乎最可信?

A. \(\alpha=0.3\)是学习率的有效选择。

B. 与其使用\(\alpha\)当前值,不如尝试更小的\(\alpha\)值(比如\(\alpha=0.1\))

C. 与其使用\(\alpha\)当前值,不如尝试更大的\(\alpha\)值(比如\(\alpha=1.0\))

第 18 题

假设您有\(m=14\)个训练示例,有\(n=3\)个特性(不包括需要另外添加的恒为1的截距项),正规方程是\(\theta=(X^TX)^{−1}X^Ty\)。对于给定m和n的值,这个方程中\(\theta,X,Y\)的维数分别是多少?

A. X14×3, y 14×1, \(\theta\) 3×3 B. X 14×4, y 14×1, \(\theta\) 4×1 C. X 14×3, y 14×1, \(\theta\) 3×1 D. X 14×4, y 14×4, \(\theta\) 4×4

第 19 题

假设您有一个数据集,每个示例有m=1000000个示例和n=200000个特性。你想用多元线性回归来拟合参数\(\theta\)到我们的数据。你更应该用梯度下降还是正规方程?

A. 梯度下降,因为正规方程中\(\theta=(X^TX)^{−1}\)中计算非常慢

B. 正规方程,因为它提供了一种直接求解的有效方法

C. 梯度下降,因为它总是收敛到最优\(\theta\)

D. 正规方程,因为梯度下降可能无法找到最优\(\theta\)

第 20 题

以下哪些是使用特征缩放的原因?

A. 它可以防止梯度下降陷入局部最优

B. 它通过降低梯度下降的每次迭代的计算成本来加速梯度下降

C. 它通过减少迭代次数来获得一个好的解,从而加快了梯度下降的速度

D. 它防止矩阵\(X^TX\)(用于正规方程)不可逆(奇异/退化)

答案

16.-0.47

首先计算\((期中得分)^2\)均值:6675.5

然后计算范围=最大值-最小值=4075,则最终结果就是\(\frac{4761-6675.5}{4075}=-0.469815...\)

17.C

18.B

19.A

20.C

Week 2 | 2 OctaveMatlab 练习

第 21 题

假设我首先在Octave/Matlab中执行以下操作:

1
2
A=[1 2;3 4;5 6]
B=[1 2 3;4 5 6]

以下哪项是有效的命令?选出所有正确项(提示:A’表示A的转置)

A. C = A’ + B B. C = B * A C. C = A + B D. C = B’ * A

第 22 题

image-20250304174137822

第 23 题

令A为10x10矩阵,x为10元素向量。您的朋友想计算乘积Ax并编写以下代码:

1
2
3
4
5
6
v = zeros(10, 1);  
for i = 1:10  
  for j = 1:10  
    v(i) = v(i) + A(i, j) * x(j);  
  end  
end  

你将如何不用循环,向量化这段代码?选出所有正确项

A. v = A * x B. v = Ax C. v = x’ * A D. v = sum (A * x)

第 24 题

假设有两个列向量v和w,每个向量都有7个元素(即,它们的维数为7x1)。请考虑以下代码:

1
2
3
4
z = 0;  
for i = 1:7  
  z = z + v(i) * w(i)  
end  

下列哪个矢量化正确计算z?选出所有正确项

A. z = sum (v .* w) B. z = w’ * v C. z = v * w’ D. z = w * v’

第 25 题

在Octave/Matlab中,许多函数可以处理单个数字、向量和矩阵。例如,将sin函数应用于矩阵时,将返回一个新矩阵,其中包含每个元素的sin。但是你必须小心,因为某些函数有不同的行为。假设你有一个7x7矩阵X,你想计算每个元素的对数,每个元素的平方,每个元素加1,每个元素除以4。将结果存储在四个矩阵(A、B、C、D)中。一种方法是使用以下代码:

1
2
3
4
5
6
7
8
for i = 1:7  
  for j = 1:7  
    A(i, j) = log(X(i, j));  
    B(i, j) = X(i, j) ^ 2;  
    C(i, j) = X(i, j) + 1;  
    D(i, j) = X(i, j) / 4;  
  end  
end  

下列哪一项正确计算A、B、C或D?选出所有正确项 A. C = X + 1; B. D = X / 4; C. A = log (X); D. B = X ^ 2;

答案

21.AB

22.AB

23.A

24.AB 注:在 MATLAB 中,.* 表示元素级乘法(逐元素相乘)

25.ABC 注意:A*A 不等于A的每个元素都求平方