一天抄好一份二分类逻辑回归代码,请问怎样保存网络?怎样导入新数据,用作回归预测?

weixin_39756360 2022-06-11 19:00:24

我是安装的Anaconda,用JuPYTER抄的别人的代码 ,全程无错运行,完整代码如下,

import torch

import pandas as pd

import numpy as np
import matplotlib.pyplot as plt

data = pd.read_csv('G:\pytorch111\data1.csv',header=None)

data

data.info()

X = data.iloc[:,:-1]

Y = data.iloc[:,-1]

Y.unique()

X = torch.from_numpy(X.values).type(torch.float32)

X.shape

Y = torch.from_numpy(Y.values.reshape(-1,1)).type(torch.float32)

Y.shape

import torch
from torch import nn
import torch.nn as nn

model = nn.Sequential(
                nn.Linear(22,1),
                nn.Sigmoid()
)

loss_fn = nn.BCELoss()

opt = torch.optim.Adam(model.parameters(),lr=0.001)

batches = 16
no_of_batch = 1049//16

epoches = 1000

for epoch in range(epoches):
    for i in range(no_of_batch):
        start = i*batches
        end = start + batches
        x = X[start:end]
        y = Y[start:end]
        y_pred = model(x)
        loss = loss_fn(y_pred,y)
        opt.zero_grad()
        loss.backward()
        opt.step()

model.state_dict()

((model(X).data.numpy() > 0.5).astype('int') == Y.numpy()).mean()

 0.889,,,拟合得挺不错的样子吧?

一, 请问怎样保存网络?

二 ,怎样导入新数据,用作预测二分类?

       导入 新数据后,要转化后,才能输入model进行预测吧?如,,,X = torch.from_numpy(X.values).type(torch.float32)

三,怎样导出二分类的值。

麻烦解决得详细一点,,因为我不太会写代码 ,谢谢大神哈。!!!

...全文
302 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_39756360 2022-06-11
  • 打赏
  • 举报
回复 1

有人指教 一下吗?。。。在线等,,谢谢大神。。。

保存了网络,接下来,加载网络和加载数据,都加载了,,,

然后怎样利用训练好的网络进行预测呢?

~~~可怜的我不知道 接下来的代码 是什么了。。。

weixin_39756360 2022-06-11
  • 打赏
  • 举报
回复 1

https://blog.csdn.net/weixin_45468845/article/details/122971234
这里找到了,,保存网络,和加 载网络的方法,嘿嘿。。。

158

社区成员

发帖
与我相关
我的任务
社区描述
PyTorch、深度学习、神经网络相关技术交流
社区管理员
  • 1900_
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

神经网络、机器学习、深度学习、任何人工智能相关的技术资讯都可发布交流

试试用AI创作助手写篇文章吧