前言
LeNet-AlexNet-ZFNet: LeNet-AlexNet-ZFNet一二维复现pytorch
VGG: VGG一二维复现pytorch
GoogLeNet: GoogLeNet一二维复现pytorch
ResNet: ResNet残差网络一二维复现pytorch-含残差块复现思路分析
DenseNet: DenseNet一二维复现pytorch
Squeeze: SqueezeNet一二维复现pytorch
MobileNet: |从零搭建网络| MobileNet系列网络详解及搭建(学弟提供)
下面的是我复现了所有一维卷积神经网络经典模型的链接地址
链接: https://github.com/StChenHaoGitHub/1D-deeplearning-model-pytorch.git
训练模板代码自己编写由于删博客会减原力分,然后一维的代码已经重构然后开源了
https://github.com/StChenHaoGitHub/1D_Pytorch_Train_demo.git
训练代码讲解博客地址
为了使用pytorch的深度学习网络除了模型之外还需要深度学习代码的训练例程,其中例程所包含的功能。本例程包含的是分类任务和回归任务,如有问题,联系我的邮箱即可,一般我一两天之内肯定会回复。
里面的例程包含一维、二维网络的模板
一维训练代码已经开源,请移步这个文章
https://blog.csdn.net/chrnhao/article/details/135992162?spm=1001.2014.3001.5501
保存数据
这里的主要原因是有些数据集需要预处理,用一个方法保存预处理之后的数据,这样就不用每次训练都要处理一遍数据,这里训练使用的数据是随机生成的,每一部分都单独写了一个文件。下面分别是保存数据和加载数据。
注意为了方便后面的划分,所以我们将数据和标签保存在了一个不规则数组种,但是可能由于内存等原因numpy后期取消了这一功能,为了不让,存储数据的内一句报错,我们需要调整和确认numpy 的版本,我使用的是如下的版本,这个版本包含保存不规则数组的功能
numpy-1.21.2
卸载安装命令如下
pip uninstall numpy
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy==1.21.2
在某些情况下还会导致scipy库不兼容
我是用的scipy库版本为scipy==1.10.0
如果出现如下错误就需要根据numpy调整 scipy 库的版本
import numpy as np
# 随机生成第一类数据
class1 = np.random.uniform(size=(1000,2,224))
# 随机生成第一类数据
class2 = np.ones(shape=(1000,2,224))+np.random.uniform(size=(1000,2,224))-0.5
label1 = np.zeros(shape=(1000))
label2 = np.ones(shape=(1000))
data = np.concatenate([class1,class2],axis=0)
label = np.concatenate([label1,label2],axis=0)
dataset = np.array([i for i in zip(data,label)])
# 数据存储
np.save('dataset',dataset)
import numpy as np
dataset = np.load('dataset.npy',allow_pickle=True)
# print(dataset)
def get_dataset():
return dataset
模型切换
在例程中,可以随意切换所有的经典模型,在测试选用那种模型的时候更方便,也方便后期选择基础模型改造
分类任务
所带的指标
这里包含三个经典指标,损失,训练集准确率,测试集准确率
回归任务
所带的指标
训练集损失、测试集损失
模型链接:
如果需要模型模板,可关注
浩浩的科研笔记
一维二维模板各10¥,全部Buy—18¥