鸢尾花分类-pytorch实现

前言

本文用pytorch实现了鸢尾花分类,数据不多,只做代码展示用,后续有升级版本。

代码

复制代码
'''
-*- coding: utf-8 -*-
@File  : main.py
@Author: Shanmh
@Time  : 2024/05/06 上午9:37
@Function:
'''
import torch
from sklearn import datasets
import torch.nn as nn

#1.数据准备
dataset=datasets.load_iris()
print(dataset["data"][:10])
print(dataset["target"][:10])
i_data=torch.FloatTensor(dataset["data"])
i_target=torch.LongTensor(dataset["target"])

#2.模型构建
class IrisModel(nn.Module):
    def __init__(self,input_n=4,hidden_n=20,output_n=3):
        super().__init__()
        self.line1=nn.Linear(input_n,hidden_n)
        self.line2=nn.Linear(hidden_n,output_n)
        self.relu=nn.ReLU()
    def forward(self,x):
        x=self.line1(x)
        x=self.relu(x)
        x=self.line2(x)
        return x

#3.参数定义
epoch=500
lr=0.01

model=IrisModel()
optimizer=torch.optim.SGD(model.parameters(),lr=lr) #定义优化器
loss_fun=torch.nn.CrossEntropyLoss() #多分类采用交叉熵损失函数


for e in range(epoch):
    out=model(i_data)
    loss=loss_fun(out,i_target)
    optimizer.zero_grad()  # 梯度清零
    loss.backward()  # 前馈操作
    optimizer.step()


# 5. 得出结果
out = model(i_data)
prediction = torch.max(out, 1)[1]
pred_y = prediction.data.numpy()
target_y = i_target.data.numpy()
result=pred_y==target_y
print(f"模型预测准确度,acc:{'{:.2f}'.format(len(result[result==True])/len(result))}%")

展望

1.还在考虑中怎么进行建模,建一个4维空间用来直接看出输入与输出的关系

2.有尝试过标签平滑,从结果上看不出什么区别,再想怎么可视化出来

3.怎么从结果倒推出可用的输入数据

相关推荐
葡萄城技术团队1 分钟前
表格智能体系列 · 2:AI 怎么“看到“你的表格
人工智能
一航jason2 分钟前
AIOS 岗位技能技术栈与开源工程全景
人工智能·ai·ai编程·ai-native
SZ_WSKY2 分钟前
拆解微型滑台的“生命周期”:非标自动化产线背后的精度损耗与维护真相
人工智能·科技·机器人·自动化·制造
王志来137944730088 分钟前
多元场景催生工控服务器机箱差异化需求匀天以柔性适配回应行业挑战
运维·服务器·人工智能·python
狂师9 分钟前
UI自动化测试提效必备Skill!一套CI流水线编排 Skill 可以直接抄了...
人工智能·agent·测试
YOLO数据集集合13 分钟前
建筑物损伤分割与检测数据集 | 建筑损伤检测 结构病害 实例分割 混凝土缺陷
yolo·目标检测·计算机视觉·分类·建筑缺陷·建筑裂缝·建筑外立面
光锥智能13 分钟前
争抢“实时互动”,爱诗科技的世界模型走到哪了
人工智能·科技·实时互动
天空之城--17 分钟前
Android Flutter行业最新动态与实用参考(2026年8月第3周)
android·人工智能·flutter·ai编程
码视野1 小时前
基于 Vue3 + Element Plus 的【微短剧剧本智能创作与分镜生产协同系统】设计与实现(含PRD/三端源码/大屏)
前端·人工智能·vue3
axiao91 小时前
2026年呼和浩特集团品牌全域传播服务商推荐:GEO优化+短视频+网站+广告全链路机构
大数据·人工智能