10、深度学习中的迁移学习与成本函数解析

深度学习中的迁移学习与成本函数解析

1. 迁移学习实验

在深度学习训练中,如Epoch 2/2的训练结果显示:

3000/3000 [==============================] - 276s 92ms/sample - loss: 0.2913 - acc: 0.8730 - val_loss: 0.2699 - val_acc: 0.8820

这得益于预训练的第一层,为我们节省了大量工作。但当我们想尝试目标网络的不同架构,添加更多层时,之前的方法存在不足,每次都要训练整个网络,而实际上只需训练最后几层。之前一个epoch大约需要4.5分钟,效率较低。

为了提高效率,我们可以生成一个新的数据集——特征数据集。具体做法是利用冻结层,由于这些层在训练中不会改变,它们总是会生成相同的输出。我们可以将这个特征数据集作为一个更小的网络(目标子网络)的新输入,目标子网络仅由之前添加到基础层的新层组成。这样,我们只需训练少数层,速度会快很多。

以下是具体的实现步骤:
1. 导入预训练的VGG16网络

from tensorflow.keras.applications import vgg16
from tensorflow.keras.models import Model
import tensorflow.keras as keras

input_shape = (150, 150, 3)
vgg = vgg1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值