神经网络程序分块理解

作为新手小白,见到一个神经网络的项目,看到如此多的程序量,难免会有些头疼,我们要做的就是将代码分部分来看,逐块进行理解:

神经网络的一般步骤:

1\对数据进行处理,

----------1.1, resume:是否重新开始训练
2\导入模型

----------2.1,使用多GPU
3\配置优化器

----------优化器的常规input:

---------------3.1,网络的全部参数:model.parameters()

---------------3.2,学习率

---------------3.3优化方法:momentum

---------------3.4,权重衰减:weight_decay
4\配置损失函数----------4+, 对网络参数的配置
5\训练:

----------5.1,数据to Tensor + net.train()

----------5.2, 得到scores

----------5.3, 得到损失

----------5.4,反向传播:optimizer.zero_grad(),loss.backward(),optimizer.step()

----------5.5, 计算损失+精确度
6\测试:

----------6.1,数据to Tensor + net.eval()

----------6.2, 得到scores

----------6.3, 得到损失

----------6.4, 计算损失+精确度
7\保存训练好的参数或者模型

小结:

1、读取数据

2、添加模型

3、loss函数配置

4、优化器配置  对网络参数的配置(如权重初始化,凯明方法等)

5、训练+测试(单GPU或者多GPU)
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值