吴恩达 第3周第四周一些测试题目


一、第三周


参考此博客,有中文和英文题目和答案

1、关于初始化权重和b为0的问题

Logistic回归的权重w应该随机初始化,而不是全零,因为如果初始化为全零,那么逻辑回归将无法学习到有用的决策   		
边界,因为它将无法“破坏对称性”,是正确的吗?
A.True
B.False

答案:B
因为:
Logistic回归没有隐藏层。 如果将权重初始化为零,则Logistic回归中的第一个示例x将输出零,但Logistic回归的导数取决于不是零的输入x(因为没有隐藏层)。 因此,在第二次迭代中,如果x不是常量向量,则权值遵循x的分布并且彼此不同。
看视频我们可以得:dW=dz x
他没有隐藏层,dw取决于x 所以不同的x得到的权重会不同,所以没关系。
但是对于有隐藏层的神经网络就不可以初始化为0了,因为反向传播时取决于da,因为神经元做一样的工作,导致da同,所以即使迭代多次,层中的每个神经元节点都会计算出与其他神经元节点相同的东西。

二、第四周

1 、层间for循环

1、向量化允许您在L层神经网络中计算前向传播,而不需要在层(l = 1,2,…,L)上显式的使用for-loop(或任何其他显式	
迭代循环),正确吗?

A 正确
B 错误

答案:B 在层间,我们不可避免地必须使用for循环来向前迭代。

2、w和b初始化

2、假设我们将n^ [l]的值存储在名为layers的数组中,如下所示:layer_dims = [n_x,4,3,2,1]。 		
因此,第1层有四个隐藏单元,第2层有三个隐藏单元,依此类推。 您可以使用哪个for循环初始化模型参数?

答案:吴老师视频中有讲
w[L] : (n[L], n[L-1])
b[L]: ( n[L], 1)

for(i in range(1, len(layer_dims))):
  parameter[‘W’ + str(i)] = np.random.randn(layers[i], layers[i - 1])) * 0.01
  parameter[‘b’ + str(i)] = np.random.randn(layers[i], 1) * 0.01

需要注意的是randn不能写成rand!!np.random.randn()是生成标准状态分布,取值大多在-3~ +3之间,有负有正;而np.random.rand()则是生成0~1之间的随机均匀分布。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值