《动手学深度学习》task10 文本分类;数据增强;模型微调 课后作业

Task10:文本分类;数据增强;模型微调

文本分类

1.关于数据的读取,以下哪项描述是错误的:

A 除了运用一个固定的分割符进行单词的切分外,在实现分词函数时,还能加上更多的功能,如子词的切分和特殊字符的处理等

B从原理上来说,对数据中的句子进行补齐或截断是不必要的,这么做是为了加强模型并行计算的能力

C将文本序列转化为下标张量时,需要将张量转换为torch.float进行存储

D直接读取预训练好的GloVe词向量和其对应的词典也能完整地实现文本情感分类模型,并不一定需要针对数据集本身创建词典

答案解释:【C】

选项C为正确选项,具体解析如下:

选项A针对任务或语言的特性特殊实现的分词函数,将更有利于模型的训练,但在设计该函数时要注意预训练词向量是定义在什

扫描二维码关注公众号,回复: 9378856 查看本文章

么词典上的,不能使out-of-vocabulary词过多

选项B无论是循环神经网络,还是卷积神经网络,理论上都是能在任何长度的文本上进行运算的,但规范化模型的长度会有利于模型进行批量化的计算

选项C PyTorch的嵌入层在进行前向传播时,其输入张量需要为torch.long格式

选项D理论上这么做是可行的,但缺少个性化的词典,会使模型在该任务上的表现下降

2.关于使用双向循环神经网络进行文本情感分类,以下哪项描述是错误的:

A双向循环神经网络比单向循 环神经网络更能抓住文本的特征

B双向循环神经网络中的隐藏状态不能并行地计算

C通常会给循环神经网络模型输入两个特殊的初始状态向量,以表示文本的两端

D双向循环神经网络不能进行多层叠加

答案解释:【D】

选项D为正确选项,具体解析如下:

选项A由于自然语言中常常有一些特殊的倒装结构,所以拥有两个方向的隐藏状态的双向循环神经网络,其输出更具文本代表性。注意,虽然两个方向的隐藏状态在输出前被拼接在了一起,但他们仍然是独立地被运算出来的,所以双向循环神经网络也不能从根本上解决文本的双向依赖问题,而卷积神经网络和Transformer这样完全并行的结构则不存在该问题。

选项B对于每个方向的每个隐藏状态,计算它时都会用到该方向中上一步的隐藏状态 ,所以双向循环神经网络中的隐藏状态不能被并行地算出。

选项C说法正确

选项D可以将双向循环神经网络的输出再次作为输入,输入到下一层的双向循环神经网络中,从而得到一个多层的结构。

3.关于使用卷积神经网络进行文本情感分类,以下哪项描述是错误的:

A一维卷积层输出的宽度为输入的宽度减去核的宽度。

B定义多个输出通道的卷积核有利于模型提取更丰 富的文本特征,定义多种宽度的卷积核有利于模型提取多个层次的文本特征。

C并不需要对每一个卷积核都单独地定义一个池化层。

D对所有卷积操作的结果进行池化和拼接之后,得到的向量就可以作为文本的一个整体的表示。

答案解释:【A】

选项A为正确选项,具体解析如下:

选项A一维卷积层输出的宽度为输入的宽度减去核的宽度加一

选项B输出通道数越多,可以捕捉的单词的组合就越多;而拥有不同宽度的核,就能让模型对文本中各个长度的单词组合都有关注

选项C由于池化操作与输入的序列长度无关,本身也不含任何参数,故可以所有卷积核共用一个池化层

选项D每个卷积和池化后的结果都可以看作是该卷积核在文本上提取出的特征,而拼接这些特征,就能得到整个文本的一个整体表示

数据增强

1.下列不属于图像增广的作用的是

A缓解过拟合

B缓解欠拟合

C增加模型泛化能力

D通过旋转/翻转等方式可以降低对某些属性的依赖。

答案解释:【B】

选项B错误,欠拟合普遍原因是模型对于数据过于简单,因此图像增广不能缓解欠拟合,但是能缓解过拟合,通过加入相似的图片他能提高泛化能力和减小对某些无关属性如图片方向、大小的依赖。

2.下列不属于图像增广的方法有

A复制图片

B翻转图片

C加入噪点

D调整亮度

答案解释:【A】

选项A错误,复制图片并没有改变图片,也没有扩大数据集,仅仅增加了该图片训练的次数。

3.torchvision. transforms . RandomHorizontalFlip()函数的作用是

A 180°旋转图片

B顺时针90°旋转图片

C上下翻转图片

D左右翻转图片

答案解释:【D】

选项D正确,通过torchvision. transforms模块创建RandomHorizontalFlip 实例来实现一半概率的图像左右翻转。

模型微调

1.假设我们将源模型的输出层改成输出大小为目标数据集类别个数的输出层,则对于这个新的输出层如何初始化

A复制源模型的参数进行初始化

B随机初始化参数

C用全零初始化参数

D不需要初始化

答案解释:【B】

选项B正确,将源模型的输出层改成输出大小为目标数据集类别个数的输出层,则应该对新的输出层随机初始化参数。

2.假设我们将源模型的输出层改成输出大小为目标数据集类别个数的输出层,在训练过程中下列说法正确的是

A对输出层使用较大的学习率,说对其他层使用较小的学习率。

B对输出层使用较小的学习率,对其他层使用较大的学习率。

C对输出层和其他层使用相同大小的学习率。

D对输出层进行微调,其他层保持参数不变,不需要学习。

答案解释:【A】

选项A正确

如下图:

将源模型的输出层改成输出大小为目标数据集类别个数的输出层,在训练过程中,一般只需使用较小的学习率来微调这些参数,对于随机初始化参数一般需要更大的学习率从头训练。

猜你喜欢

转载自www.cnblogs.com/guohaoblog/p/12357966.html