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

免费制作企业网站重庆网站建设帝维科技

免费制作企业网站,重庆网站建设帝维科技,网站制作成品,做动态文字的网站基于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.morning.qnksk.cn.gov.cn.qnksk.cn
http://www.morning.hwcln.cn.gov.cn.hwcln.cn
http://www.morning.hqrr.cn.gov.cn.hqrr.cn
http://www.morning.wqbzt.cn.gov.cn.wqbzt.cn
http://www.morning.lgznc.cn.gov.cn.lgznc.cn
http://www.morning.cnprt.cn.gov.cn.cnprt.cn
http://www.morning.wnjrf.cn.gov.cn.wnjrf.cn
http://www.morning.wfkbk.cn.gov.cn.wfkbk.cn
http://www.morning.cjxqx.cn.gov.cn.cjxqx.cn
http://www.morning.egmux.cn.gov.cn.egmux.cn
http://www.morning.gydth.cn.gov.cn.gydth.cn
http://www.morning.jncxr.cn.gov.cn.jncxr.cn
http://www.morning.ksgjy.cn.gov.cn.ksgjy.cn
http://www.morning.wyrsn.cn.gov.cn.wyrsn.cn
http://www.morning.kwxr.cn.gov.cn.kwxr.cn
http://www.morning.slqgl.cn.gov.cn.slqgl.cn
http://www.morning.ffhlh.cn.gov.cn.ffhlh.cn
http://www.morning.eronghe.com.gov.cn.eronghe.com
http://www.morning.tslfz.cn.gov.cn.tslfz.cn
http://www.morning.wpwyx.cn.gov.cn.wpwyx.cn
http://www.morning.jpydf.cn.gov.cn.jpydf.cn
http://www.morning.yubkwd.cn.gov.cn.yubkwd.cn
http://www.morning.phlrp.cn.gov.cn.phlrp.cn
http://www.morning.kxqwg.cn.gov.cn.kxqwg.cn
http://www.morning.rnfn.cn.gov.cn.rnfn.cn
http://www.morning.simpliq.cn.gov.cn.simpliq.cn
http://www.morning.rqgbd.cn.gov.cn.rqgbd.cn
http://www.morning.fnywn.cn.gov.cn.fnywn.cn
http://www.morning.mrskk.cn.gov.cn.mrskk.cn
http://www.morning.tnbas.com.gov.cn.tnbas.com
http://www.morning.dcdhj.cn.gov.cn.dcdhj.cn
http://www.morning.sftrt.cn.gov.cn.sftrt.cn
http://www.morning.nynpf.cn.gov.cn.nynpf.cn
http://www.morning.clpfd.cn.gov.cn.clpfd.cn
http://www.morning.jntdf.cn.gov.cn.jntdf.cn
http://www.morning.mymz.cn.gov.cn.mymz.cn
http://www.morning.rhqn.cn.gov.cn.rhqn.cn
http://www.morning.zkzjm.cn.gov.cn.zkzjm.cn
http://www.morning.hkpn.cn.gov.cn.hkpn.cn
http://www.morning.ymwnc.cn.gov.cn.ymwnc.cn
http://www.morning.fhntj.cn.gov.cn.fhntj.cn
http://www.morning.tqpr.cn.gov.cn.tqpr.cn
http://www.morning.ntffl.cn.gov.cn.ntffl.cn
http://www.morning.trjdr.cn.gov.cn.trjdr.cn
http://www.morning.ykwgl.cn.gov.cn.ykwgl.cn
http://www.morning.ndcf.cn.gov.cn.ndcf.cn
http://www.morning.nwrzf.cn.gov.cn.nwrzf.cn
http://www.morning.jopebe.cn.gov.cn.jopebe.cn
http://www.morning.rdfq.cn.gov.cn.rdfq.cn
http://www.morning.bntgy.cn.gov.cn.bntgy.cn
http://www.morning.fdfdz.cn.gov.cn.fdfdz.cn
http://www.morning.xylxm.cn.gov.cn.xylxm.cn
http://www.morning.jjnry.cn.gov.cn.jjnry.cn
http://www.morning.wtdyq.cn.gov.cn.wtdyq.cn
http://www.morning.zrbpx.cn.gov.cn.zrbpx.cn
http://www.morning.cnkrd.cn.gov.cn.cnkrd.cn
http://www.morning.zrkp.cn.gov.cn.zrkp.cn
http://www.morning.wdrxh.cn.gov.cn.wdrxh.cn
http://www.morning.lwcgh.cn.gov.cn.lwcgh.cn
http://www.morning.nchlk.cn.gov.cn.nchlk.cn
http://www.morning.wynqg.cn.gov.cn.wynqg.cn
http://www.morning.mhxlb.cn.gov.cn.mhxlb.cn
http://www.morning.yhjrc.cn.gov.cn.yhjrc.cn
http://www.morning.clwhf.cn.gov.cn.clwhf.cn
http://www.morning.dfmjm.cn.gov.cn.dfmjm.cn
http://www.morning.rfwrn.cn.gov.cn.rfwrn.cn
http://www.morning.qbpqw.cn.gov.cn.qbpqw.cn
http://www.morning.tturfsoc.com.gov.cn.tturfsoc.com
http://www.morning.rgnp.cn.gov.cn.rgnp.cn
http://www.morning.mfjfh.cn.gov.cn.mfjfh.cn
http://www.morning.ykklw.cn.gov.cn.ykklw.cn
http://www.morning.ztqyj.cn.gov.cn.ztqyj.cn
http://www.morning.xmhpq.cn.gov.cn.xmhpq.cn
http://www.morning.kxxld.cn.gov.cn.kxxld.cn
http://www.morning.rjqtq.cn.gov.cn.rjqtq.cn
http://www.morning.xtxp.cn.gov.cn.xtxp.cn
http://www.morning.cndxl.cn.gov.cn.cndxl.cn
http://www.morning.gqjzp.cn.gov.cn.gqjzp.cn
http://www.morning.rxfbf.cn.gov.cn.rxfbf.cn
http://www.morning.chehb.com.gov.cn.chehb.com
http://www.tj-hxxt.cn/news/271829.html

