神经网络与深度学习——TensorFlow实践(十三)

练习一

1下列______方法不适用于大规模数据集。

  • A.随机梯度下降

  • B.小批量梯度下降

  • C.批量梯度下降

  • D.小批量随机梯度下降

正确答案:C

2下列关于小批量随机梯度下降算法,说法错误的是______。

  • A.每次迭代使用一个小批量样本训练模型

  • B.每次迭代所使用的训练样本数不固定,与整个训练集的样本数量有关

  • C.训练大规模数据时,可以减少训练时间

  • D.能够实现并行运算

正确答案:B

3假设有3000条样本,使用小批量梯度下降法分10批进行训练,下列说法错误的是______。

  • A.每轮训练10个小批量

  • B.每个批的批量大小为300

  • C.每轮训练的样本总数为3000条

  • D.一共需要训练10轮

正确答案:D

梯度下降法的优化

练习二

1关于梯度下降法中学习率的说法,错误的是______。

  • A.学习率设置过小,收敛速度会非常慢

  • B.学习率设置过大可能无法收敛

  • C.学习率在训练过程中必须是一个固定不变的数

  • D.为了兼顾模型的收敛速度和精度,在训练过程中可以动态调整学习率

正确答案:C

2下列______算法中,学习率随着迭代次数的增加而单调减小。

  • A.AdaGrad

  • B.RMSprop

  • C.AdaDelta

  • D.Adam

正确答案:A

3多层神经网络使用梯度下降法,能够保证一定可以达到全局最小值点。

  • A.对

  • B.错

正确答案:B

4小批量样本的选择、批量大小和学习率都会影响小批量梯度下降法的效率。

  • A.对

  • B.错

正确答案:A

5使用小批量随机梯度下降算法训练网络时,为了尽可能减少样本对训练的影响,在每轮训练前最好打乱样本顺序,使样本均匀分布。

  • A.对

  • B.错

正确答案:A

6使用批量梯度下降法时,无需打乱样本数据。

  • A.对

  • B.错

正确答案:A

7训练神经网络时,小批量中的样本数应该尽可能少,才能使模型效率更高、更稳定,同时具有较好的泛化能力。

  • A.对

  • B.错

正确答案:B

8在自适应调整学习率算法中,学习率必须是单调递减的。

  • A.对

  • B.错

正确答案:B

9动量梯度下降法通过当前梯度和历史梯度共同决定参数的更新,在更新参数时其不能保留之前的更新方向。

  • A.对

  • B.错

正确答案:B

10牛顿加速梯度算法通过计算超前梯度,使算法具备了“预见”能力。

  • A.对

  • B.错

正确答案:A

11使用越先进的梯度下降法优化算法,神经网络训练结果一定越好。

  • A.对

  • B.错

正确答案:B

练习三

1下列关于Keras的描述,错误的______。

  • A.Keras能够离开TensorFlow等后端引擎,独立工作

  • B.Keras支持神经网络和深度学习领域的主流算法

  • C.Keras支持多操作系统下的多GPU并行计算

  • D.Keras可作为TensorFlow等深度学习库的前端

正确答案:A

Sequential模型

练习四

1下列说法错误的是______。

  • A.Sequential是Keras中的一种神经网络模型

  • B.Sequential模型只有一组输入和一组输出

  • C.Sequential模型各层按照先后顺序堆叠

  • D.Sequential模型中,只能够添加全连接层

正确答案:D

2定义一个神经网络,假设输入层有4个神经元,第一个隐含层中有10个神经元,则输入层和第一个隐含层之间可训练参数的总数是______。

  • A.10

  • B.40

  • C.44

  • D.50

正确答案:D

3关于tf.keras.layers.Dense()的参数,下列说法中正确的是______。

  • A.inputs:输入网络层的数据

  • B.activation:数据的维数

  • C.input_shape:所使用的激活函数

  • D.Dense:表示使用的是卷积层

正确答案:A

4对下列方法功能的描述,错误的是______。

  • A.summary():查看模型的层数、参数个数等摘要信息

  • B.compile():用来训练神经网络模型

  • C.evaluate():用来评估模型性能

  • D.predict():使用模型完成预测或分类等任务

正确答案:B

5关于model.compile()方法,下列说法中错误的是______。

  • A.compile()方法是配置模型训练方法

  • B.参数loss表示损失函数

  • C.参数optimizer是模型训练使用的激活函数

  • D.参数metrics表示模型训练时输出的评测指标

正确答案:C

6使用神经网络实现鸢尾花分类任务,输出层采用softmax激活函数,若标签值采用自然顺序码的形式表示时,通常采用____ 损失函数。

  • A.mse

  • B.categorical_crossentropy

  • C.binary_crossentropy

  • D.sparse_categorical_crossentropy

正确答案:D

7下列关于fit()方法中参数的使用,错误的说法是______。

  • A.参数epochs表示迭代次数

  • B.参数validation_split表示从训练集中划分多少比例作为测试数据

  • C.参数validation_data和validation_split不能同时有效

  • D.如果参数shuffle设置为Ture,那么在训练之前,完全无需打乱数据了

