深度学习—基于经典网络架构训练图像分类模型

#数据预处理部分:(比较简单)
按类别将数据放在一个个文件夹中后
##数据增强:
让样本数据变得更多一些,torchvision中transforms模块自带功能,比较实用
经典网络的数据大小,都是一样的,不是什么数据都能往里放,格式要一样。
##数据预处理:
torchvision中transforms也帮我们实现好了,直接调用即可
##DataLoader模块
直接读取batch数据,一批一批读取

#网络模块设置
加载训练模型,torchvision中有很多经典网络架构,调用起来十分方便,并且可以用人家训练好的权重参数来继续训练,也就是所谓迁移学习
需要注意的是别人训练好的任务跟咱们的可不是一样的,需要把最后的head层改一改,一般也就是最后的全连接层,改成咱们自己的任务
训练可以全部重头训练,也可以只训练最后咱们任务的层,因为前几层都是做特征提取的,本质任务目标是一致

#网络模型保存与测试
模型保存的时候可以带有选择性,例如在验证集中如果当前效果好则保存
读取模型进行实际测试

#数据增强
Data Augmentation
数据不够怎么办?
如何更高效利用数据?
可以的方法:图像进行反转、往左往右旋转、放大缩小、翻转等等
让数据量更多
数据量经过变换,可以变得很多
几行代码就可以搞定
##data_transforms={’train‘:transforms.Compose([
###图像旋转-45到45之间随机选一个角度transforms.RandomRotation(45)
###从中心开始裁剪1024* 1024通过resize=>256* 256,有的网络比如VGG、resnet是224224的,有很多的选择会产生很多的图像
###随机水平/垂直翻转以一个概率p=0.5翻转
###亮度brightness、对比度contrast、饱和度saturation、色相hue
###概率转成灰度图还有3通道也就是RGB
##验证集’valid’:transforms.Compose([
###resize=>256
256
###裁剪成224*224图像文件夹imagefolder

#数据读取
指定batch_size一个一个读进来
##dataset.ImageFolder数据已经在文件夹中放好了,告诉我当前路径在哪os.path.join(data_dir,x)
##前面设定好的处理方式data_transforms[x]
x里的数据类别for x in [‘train’,‘valid’]

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值