赞
踩
迁移学习可以把为一个任务开发的模型重新用在另一个不同的任务中,作为另一个任务模型的起点,并节约训练神经网络需要的大量计算和时间资源。
例如采用在计算机视觉挑战赛通过ImageNet数据(源数据)集训练出来的AlexNet 模型迁移应用到另一个新的数据集(目标数据集)重新进行训练(微调)。主要步骤:
1)在源数据上训练一个神经网络。比如在imageNet上训练出的AlexNet模型。
2)砍掉该模型的头,将它的输出层改成适合目标数据的大小。
新加载的数据并不需要作1000个类别的分类任务,因此AlextNet的最后三层必须针对性按照新的分类问题重新调整。
a) 提取除了最后三层外的所有层;
b)提取的层迁移到新的任务中,并用一个全连接层,一个softmax层,一个分类输出层代替原来的最后三层。
c) 根据我们的新数据配置新的全连接层参数。为了加速训练过程,可以提高全连接层中的权重和偏置参数的值。
d ) 设置模型训练的超参数。
降低之前训练网络的特征初始学习率========>以减缓迁移层的学习。加速最后三层的训练速度,以保持其它层的状态。
降低迁移学习设置过多的迭代训练次数====>提高训练效率,。
减小批MiniBatchSize的大小============>以降低内存使用率;
3)将输出层的权重初始化成随机值,但其他层的权重保持跟原先训练好的权重一致。
4)在目标数据集上开始训练。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。