MATLAB-DL3


定义网络训练参数

trainingOptions 定义训练参数

options = trainingOptions('adam'); %adam是一个对loss function的优化方法,
trainedNet = trainNetwork(data,layers,options);

返回的是一个对象,用来输入到trainNetwork中
还有其他可学习的参数可以设置
所有的优化算法,如所及梯度下降的术语叫做solverName
’adam’是一个好的优化方法

weights/WeightsInitializer 属性初始化网络权重

如果weights为空则使用WeightsInitializer

epoch/iteration/bitchsize

epoch表示整个数据集过了一遍
iteration表示整个参数过了一遍
数据集size/bitchsize=iteration

优化算法在每一步中,即mini-batch,更新一次网络的参数,
参数每更新一次叫做一次迭代,iteration
所有的数据都被训练过了一次叫做epoch

MiniBatchSize 名值对定义minibatchsize

MaxEpochs 名值对定义最大的epoch

默认值是30

Shuffle 打乱数据

InitialLearnRate 名值对定义全局学习率

默认情况下使用同一个learningrate遍历所有的训练过程,
可以通过与一个因子相乘来对每一次epoch来更改学习率
学习率应该先大后小

LearnRateSchedule/piecewise 名值对逐渐降低学习率

设置之后,每10个epoch在初始rate的基础上乘以0.1

LearnRateDropFactor/LearnRateDropPeriod 名值对与学习率有关

BiasLearnRateFactor/WieghtLearnRateFactor 定义层的学习率

ValidationData 名值对定义验证数据集

默认情况下,trainNetwork在每50次iteration来预测一次验证集的响应并计算验证误差loss,和精度

ValidationFrequency 名值对定义验证集的频次

多少个iteration后进行一次validation

ValidationPatience 名值对定义验证停止

当验证集误差loss停止降低时,那么自动停止训练训练集和验证验证集

在训练期间定期执行验证能够判断时候网络达到了过拟合,
常见的问题是该网络仅仅是很好的记住了训练数据,而不是学习了泛化特征使网络对新数据进行精确的预测。
为了检测网络是否过拟合,比较训练误差loss和准确性与验证度量指标的比较
如果train-loss低于valid-loss或者训练的精度高于验证精度,则网络可能过拟合

augmentedImageDatastore 数据增强

执行输入数据的随机转换,防止过拟合

L2Regularization 名值L2正则化

防止过拟合

BiasL2Factor/WeightL2Factor 定义层的正则化

其他防止过拟合的方法

使用BN层,和dropout层

save network 保存网络

可以保存每个epoch后的网络
保存后的为.mat文件

CheckPointPath 名值对定义结点epoch的保存路径

load checkpointnetwork.mat
并进行重新训练

train 训练网络

trainNetwork 训练网络

net=trainNetwork(data,layers,options)

pretrained network 预训练网络

googlenet
inceptionv3
densene201
mobilenetv2
resnet18
resnet50
resnet101
xception
inceptionresnetv2
darknet19
darknet53
alexnet
vgg16
vgg19

图像分类:预训练、迁移学习
图像回归:预训练与回归转换
分类与回归非自然图像,小图像或光谱图像:残差网络示例
语义分割:预训练

训练参数

Plots training-progress 名值对监视训练过程

对于迁移学习

应该加速新层的学习,降低迁移层的学习。
WeightLearnRateFactor 在新层中的学习率要高
InitialLearnRate 降低初始学习率,减慢迁移层的学习
迁移学习中不需要使用很多的epoch,降低MaxEpochs
每个epoch应该重新打乱 Shuffle

小数据集减少batchsize和validationFrequency

提高精度-没看完见文档

验证损失高于训练损失,可能过拟合:使用数据增强 or 使用dropoutlayer or 增加全局L2正则化因子
损失降低的很慢:增加初始学习I率nitialLearnRate or 改进BN层

checkLayer 测试诊断网络-还没看

analyzeNetwork 分析网络

可视化、检测错误与问题,网络的细节信息

导入网络的问题,文档1-52

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值