线性回归模型与二分类模型(pytorch)

本文介绍如何使用PyTorch构建线性回归模型,并探讨二分类问题的应用。
摘要由CSDN通过智能技术生成

一、线性回归

import torch
import numpy as np
import torch.nn as nn
import matplotlib.pyplot as plt
import torch.optim as optim
in_features=1
out_features=1
x=torch.unsqueeze(torch.linspace(1,10,100),dim=1)
y=3.0*x+2+torch.rand(x.size())

plt.scatter(x.data.numpy(), y.data.numpy())
plt.show()

class MYNET(nn.Module):
    def __init__(self):
        super(MYNET,self).__init__()
        self.L1=nn.Linear(1,1)
    def forward(self,x):
        x=self.L1(x)
        return x

net=MYNET()
print(net)
lr=0.01
crition=nn.MSELoss()
opt=optim.SGD(net.parameters(),lr)
num_epochs=1000

for epoch in range(num_epochs):
    y_out = net(x)
    loss = crition(y_out, y)
    opt.zero_grad()
    loss.backward()
    opt.step()
    if (epoch + 1) % 20 == 0:
        print('Epoch[{}/{}], loss:{:.6f}'.format(epoch + 1, num_epochs, loss.data))

net.eval()
predict=net(x)
predict=predict.data.numpy()
plt.plot(x.numpy(),y.numpy(),label='O
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值