教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

微调模型的执行步骤和原理是什么?

更新时间:2022年04月07日14时41分 来源:传智教育 浏览次数:

如何在只有6万张图像的MNIST训练数据集上训练模型?学术界当下使用最广泛的大规模图像数据集ImageNet,它有超过1,000万的图像和1,000类的物体。然而,我们平常接触到数据集的规模通常在这两者之间。假设我们想从图像中识别出不同种类的椅子,然后将购买链接推荐给用户。一种可能的方法是先找出100种常见的椅子,为每种椅子拍摄1,000张不同角度的图像,然后在收集到的图像数据集上训练一个分类模型。另外一种解决办法是应用迁移学习(transfer learning),将从源数据集学到的知识迁移到目标数据集上。例如,虽然ImageNet数据集的图像大多跟椅子无关,但在该数据集上训练的模型可以抽取较通用的图像特征,从而能够帮助识别边缘、纹理、形状和物体组成等。这些类似的特征对于识别椅子也可能同样有效。

微调由以下4步构成。

1.在源数据集(如ImageNet数据集)上预训练一个神经网络模型,即源模型。

2.创建一个新的神经网络模型,即目标模型。它复制了源模型上除了输出层外的所有模型设计及其参数。我们假设这些模型参数包含了源数据集上学习到的知识,且这些知识同样适用于目标数据集。我们还假设源模型的输出层跟源数据集的标签紧密相关,因此在目标模型中不予采用。

3.为目标模型添加一个输出大小为目标数据集类别个数的输出层,并随机初始化该层的模型参数。

4.在目标数据集(如椅子数据集)上训练目标模型。我们将从头训练输出层,而其余层的参数都是基于源模型的参数微调得到的。

1649309670295_微调模型.png


当目标数据集远小于源数据集时,微调有助于提升模型的泛化能力。




猜你喜欢:

Django中提供的常用列表页选项

Numpy模块执行数组间的转换操作

meanshift算法原理:meanshift跟踪算法实战

Shi-Tomasi角点检测原理和实现代码

传智教育人工智能开发培训课程

0 分享到:
和我们在线交谈!