当前位置: 首页 > news >正文

asp自动获取网站快照 网站缩略图公交车网站怎么做留言板

asp自动获取网站快照 网站缩略图,公交车网站怎么做留言板,购物平台排名,网站建设设计收费基于WIN10的64位系统演示 一、写在前面 上期我们基于TensorFlow环境介绍了多分类建模的误判病例分析。 本期以健康组、肺结核组、COVID-19组、细菌性#xff08;病毒性#xff09;肺炎组为数据集#xff0c;基于Pytorch环境#xff0c;构建SqueezeNet多分类模型#xf…基于WIN10的64位系统演示 一、写在前面 上期我们基于TensorFlow环境介绍了多分类建模的误判病例分析。 本期以健康组、肺结核组、COVID-19组、细菌性病毒性肺炎组为数据集基于Pytorch环境构建SqueezeNet多分类模型分析误判病例因为它建模速度快。 同样基于GPT-4辅助编程。 二、误判病例分析实战 使用胸片的数据集肺结核病人和健康人的胸片的识别。其中健康人900张肺结核病人700张COVID-19病人549张、细菌性病毒性肺炎组900张分别存入单独的文件夹中。 直接分享代码 ######################################导入包################################### import copy import torch import torchvision import torchvision.transforms as transforms from torchvision import models from torch.utils.data import DataLoader from torch import optim, nn from torch.optim import lr_scheduler import os import matplotlib.pyplot as plt import warnings import numpy as npwarnings.filterwarnings(ignore) plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False# 设置GPU device torch.device(cuda:0 if torch.cuda.is_available() else cpu)################################导入数据集##################################### from torchvision import datasets, transforms from torch.nn.functional import softmax from PIL import Image import pandas as pd import torch.nn as nn import timm from torch.optim import lr_scheduler# 自定义的数据集类 class ImageFolderWithPaths(datasets.ImageFolder):def __getitem__(self, index):original_tuple super(ImageFolderWithPaths, self).__getitem__(index)path self.imgs[index][0]tuple_with_path (original_tuple (path,))return tuple_with_path# 数据集路径 data_dir ./MTB-1# 图像的大小 img_height 256 img_width 256# 数据预处理 data_transforms {train: transforms.Compose([transforms.RandomResizedCrop(img_height),transforms.RandomHorizontalFlip(),transforms.RandomVerticalFlip(),transforms.RandomRotation(0.2),transforms.ToTensor(),transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])]),val: transforms.Compose([transforms.Resize((img_height, img_width)),transforms.ToTensor(),transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])]), }# 加载数据集 full_dataset ImageFolderWithPaths(data_dir, transformdata_transforms[train])# 获取数据集的大小 full_size len(full_dataset) train_size int(0.8 * full_size) # 假设训练集占70% val_size full_size - train_size # 验证集的大小# 随机分割数据集 torch.manual_seed(0) # 设置随机种子以确保结果可重复 train_dataset, val_dataset torch.utils.data.random_split(full_dataset, [train_size, val_size])# 应用数据增强到训练集和验证集 train_dataset.dataset.transform data_transforms[train] val_dataset.dataset.transform data_transforms[val]# 创建数据加载器 batch_size 8 train_dataloader torch.utils.data.DataLoader(train_dataset, batch_sizebatch_size, shuffleTrue, num_workers0) val_dataloader torch.utils.data.DataLoader(val_dataset, batch_sizebatch_size, shuffleTrue, num_workers0)dataloaders {train: train_dataloader, val: val_dataloader} dataset_sizes {train: len(train_dataset), val: len(val_dataset)} class_names full_dataset.classes# 获取数据集的类别 class_names full_dataset.classes# 保存预测结果的列表 results []###############################定义SqueezeNet模型################################ # 定义SqueezeNet模型 model models.squeezenet1_1(pretrainedTrue) # 这里以SqueezeNet 1.1版本为例 num_ftrs model.classifier[1].in_channels# 根据分类任务修改最后一层 # 这里我们改变模型的输出层为4因为我们做的是四分类 model.classifier[1] nn.Conv2d(num_ftrs, 4, kernel_size(1,1))# 修改模型最后的输出层为我们需要的类别数 model.num_classes 4model model.to(device)# 打印模型摘要 print(model)#############################编译模型######################################### # 定义损失函数 criterion nn.CrossEntropyLoss()# 定义优化器 optimizer torch.optim.Adam(model.parameters())# 定义学习率调度器 exp_lr_scheduler lr_scheduler.StepLR(optimizer, step_size7, gamma0.1)# 开始训练模型 num_epochs 20# 初始化记录器 train_loss_history [] train_acc_history [] val_loss_history [] val_acc_history []for epoch in range(num_epochs):print(Epoch {}/{}.format(epoch, num_epochs - 1))print(- * 10)# 每个epoch都有一个训练和验证阶段for phase in [train, val]:if phase train:model.train() # 设置模型为训练模式else:model.eval() # 设置模型为评估模式running_loss 0.0running_corrects 0# 遍历数据for inputs, labels, paths in dataloaders[phase]:inputs inputs.to(device)labels labels.to(device)# 零参数梯度optimizer.zero_grad()# 前向with torch.set_grad_enabled(phase train):outputs model(inputs)_, preds torch.max(outputs, 1)loss criterion(outputs, labels)# 只在训练模式下进行反向和优化if phase train:loss.backward()optimizer.step()# 统计running_loss loss.item() * inputs.size(0)running_corrects torch.sum(preds labels.data)epoch_loss running_loss / dataset_sizes[phase]epoch_acc (running_corrects.double() / dataset_sizes[phase]).item()# 记录每个epoch的loss和accuracyif phase train:train_loss_history.append(epoch_loss)train_acc_history.append(epoch_acc)else:val_loss_history.append(epoch_loss)val_acc_history.append(epoch_acc)print({} Loss: {:.4f} Acc: {:.4f}.format(phase, epoch_loss, epoch_acc))print()# 保存模型 torch.save(model.state_dict(), SqueezeNet_model-m-s.pth)# 加载最佳模型权重 #model.load_state_dict(best_model_wts) #torch.save(model, shufflenet_best_model.pth) #print(The trained model has been saved.) ###########################误判病例分析################################# import os import pandas as pd from collections import defaultdict# 判定组别的字典 group_dict {(COVID-19, Normal): B,(COVID-19, Pneumonia): C,(COVID-19, Tuberculosis): D,(Normal, COVID-19): E,(Normal, Pneumonia): F,(Normal, Tuberculosis): G,(Pneumonia, COVID-19): H,(Pneumonia, Normal): I,(Pneumonia, Tuberculosis): J,(Tuberculosis, COVID-19): K,(Tuberculosis, Normal): L,(Tuberculosis, Pneumonia): M, }# 创建一个字典来保存所有的图片信息 image_predictions {}# 循环遍历所有数据集训练集和验证集 for phase in [train, val]:# 设置模型的状态model.eval()# 遍历数据for inputs, labels, paths in dataloaders[phase]:inputs inputs.to(device)labels labels.to(device)# 计算模型的输出with torch.no_grad():outputs model(inputs)_, preds torch.max(outputs, 1)# 循环遍历每一个批次的结果for path, pred in zip(paths, preds):# 提取图片的类别actual_class os.path.split(os.path.dirname(path))[-1] # 提取图片的名称image_name os.path.basename(path)# 获取预测的类别predicted_class class_names[pred]# 判断预测的分组类型if actual_class predicted_class:group_type Aelif (actual_class, predicted_class) in group_dict:group_type group_dict[(actual_class, predicted_class)]else:group_type Other # 如果没有匹配的条件可以归类为其他# 保存到字典中image_predictions[image_name] [phase, actual_class, predicted_class, group_type]# 将字典转换为DataFrame df pd.DataFrame.from_dict(image_predictions, orientindex, columns[Dataset Type, Actual Class, Predicted Class, Group Type])# 保存到CSV文件中 df.to_csv(result-m-s.csv) 四、改写过程 先说策略首先先把二分类的误判病例分析代码改成四分类的其次用咒语让GPT-4帮我们续写代码已达到误判病例分析。 提供咒语如下 ①改写{代码1}改变成4分类的建模。代码1为{XXX}; ②在{代码1}的基础上改写代码达到下面要求 1首先提取出所有图片的“原始图片的名称”、“属于训练集还是验证集”、“预测为分组类型”文件的路劲格式为例如“MTB-1\Normal\XXX.png”属于Normal“MTB-1\COVID-19\XXX.jpg”属于COVID-19“MTB-1\Pneumonia\XXX.jpeg”属于Pneumonia“MTB-1\Tuberculosis\XXX.png”属于Tuberculosis 2其次根据样本预测结果把样本分为以下若干组a预测正确的图片全部判定为A组b本来就是COVID-19的图片预测为Normal判定为B组c本来就是COVID-19的图片预测为Pneumonia判定为C组d本来就是COVID-19的图片预测为Tuberculosis判定为D组e本来就是Normal的图片预测为COVID-19判定为E组f本来就是Normal的图片预测为Pneumonia判定为F组g本来就是Normal的图片预测为Tuberculosis判定为G组h本来就是Pneumonia的图片预测为COVID-19判定为H组i本来就是Pneumonia的图片预测为Normal判定为I组j本来就是Pneumonia的图片预测为Tuberculosis判定为J组k本来就是Tuberculosis的图片预测为COVID-19判定为H组l本来就是Tuberculosis的图片预测为Normal判定为I组m本来就是Tuberculosis的图片预测为Pneumonia判定为J组 3居于以上计算的结果生成一个名为result-m.csv表格文件。列名分别为“原始图片的名称”、“属于训练集还是验证集”、“预测为分组类型”、“判定的组别”。其中“原始图片的名称”为所有图片的图片名称“属于训练集还是验证集”为这个图片属于训练集还是验证集“预测为分组类型”为模型预测该样本是哪一个分组“判定的组别”为根据步骤2判定的组别从A到J一共十组选择一个。 4需要把所有的图片都进行上面操作注意是所有图片而不只是一个批次的图片。 代码1为{XXX} ③还需要根据报错做一些调整即可自行调整。 最后看看结果 模型只运行了2次所以效果很差哈全部是预测成了COVID-19。 四、数据 链接https://pan.baidu.com/s/1rqu15KAUxjNBaWYfEmPwgQ?pwdxfyn 提取码xfyn 五、结语 深度学习图像分类的教程到此结束洋洋洒洒29篇涉及到的算法和技巧也够发一篇SCI了。当然图像识别还有图像分割和目标识别两块内容就放到最后再说了。下一趴我们来介绍时间序列建模
http://www.pierceye.com/news/733813/

