# iris_multi-classfication.py
"""
Pytorch in action
Pytorch实现iris数据集的分类
"""
from tkinter import HIDDEN
import torch
import matplotlib.pyplot as plt
import torch.nn.functional as F
from sklearn.datasets import load_iris
from torch.autograd import Variable
from torch.optim import SGD
# 动态的判断GPU是否可用,方便在不同类型的处理器上迁移
use_cuda = torch.cuda.is_available()
print("use_cuda:",use_cuda)
# 加载数据集
iris = load_iris()
print(iris.keys())
# 数据预处理,包括从数据集里区分输入输出,最后把输入输出数据封装成Pytorch期望的Variable格式
x = iris['data'] # 特征信息
y = iris['target'] # 目标分类
print(x.shape) # (150,4)
print(y.shape) # (150,)
print(y)
x = torch.FloatTensor(x)
y = torch.LongTensor(y)
x,y = Variable(x),Variable(y)
# Pytorch中自定义的模型都需要继承Module,并重写forward方法完成前向计算过程
class Net(torch.nn.Module):
# 初始化函数,接受自定义输入特征维数,隐含层特征维数,输出层特征维数
def __init__(self,n_feature,n_hidden,n_output):
super(Net,self).__init__()
self.hidden = torch.nn.Linear(n_feature,n_hidden)
深度学习实战——利用Pytorch实现iris数据集的分类
最新推荐文章于 2024-08-01 15:32:59 发布