《动手学深度学习》学习pytorch之线性回归

本文详细介绍了如何使用PyTorch从零实现线性回归模型,涵盖了基本的张量操作、损失函数、梯度下降优化算法,并提供了简洁的模型实现。通过实例展示了线性回归在房屋价格预测中的应用,以及训练过程和相关问题的讨论。
摘要由CSDN通过智能技术生成

本节主要讲解如下几点:

  • pytorch的基本使用
  • 从零实现线性回归模型
    – 模型
    – 损失函数
    – 优化函数(随机梯度下降)
  • 线性回归模型基于pytorch的简洁实现
  • pytorch相关的几个问题

pytorch的基本使用

创建矢量

也可以叫沿用tensorflow的说法叫做张量

import torch
import time

# init variable a, b as 1000 dimension vector
n = 1000
a = torch.ones(n)
b = torch.ones(n)

print(a.shape)
print(b.shape)
torch.Size([1000])
torch.Size([1000])

矢量计算

直接

a = torch.ones(1000)
b = torch.ones(1000)

c = a + b
print(type(c))
print(c.shape)
print(c.size())
<class 'torch.Tensor'>
torch.Size([1000])
torch.Size([1000])

从零实现线性回归模型

线性回归模型的基本要素

线性回归

我们可以简要看作房屋的价格与面积和年限的线性关系,即价格会根据面积和年限的增大和减少线性变化,其中w和b是常值:
p r i c e = w a r e a ⋅ a r e a + w a g e ⋅ a g e + b \mathrm{price} = w_{\mathrm{area}} \cdot \mathrm{area} + w_{\mathrm{age}} \cdot \mathrm{age} + b price=wareaarea+wageage+b

先定义数据集,假定有两个特征:

num_inputs = 2  # 特征数量
num_examples = 1000  # 数据条数

# 生成 1000*2 的随机矢量代表1000条2个特征的数据集
X = torch.randn(num_examples, num_inputs, dtype
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值