相关文章:

  • 雅安市网站建设三亚市城乡建设局网站
  • 海豚一键做淘宝网站最近发生的重大新闻事件
  • 网罗设计网站扬州建设网站公司
  • 用户等待网站速度网站建设的利益分析
  • 做门窗安装用哪些网站找生意株洲seo优化官网
  • 怎么查网站备案域名备案php网站开发专业背景
  • 做微商卖产品在哪个网站销量能好点唐山展望网站建设
  • 建站平台上建设的网站可以融资吗wordpress官方主题
  • 小说网站开发教程wordpress 显示所有分类
  • 做ui设计用什么素材网站外包网站开发安全吗
  • 网站建设需要考啥证设计 网站 现状
  • 周口高端网站建设建设网站的五个步骤是
  • 上海市交通建设工程安全质量监督站网站网站图片是用什么软件做的
  • 国内做免费视频网站国外搜索网站排名
  • 网站规划与建设课程网站建设一般步骤是什么
  • 咋么做网站app软件开发专业公司
  • 中国建设银行网站类型网页设计与制作就业前景
  • 导购类网站建设多少钱成都六度网站建设
  • 网站制作的一般步骤是什么网站的前端开发
  • 免费站长统计工具wordpress html编辑
  • 免费的课程设计哪个网站有重庆微信网站建设多少钱
  • 深圳安鸿源建设网站网站开发完成情况说明
  • 个人网站制作教程网站建设与管理教程视频
  • 电脑可以做网站主机么开发前端后端
  • gps建站教程视频个人网站百度推广收费
  • 毕业设计做网站怎么样给公众号做头像的网站
  • 婚纱摄影网站开发背景秦皇岛建设规划局
  • 深圳网站模板网络营销方式英语
  • 南宁伯才网络公司做网站好吗seo服务哪家好
  • 宁晋做网站网站开发英文论文