第一讲 人工智能导论
2.29日考勤
1、以下关于深度学习和机器学习的关系,描述正确的是:
A、机器学习的范畴包含深度学习;
B、深度学习的范畴包含机器学习;
C、二者没有关系;
D、二者等同。
第三讲(根据基础选修) 工欲善其事必先利其器:简明Python基础
测试1:Python基础测试
1、在Python中,标识符不能包括以下哪个选项?
A、英文字母
B、阿拉伯数字
C、下划线
D、减号
2、以下关于Python的说法哪个是错误的?
A、Python的标识符不能以数字开头
B、Python2和Python3有一定的区别
C、Python是一门面向过程的语言
D、Python由荷兰人Guido van Rossum 于1989年发明
3、下面关于Python的变量的说法哪个是错误的?
A、每个变量都在内存中创建,包括变量的标识、名称和数据这些信息
B、每个变量在使用前不一定要赋值
C、Python 中的变量赋值需要数据类型声明
D、Python的数据类型根据具体的赋值确定
4、以下选项哪个可以作为Python3的标识符?
A、变量
B、def
C、elif
D、while
5、Python的单行注释怎么表示?
A、#注释
B、//注释
C、%注释
D、/*注释*/
6、以下代码哪个不能够打印出Hello world!?
A、print("Hello world!")
B、print("Hello","world!")
C、print("Hello") print("world!")
D、print("Hello", end=' ') print("world!")
7、Python运算:0 and 20+5 的输出是?
A、0
B、25
C、False
D、True
8、Python运算:10 or 20+5 的输出是?
A、25
B、10
C、True
D、False
9、以下关于Python中字典的描述错误的是?
A、字典是一个有序的键值对集合
B、键(Key)必须使用不可变的类型
C、字典中的元素通过键(Key)来存取
D、同一个字典中,键(Key)是唯一的
10、定义变量a是元组的语句是?
A、a=(2,3,4)
B、a={2,3,4}
C、a=[2,3,4]
D、a={"1":1,"2":2,"3":3}
第四讲 磨刀不误砍柴工:TensorFlow 编程基础
测试2:Tensorflow编程基础单元测试
1、在计算图中,每个节点代表什么?
A、数据传递
B、控制依赖
C、张量
D、操作
2、import tensorflow as tf node1=tf.constant(3.0,tf.float32,name=”node1”) node2=tf.constant(4.0,tf.float32,name=”node2”) node3=tf.add(node1,node2) print(node3) 运行结果是什么?
A、0
B、7
C、7.0
D、Tensor(“Add:0,shape(),dtype=float32)
3、import tensorflow as tf vector=tf.constant([[[1],[3]],[[5],[6]],[[7],[9]]]) print(vector.get_shape()) 结果是?
A、(3,2,1)
B、(3)
C、(3,2)
D、3
4、下列不是tensorflow支持的类型是?
A、tf.float32
B、tf.int32
C、tf.complex64
D、tf.unit16
5、node1=tf.constant(3.0,name=”node1”)的默认类型是?
A、tf.int16
B、tf.int32
C、tf.float32
D、tf.double64
6、node1=tf.constant(3,name=”node1”)的默认类型是?
A、tf.int16
B、tf.int32
C、tf.float32
D、tf.double64
7、improt tensorflow as tf a=tf.constant(1,name='a') b=tf.constant(2.0,name='b') result=a+b 运行结果是?
A、3
B、3.0
C、a+b
D、运行报错
8、计算图中的操作用什么表示?
A、节点
B、常规边(实线)
C、特殊边(虚线)
D、箭头
9、import tensorflow as tf node1=tf.constant(3.0,float32,name="node1") node2=tf.constant(4.0,float32,name="node2") node3=tf.add(node1,node2) sess=tf.session() with sess.as_default(): print(node3.eval()) 运行结果是什么?
A、0
B、7
C、7.0
D、Tensor(“Add:0,shape(),dtype=float32)
10、import tensorflow as tf node1=tf.Variable(3.0,float32,name="node1") node2=tf.Variable(4.0,float32,name="node2") node3=tf.add(node1,node2) sess=tf.session() with sess.as_default(): print(node3.eval()) 运行结果是什么?
A、0
B、7
C、7.0
D、运行错误
11、Tensorflow的占位符是()?
A、constant
B、Variable
C、assign
D、placeholder
12、TensorBoard的默认端口是()?
A、6006
B、6600
C、8080
D、8000
13、tensorflow中通过()可定义一个可修改变量
A、constant
B、Variable
C、assign
D、placeholder
14、上面哪个语句不能创建一个3x3x4形状的TensorFlow张量?
A、a=tf.get_variable(“get_varaible”,[3,3,4],initializer=tf.constant_initializer([3,3,4,5]))
B、b=tf.Variable([3,3,4])
C、c=tf.zeros([3,3,4])
D、d=tf.truncated_normal([3,3,4])
15、下面哪一项不是张量的属性?
A、名字
B、维度
C、取值
D、类型
16、feed_dict参数用于传递()定义的变量
A、constant
B、Variable
C、assign
D、placeholder
17、tensorflow中用于人工更新变量取值的命令是()?
A、constant
B、Variable
C、assign
D、get_variable
18、下面说法错误的是()?
A、会话拥有并管理Tensorflow程序运行时的所有资源
B、利用python的上下文管理器,可以不需要手动关闭会话
C、tf.InteractiveSession会自动将生成的会话注册为默认会话
D、不同计算图共享张量和运算
19、下面说法正确的是()?
A、常量可以不需要初始化
B、所有变量都需要人工赋值
C、feed_dict一次只能给一个变量赋值
D、fetch可以一次返回多个值分别赋给多个变量
20、下面说法错误的是()?
A、计算图在创建的时候就得到执行
B、张量没有真正保存数字
C、张量可以保存计算过程
D、张量在功能上可以理解为多维数组
21、[[[6],[3]],[[2]],[[5]]]是一个几维张量?
A、0
B、1
C、2
D、3
22、import tensorflow as tf ten=tf.constant([[[1,2],[2,3]],[[3,4],[5.6]]]) sess=tf.Session() print(sess.run(ten)[1,0,0]) sess.close() 运行结果是()?
A、2
B、3
C、5
D、1
第五讲 单变量线性回归:TesnsorFlow实战
3.7日考勤
1、有监督机器学习是指:
A、已知训练数据的特征,训练数据的标签未知
B、已知训练数据的标签,训练数据的特征未知
C、训练数据的特征和标签都已知
D、训练数据的特征和标签都未知
第六讲 多元线性回归:波士顿房价预测问题TesnsorFlow实战
测试3:TensorFlow编程进阶
1、从标签化训练数据集中推断出函数的机器学习任务是()
A、有监督学习
B、无监督学习
C、强化学习
D、半监督学习
2、样本数据如下 x 1 2 3 4 5 y 2 1 4 6 5 假设学习到的模型为y=x+1,则L1损失为()
A、2
B、4
C、16
D、3
3、样本数据如下 x 1 2 3 4 5 y 2 5 4 6 9 假设学习到的模型为y=2x,则L2损失为()
A、6
B、36
C、8
D、10
4、样本数据如下 x 1 2 3 4 5 y 2 5 4 6 9 假设学习到的模型为y=2x,则均方误差为()
A、1.2
B、7.2
C、1.6
D、2.0
5、样本数据如下 x 1 2 3 4 5 y 3.5 5 6 8 9 则拟合y=x+4和拟合y=2x哪个的均方误差较大()
A、y=x+3
B、y=2x
C、一样大
D、不能确定
6、下面说法正确的是()
A、学习率设置的越大越好
B、学习率设置的越小越好
C、学习率的设置应该大小适宜,根据实际情况而定
D、只要设置了合适的学习率,就可以到达损失的最低点
7、下面哪一项不是超参数()
A、偏置值
B、学习率
C、训练周期数
D、神经网络的隐含层数量
8、下面说法不正确的是()
A、凸型问题只有一个最低点
B、梯度是一个标量
C、梯度下降法是沿着负梯度方向探索
D、梯度下降的步长由梯度大小和学习率共同决定
9、tf.reduce_mean(tf.square(y-pred)) 定义的是什么损失()
A、L1损失
B、L2损失
C、均方差损失
D、交叉熵损失
10、下列说法不正确的是()
A、单变量线性回归每次运行的结果都相同
B、真正执行计算之前,需将所有变量初始化
C、线性回归中优化器的优化目标是最小化损失
D、损失函数是用来描述预测值和真实值之间的误差
11、下面哪个不是单变量线性回归的必须步骤()
A、构建线性模型
B、定义损失函数
C、定义优化器
D、可视化训练过程
12、关于批量说法正确的是()
A、批量大小只能是1
B、批量越大越好
C、批量越大,单次迭代所需的时间越长
D、批量是指样本总数
13、关于pandas的说法错误的是()
A、pandas能够读取CSV、文本文件、SQL
B、处理CSV文件能够自动识别列头,支持列的直接寻址
C、能够将数据结构自动转换为numpy的多维数组
D、pandas最适合进行图片的预处理
14、下列哪一项不是tensorflow提供的优化器()
A、GradientDescentOptimizer
B、MarkovOptimizer
C、AdamOptimizer
D、AdadeltaOptimizer
15、Tensorflow通过()实现矩阵叉乘
A、tf.concat
B、tf.matmul
C、*
D、tf.mutiply
16、假设x的值为 [[1,3,5], [2,4,6]], tf.transpose(x)的结果是()
A、[[1,3,5], [2,4,6]]
B、[[2,4,6], [1,3,5]]
C、[[1,2],[3,4],[5,6]]
D、[[[1,2,3],[4,5,6]]]
17、import tensorflow as tf a = tf.constant([[1,2],[3,4]]) b = tf.constant([[1,1],[2,2]]) sess = tf.Session() print(sess.run(a*b)) sess.close() 的运行结果是()
A、[[1,2],[6,8]]
B、[[5,5],[11,11]]
C、17
D、[[1,4],[3,8]]
18、import tensorflow as tf a = tf.constant([[1,2],[3,4]]) b = tf.constant([[1,1],[2,2]]) sess = tf.Session() print(sess.run(tf.matmul(a,b))) sess.close() 的运行结果是()
A、[[1,2],[6,8]
B、[[5,5],[11,11]]
C、17
D、[[1,4],[3,8]]
19、未归一化前多元线性回归训练结果异常的主要原因是()
A、变量参数太多
B、随机因素引起的异常
C、模型定义错误
D、不同特征值取值范围对训练的影响
20、关于样本数据的说法不正确的是()
A、全部的样本数据都应该参与训练
B、样本数据最好分为测试集和训练集
C、样本数据训练时最好打乱顺序
D、特征数据需要归一化
21、打乱训练数据的目的是()
A、加快学习速度
B、使模型学习到有效的特征
C、打乱训练数据对训练结果没有影响
D、丰富样本数据
作业1. 波士顿房价预测线性回归实践
1、作业题1 按课程案例,动手完成编码实践。 通过梯度下降优化器进行优化,尝试采用不同的学习率和训练轮数等超参数,记录训练后的损失值和W、b变量值。 提交要求: 1、至少5次不同超参数的运行结果的记录文档(word格式或者txt格式) 2、你认为最优的一次带运行结果的源代码文件(.ipynb 格式) 3、以上两个文件一起压缩为一个压缩文件后作为附件上传 评价标准: 1、完成案例中的代码,有完整的代码,模型能运行优化出结果,8分; 2、调整过超参数,记录文件中有至少5组数据,2分;
第七讲 MNIST手写数字识别:分类应用入门
作业2. MNIST手写数字识别问题的单神经元模型实践
1、MNIST手写数字识别问题的单神经元模型实践 按课程案例,动手完成编码实践。 在不改变模型的结构基础上,尝试采用不同的学习率、单批次样本数、训练轮数等超参数,让模型的准确率达到90%。 提交要求: 1、你认为最优的一次带运行结果的源代码文件(.ipynb 格式) 2、作为附件上传 评分标准: 1、完成案例中的代码,有完整的代码,模型能运行,准确率达87%以上;得6分; 2、准确率达89%以上;再得2分,否则得0分; 3、准确率达90%以上;再得2分,否则得0分;
第八讲 MNIST手写数字识别进阶:多层神经网络与应用
3月14日考勤
1、下面关于全连接神经网络的参数总量的描述,正确的是:()
A、只与输入层结点数量有关
B、只与输出层结点数量有关
C、只与中间层(隐藏层)结点数量有关
D、与输入层、中间层(隐藏层)、输出层的结点数量都有关
MNIST手写数字识别问题的多层神经网络模型实践
1、MNIST手写数字识别问题的多层神经网络模型实践 按课程案例,动手完成编码实践。 自行设计一种神经网络模型,并尝试采用不同超参数,让模型的准确率达到97.5%。 提交要求: 1、你认为最优的一次带运行结果的源代码文件(.ipynb 格式) 2、作为附件上传 评分标准: 1、完成MNIST手写数字识别的神经网络建模与应用,有完整的代码,模型能运行,准确率达97%以上;得6分;每下降一个百分点,少得1分; 2、准确率达97.3%以上;再得2分,否则再得0分; 3、准确率到97.5%以上;再得2分,否则再得0分;
第九讲 图像识别问题:卷积神经网络与应用
CIFAR10案例卷积神经网络实践
1、CIFAR10图像识别问题的卷积神经网络实践 按课程案例,动手完成编编码实践。 可尝试采用不同的学习率、单批次样本数、训练轮数等超参数,或是改变模型结构(例如:增加卷积层、池化层或全连接层的数量)让模型的准确率达到70%。 提交要求: 1、你认为最优的一次带运行结果的源代码文件(.ipynb 格式) 2、作为附件上传 评分标准: 1、完成CIFAR10图像识别问题的卷积神经网络的建模与应用(必须采用卷积神经网络),有完整的代码,模型能运行,准确率达60%以上;得6分;每下降一个百分点,少得1分; 2、准确率达65%以上;再得2分,否则再得0分; 3、准确率到70%以上;再得2分,否则再得0分; 4、之所以只提70%的准确率作为满分的标准,不是说只能达到这个识别率,而是考虑同学们设备的算力和时间,有GPU的会很快,如果只是CPU的还是需要一些时间的。
第十一讲 猫狗大战:迁移学习及应用
测试4:迁移学习
1、迁移学习与完整训练模型相比()
A、正确率更高
B、需要的训练样本更多
C、需要的训练时间更少
D、模型更加简单
2、下列关于迁移学习的说法正确的是()
A、迁移学习不需要和原来的任务有很大的联系
B、迁移学习主要是为了缓解标注数据不足和训练时间长的问题
C、通过迁移学习一定可以实现更高的准确率
D、迁移学习的新数据集和原数据集不需要相似
3、下面哪项不是迁移学习的优点()
A、训练时间少
B、适应多任务目标的学习
C、可以用来缓解缺乏巨量标注数据的问题
D、总是能够得到性能更高,准确率更好的模型
4、什么时候不适合使用迁移学习()
A、当新数据集比较小时
B、当新数据集与原数据集相似时
C、当原先的模型不容易泛化时
D、当算力有限时
5、下面有关tf.train.QueueRunner说法错误的是()
A、tf.train.QueueRunner是一个类,它主要用于启动多个线程来操作同一个队列
B、使用tf.train.QueueRunner时,不需要明确调用tf.train.start_queue_runners来启动所有线程
C、tf.train.QueueRunner中保存了队列入队操作的列表
D、tf.train.QueueRunner可以结合tf.train.Coordinator对线程进行统一管理
6、tf.train.Coordinator提供了一些函数来协调多个线程的工作,下面描述错误的有()
A、should_stop用来通知当前线程是否要停止
B、request_stop用来通知其他线程是否要停止
C、should_stop用来控制当前线程和其他所有线程是否全部停止
D、wait_for_stop用来等待Coordinator通知进程停止
7、tf.train.Coordinator中join函数的功能是()
A、等待其他线程结束,其他线程关闭之后,join函数可以返回
B、将一系列线程加入队列
C、将某一线程加入队列
D、等待其他线程结束之后,将某一线程加入队列
8、import tensorflow as tf q=tf.FIFOQueue(2,"int32") init=q.enqueue_many(([0,10],)) x=q.dequeue() y=x+1 q_inc=q.enqueue([y]) with tf.Session() as sess: init.run() for _ in range(5): v,_=sess.run([x,q_inc]) print(v) 输出的结果为()
A、10,11,12,13,14
B、10,0,11,1,12
C、0,10,1,11,2
D、0,10,11,12,13
9、关于tf.variable_scope(),以下说法正确的是:
A、用于给variable_name和op_name加前缀
B、用于创建新变量
C、返回一个张量
D、与tf.name_scope()没有区别
10、下列说法错误的是:
A、检查点文件的扩展名一般为.ckpt
B、图协议文件的扩展名一般为.pb
C、检查点文件是通过在tf.train.Saver对象上调用Saver.save()生成的
D、saver.restore()只能恢复最新模型,不能恢复指定模型
3月21日考勤
1、关于深度学习的网络结构,下面说法正确的是:()
A、网络层数越深,系统精度越好
B、网络层数越深,系统速度越快
C、网络层数过深,系统精度反而可能下降
D、网络层数越深,系统越容易训练