当前位置: 代码迷 >> 综合 >> Coursera-MachineLearning-Week10题目整理
  详细解决方案

Coursera-MachineLearning-Week10题目整理

热度:111   发布时间:2023-11-11 06:56:39.0

编号按照对应的内容,1-1代表第一大部分遇到的第一题,R代表Review,C代表运行的代码(Code)。

1-1

1-1

解:D

首先应该做的事是去检查一个这么大规模的训练集是否真的必要,也许我们只用1000个训练集也能获得较好的效果,我们可以绘制学习曲线来帮助判断。

1-2

1-2

解:AB

训练数据集很大的时候,随机梯度下降会比梯度下降快。

1-3

1-3

解:C

1-4

1-4

解:BD

A:选择一个很小的学习率,不能加快学习速度,错误。

C:如果我们希望随机梯度下降收敛到(局部)极小,而不是在它周围漂移振荡,我们应该慢慢减小o随时间的推移,错误。

2-1

2-1

解:AC

使用在线学习可以适应用户随时间改变的特性,允许我们从连续的数据流中学习。

2-2

2-2

解:B

使用了十台机器,那么每台机器计算数据的1/10上的前向传播和反向传播,以计算与该数据的1/10相关的导数。

R

R1-1

R1-1

解:D

当代价函数呈上升趋势的时候,可以尝试使用一个更小的学习率α。

R1-2

R1-2

解:AD

A:在随机梯度下降算法执行之前,需要先随机打乱训练集,正确。

B:随机梯度未必会随着每次迭代下降,错误。

C:在随机梯度下降中,我们在每一次更新θ之前都计算一次代价,然后每 次迭代后,求出这x 次对训练实例计算代价的平均值,然后绘制这些平均值与x 次迭代的次数之间的函数图表,错误。

D:可以使用梯度检查的方法来检查梯度下降算法,正确。

R1-3

R1-3

解:CD

A:在线学习也需要学习率α,错误。

B:我们不会使用一个固定的数据集,我们会做的是获取一个用户样本,从那个样本中学习,然后丢弃那个样本并继续下去,错误。

R1-4

R1-4

解:BC

凡是需大量计算的算法,便可考虑MapReduce来进行计算。

A:在线学习每次都是小的计算量,因此不需要MR。

D:使用随机梯度下降不需要计算大的数据量,因此也不需要MR。

R1-5

R1-5

解:BCD

A:使用N台电脑,我们则需要分割数据集成N份。

B:多核并行计算,正确。

C:为了将学习算法并行化,首先要解决的是如何将算法的主要工作表示为训练实例的函数和,正确。

D:我们每台机器都会进行参数更新,正确。