相关文章:

  • 哈铁工程建设公司网站可做推广的网站
  • 建湖做网站哪家最好计算机网络中小型企业网络设计方案
  • 如何用 python 做网站网站后台seo优化如何做
  • 网站搭建徐州百度网络c2c平台是洗钱吗
  • 二级域名站群微信上浏览自己做的网站吗
  • 十堰微网站建设费用ps做网站尺寸
  • 网站后台制作用的软件电子商务网站推广案例
  • 汽车低价网站建设wordpress怎么搜索中文主题
  • 温江建设局备案网站高品质外贸网站建设
  • 营销网站制作哪家好洛阳外贸网站推广
  • 手机网站与app广州番禺区美食攻略
  • 做ug图纸的网站网站建设企业站
  • 网站文章多久才收录合作社网站建设
  • 福建泉州网站建设做网站网页的成本
  • 武威网站制作公司服务电话网站怎么做微信登录
  • 网站换空间 seo备案号怎么放到网站
  • 卡易售网站建设信息流投放平台
  • 装修设计公司网站有哪些5g国产天天5g天天
  • 网站内容管理校园网站建设报价
  • 哪个网站系统做的好网站设计原则的第三要素
  • 老区建设网站亚马逊市场营销案例分析
  • 固原建设厅官方网站智慧树网站的章节题做不了
  • 网站建设人才logo设计在线
  • 在网站上做广告教育网站平面设计
  • 中文html网站模板下载做健康类网站怎么备案
  • 何为响应式网站建设公司网站的步骤
  • 网站有哪些分类网游开发公司
  • 织梦网站做瀑布流方便建设网站平台的建议
  • 网站建设实验报告阿里云搭建个人博客wordpress
  • 深圳市福田建设局网站文创产品设计就业前景