深度学习--魔法类nn.Module

科技资讯 投稿 5700 0 评论

深度学习--魔法类nn.Module

深度学习--魔法类nn.Module

作用

pytorch 封装了一些基本的网络类,可以直接调用

好处:

    可以直接调用现有的类
  1. 容器机制:self.net = nn.Sequential(
  2. 参数返回:list(net.parameters([0].shape #返回对应的参数的shape
    list(net.named_parameters([0] #返回对应的参数
    dict(net.named_parameters(.items(# 返回所有的参数
  3. 模型modules:children(这个没太懂)
  4. to(device:选择运行设备
  5. save and load :net.load_state_dict(torch.load('ckpt.mdl'
    net.save(net.state_dict(,'ckpt.mdl'
  6. train/test的行为切换,net.train( 训练 net.eval(测试
  7. 实现我们自己的类:self.w = nn.Parameter(torch.randn(outp,inp,requires_grad = True
import torch
import torch.nn as nn

#继承nn.Module来实现自己的模型
class MyLinear(nn.Module:
    
    def __init__(self, inp, outp:
        super(MyLinear,self.__init__(
        
        # requires_grad = True
        self.w = nn.Parameter(torch.randn(outp,inp
        self.b = nn.Parameter(torch.randn(outp
        
    def forward(self,x:
        x = x @ self.w.t( +self.b
        return x

图像增强操作

数据增强:低网络容量、regularization规范化、Data argumentation数据推论
data argumentation的手段:

  1. Rotate:旋转

  2. GAN:生成对抗网络

编程笔记 » 深度学习--魔法类nn.Module

赞同 (34) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