16、机器学习中的虚拟轮次与迁移学习

虚拟轮次与迁移学习解析

机器学习中的虚拟轮次与迁移学习

1. 训练步骤与超参数调整问题

在机器学习模型训练中,我们通常会设定一定的训练步骤。例如,先训练 143,000 步,之后重启训练并延长一些步数(如 10,000 步),只要模型持续收敛,就继续延长训练。然后更新代码中的步数参数以反映新的训练步数。

然而,当进行超参数调整时,这个方法就会出现问题。比如,若将批量大小改为 50,由于我们是按固定的 143,000 步训练,而每一步的长度变为原来的一半,训练时间就会减半,这显然不利于模型训练。

2. 虚拟轮次解决方案

解决上述问题的办法是保持展示给模型的训练样本总数(而非训练步数)恒定。以下是相关参数设定及代码示例:

NUM_TRAINING_EXAMPLES = 1000 * 1000
STOP_POINT = 14.3
TOTAL_TRAINING_EXAMPLES = int(STOP_POINT * NUM_TRAINING_EXAMPLES)
BATCH_SIZE = 100
NUM_CHECKPOINTS = 15
steps_per_epoch = (TOTAL_TRAINING_EXAMPLES // (BATCH_SIZE*NUM_CHECKPOINTS))
cp_callback = tf.keras.callbacks.ModelCheckpoint(...)
history = model.fit(trainds, 
                    validation_data=evalds,
                    epochs=NUM_CHECK
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值