【PyTorch 深度学习】4.用PyTorch实现多层网络

本文详细介绍了如何使用PyTorch处理数据并构建一个七层深度学习网络,包括数据预处理、模型构建、损失函数与优化器的选择、模型训练及验证集评估。在遇到类型错误后,通过将数据转换为float32解决了问题。经过模型简化,从7层减少到3层,验证集上的正确率有所提升。
摘要由CSDN通过智能技术生成

1.数据处理

1.1导入数据

我这里用的网上下载的diabetes.csv数据,首先载入数据,导入包:

import torch
import numpy as np
from torch import nn
from torch.autograd import Variable
import torch.nn.functional as F
import matplotlib.pyplot as plt
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler

%matplotlib inline
data = pd.read_csv('diabetes.csv')

看看数据长啥样:
在这里插入图片描述
可以看到’Outcome’这一栏是数据的类别

1.2数据预处理

我们将特征和类别分离,划分验证集和训练集,然后将特征归一化:

data1=data.copy()
y=data1.loc[:,['Outcome']] #数据标签
del data1['Outcome']
x = data1   #数据
x_train, x_test,y_train,y_test= train_test_split(x, y, test_size=0.3,random_state=2018)   #数据集三七分,随机种子2018

ss = StandardScaler()  
x_train = ss.fit_transform(x_train) #数据标准化
x_test = ss.fit_transform(x_test) #数据标准化

1.3数据转化为tensor

x_train_tensor=torch.from_numpy(x_train)
x_test_tensor=torch.from_numpy(x_test)
y_train_numpy=np.array(y_train)
y_train_tensor=torch.from_numpy(y_train_numpy)
y_test_numpy=np.array(y_tes
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值