【学习系列5】Pytorch API的使用

文章介绍了Pytorch中构建模型的基本API,包括nn.Module用于定义网络结构,优化器如SGD和Adam进行参数更新,以及MSELoss等损失函数。通过线性回归的例子展示了如何实现模型训练,并讲解了如何在GPU上运行模型以加速计算。

目录

1. Pytorch完成模型常用API

1.1 nn .Module

1.2 优化类

1.3 损失函数

1.4 Pytorch线性回归的实现 

2. 使用GPU训练模型


1. Pytorch完成模型常用API

1.1 nn .Module

nn.Modul 是torch.nn提供的一个类,是pytorch中我们自定义网络的一个基类,在这个类中定义了很多有用的方法,让我们在继承这个类定义网络的时候非常简单
当我们自定义网络的时候,有两个方法需要特别注意:

  1. _init_需要调用super方法,继承父类的属性和方法
  2. farward方法必须实现,用来定义我们的网络的向前计算的过程

用前面的y=wx+b的模型举例如下:

from torch import nn


class Lr(nn.Module):
    def __init__(self):
        super().__init__()
        self.linear = nn.Linear(1, 1)

    def forward(self, x):
        out = self.linear(x)
        return out

注意:

1.nn.Linear为torch预定义好的线性模型,也被称为全链接层,传入的参数为输入的数量,输出的数量(in_features,out features)是不算(batch_size的列数)

2nn.Modue定义了_call_方法,实现的就是调用forward方法,即Lr的实例,能够直按被传入参数调用,实际上调用的是forward方法并传入参数

#实例化模型
model = Lr()
# 传入数据,计算结果
predict = model(x)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值