正确答案:D

8使用神经网络实现鸢尾花分类任务,若标签值和预测值都采用独热编码形式表示时,通常调用______模型性能评估函数。

  • A.tf.keras.metrics.binary_accuracy(threshold=0.5)

  • B.tf.keras.losses.CategoricalAccuracy()

  • C.tf.keras.metrics.categorical_accuracy()

  • D.tf.keras.metrics.SparseCategoricalAccuracy()

正确答案:C

9fit()函数的返回值是一个history对象,该对象的history属性中记录了整个训练过程中性能指标的变化情况。

  • A.对

  • B.错

正确答案:A

Sequential模型实现手写数字识别

练习五

1.本节例程中使用Sequential模型编程实现mnist手写数字识别的步骤是____。

①加载mnist数据

②导入相关库

③数据预处理

④构建神经网络模型

⑤训练模型

⑥配置模型的训练方法

⑦评估模型

  • A.②①③④⑤⑥⑦

  • B.②①③④⑥⑤⑦

  • C.①③②④⑤⑥⑦

  • D.①②③④⑤⑥⑦

正确答案:B

2使用以下程序段建立神经网络,错误的描述是____。

import tensorflow as tf

model = tf.keras.Sequential()

model.add(tf.keras.layers.Flatten(input_shape=(28,28)))

model.add(tf.keras.layers.Dense(128, activation="relu"))

model.add(tf.keras.layers.Dense(10, activation="sotfmax"))

  • A.这是一个全连接神经网络

  • B.这个神经网络有2个隐含层

  • C.这个神经网络有2层

  • D.这个神经网络有1个隐含层

正确答案:B

3采用2层全连接神经网络实现手写数字识别任务,当标签值为0-9的数字、预测值为概率分布时,最好使用____损失函数计算损失。

  • A.mse

  • B.binary_crossentropy

  • C.sparse_binary_crossentropy

  • D.sparse_categorical_crossentropy

正确答案:D

4使用下面语句训练Mnist手写数字识别网络,其中说法正确的是____。

model.fit(x_train, y_train, batchsize=128,  epochs=10, validation_split=0.2)

  • A.共有60000条数据参与模型训练

  • B.共有48000条数据参与模型测试

  • C.共训练10轮

  • D.每轮仅训练128条数据

正确答案:C

5使用下列代码建立神经网络模型,说法错误的是______。

import tensorflow as tf

model = tf.keras.Sequential()

model.add(tf.keras.layers.Flatten( input_shape=(12, )))

model.add(tf.keras.layers.Dense(4, activation="relu"))

model.add(tf.keras.layers.Dense(3, activation="softmax"))

model.summary()

  • A.该模型含有2个隐含层

  • B.该模型输入层和第一隐含层之间有52个可训练参数

  • C.该模型隐含层共有4个节点

  • D.该模型的输入层共有12个节点

正确答案:A

6使用下列代码建立神经网络模型,说法错误的是______。

import tensorflow as tf

model = tf.keras.Sequential()

model.add(tf.keras.layers.Dense(8, activation="relu", input_shape=(4, )))

model.add(tf.keras.layers.Dense(4, activation="relu"))

model.add(tf.keras.layers.Dense(3, activation="softmax"))

model.summary()

  • A.这个神经网络中有3层计算层

  • B.这个神经网络中有计算功能的神经元有19个

  • C.该模型的可训练参数个数共有91个

  • D.这个神经网络的隐含层采用ReLu激活函数

正确答案:B

实现模型参数的保存和加载

练习六

1创建模型model,关于model.save_weights(filepath, overwrite, save_format)方法,下列说法中错误的是______。

  • A.save_weights()方法的功能是保存模型参数

  • B.参数filepath指定保存参数文件的路径

  • C.参数overwrite=True表示当指定的文件已经写入时,会覆盖原有数据

  • D.参数save_format="tf"时,参数文件被保存为HDF5格式

正确答案:D

2创建模型model,使用model.save()方法,可以保存神经网络的______信息。

①结构

②模型参数

③优化器,损失函数

④优化器状态

  • A.②

  • B.①②④

  • C.①②③

  • D.①②③④

正确答案:D

3创建模型model,下列关于模型保存和加载的方法,描述正确的是______。

  • A.使用model.save()方法只能够保存模型的参数信息

  • B.使用model.save_weights()方法可以保存模型的结构

  • C.使用tf.keras.models.load_model()方法可加载整个模型的信息

  • D.使用model.load_weights()方法加载模型参数后,仍需重新训练模型

正确答案:C

4创建模型model,使用如下语句保存模型信息,下列说法中错误的是______。

model.save_weights("..\my_model.keras", overwrite=Flase, save_format=None)

  • A.当文件已保存,会提示是否重写该文件 

  • B.该方法仅保存了网络模型的参数信息 

  • C.模型文件为SavedModel格式 

  • D.模型文件与程序保存在同一目录下 

正确答案:C

5创建模型model,设置参数include_optimizer可以实现断点续训。

  • A.对

  • B.错

正确答案:A

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值