苏州相城区网站建设渭南市工程建设项目审批网上办事大厅

news/2025/9/29 10:46:13/文章来源:
苏州相城区网站建设,渭南市工程建设项目审批网上办事大厅,做关于什么内容的网站,台前网站建设✅作者简介#xff1a;人工智能专业本科在读#xff0c;喜欢计算机与编程#xff0c;写博客记录自己的学习历程。 #x1f34e;个人主页#xff1a;小嗷犬的个人主页 #x1f34a;个人网站#xff1a;小嗷犬的技术小站 #x1f96d;个人信条#xff1a;为天地立心人工智能专业本科在读喜欢计算机与编程写博客记录自己的学习历程。 个人主页小嗷犬的个人主页 个人网站小嗷犬的技术小站 个人信条为天地立心为生民立命为往圣继绝学为万世开太平。 本文目录 数据集与 Notebook环境准备数据集可视化模型预测Loss 与评价指标 数据集与 Notebook 数据集70 Dog Breeds-Image Data Set Notebook「MobileNet V3」70 Dog Breeds-Image Classification 环境准备 import warnings warnings.filterwarnings(ignore)禁用警告防止干扰。 !pip install lightning --quiet安装 PyTorch Lightning。 import random import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as snssns.set_theme(styledarkgrid, font_scale1.5, fontSimHei, rc{axes.unicode_minus:False})导入常用的库设置绘图风格。 import torch import torchmetrics from torch import nn, optim from torch.nn import functional as F from torch.utils.data import DataLoader from torchvision import transforms, datasets, models导入 PyTorch 相关的库。 import lightning.pytorch as pl from lightning.pytorch.loggers import CSVLogger from lightning.pytorch.callbacks.early_stopping import EarlyStopping导入 PyTorch Lightning 相关的库。 seed 1 random.seed(seed) np.random.seed(seed) torch.manual_seed(seed) torch.cuda.manual_seed(seed) pl.seed_everything(seed, workersTrue)设置随机种子。 数据集 batch_size 64设置批次大小。 train_transform transforms.Compose([transforms.Resize((224, 224)),transforms.RandomHorizontalFlip(),transforms.ToTensor(), ])test_transform transforms.Compose([transforms.Resize((224, 224)),transforms.ToTensor(), ])设置数据集的预处理。 train_dataset datasets.ImageFolder(root/kaggle/input/70-dog-breedsimage-data-set/train, transformtrain_transform) val_dataset datasets.ImageFolder(root/kaggle/input/70-dog-breedsimage-data-set/valid, transformtest_transform) test_dataset datasets.ImageFolder(root/kaggle/input/70-dog-breedsimage-data-set/test, transformtest_transform)读取数据集。 train_loader DataLoader(train_dataset, batch_sizebatch_size, shuffleTrue) val_loader DataLoader(val_dataset, batch_sizebatch_size, shuffleTrue) test_loader DataLoader(test_dataset, batch_sizebatch_size, shuffleFalse)加载数据集。 可视化 class_names train_dataset.classes class_count [train_dataset.targets.count(i) for i in range(len(class_names))] df pd.DataFrame({Class: class_names, Count: class_count})plt.figure(figsize(12, 20), dpi100) sns.barplot(xCount, yClass, datadf) plt.tight_layout() plt.show()绘制训练集的类别分布。 plt.figure(figsize(12, 20), dpi100) images, labels next(iter(val_loader)) for i in range(8):ax plt.subplot(8, 4, i 1)plt.imshow(images[i].permute(1, 2, 0).numpy())plt.title(class_names[labels[i]])plt.axis(off) plt.tight_layout() plt.show()绘制训练集的样本。 模型 class LitModel(pl.LightningModule):def __init__(self, num_classes1000):super().__init__()self.model models.mobilenet_v3_large(weightsIMAGENET1K_V2)# for param in self.model.parameters():# param.requires_grad Falseself.model.classifier[3] nn.Linear(self.model.classifier[3].in_features, num_classes)self.accuracy torchmetrics.Accuracy(taskmulticlass, num_classesnum_classes)self.precision torchmetrics.Precision(taskmulticlass, averagemacro, num_classesnum_classes)self.recall torchmetrics.Recall(taskmulticlass, averagemacro, num_classesnum_classes)self.f1score torchmetrics.F1Score(taskmulticlass, num_classesnum_classes)def forward(self, x):x self.model(x)return xdef configure_optimizers(self):optimizer optim.Adam(self.parameters(), lr0.001, betas(0.9, 0.99), eps1e-08, weight_decay1e-5)return optimizerdef training_step(self, batch, batch_idx):x, y batchy_hat self(x)loss F.cross_entropy(y_hat, y)self.log(train_loss, loss, on_stepTrue, on_epochFalse, prog_barTrue, loggerTrue)self.log_dict({train_acc: self.accuracy(y_hat, y),train_prec: self.precision(y_hat, y),train_recall: self.recall(y_hat, y),train_f1score: self.f1score(y_hat, y),},on_stepTrue,on_epochFalse,loggerTrue,)return lossdef validation_step(self, batch, batch_idx):x, y batchy_hat self(x)loss F.cross_entropy(y_hat, y)self.log(val_loss, loss, on_stepFalse, on_epochTrue, loggerTrue)self.log_dict({val_acc: self.accuracy(y_hat, y),val_prec: self.precision(y_hat, y),val_recall: self.recall(y_hat, y),val_f1score: self.f1score(y_hat, y),},on_stepFalse,on_epochTrue,loggerTrue,)def test_step(self, batch, batch_idx):x, y batchy_hat self(x)self.log_dict({test_acc: self.accuracy(y_hat, y),test_prec: self.precision(y_hat, y),test_recall: self.recall(y_hat, y),test_f1score: self.f1score(y_hat, y),})def predict_step(self, batch, batch_idx, dataloader_idxNone):x, y batchy_hat self(x)preds torch.argmax(y_hat, dim1)return preds定义模型。 num_classes len(class_names) model LitModel(num_classesnum_classes) logger CSVLogger(./) early_stop_callback EarlyStopping(monitorval_loss, min_delta0.00, patience5, verboseFalse, modemin ) trainer pl.Trainer(max_epochs20,enable_progress_barTrue,loggerlogger,callbacks[early_stop_callback],deterministicTrue, ) trainer.fit(model, train_loader, val_loader)训练模型。 trainer.test(model, val_loader)测试模型。 预测 pred trainer.predict(model, test_loader) pred torch.cat(pred, dim0) pred pd.DataFrame(pred.numpy(), columns[Class]) pred[Class] pred[Class].apply(lambda x: class_names[x])plt.figure(figsize(12, 20), dpi100) sns.countplot(yClass, datapred) plt.tight_layout() plt.show()绘制预测结果的类别分布。 Loss 与评价指标 log_path logger.log_dir /metrics.csv metrics pd.read_csv(log_path) x_name epochplt.figure(figsize(8, 6), dpi100) sns.lineplot(xx_name, ytrain_loss, datametrics, labelTrain Loss, linewidth2, markero, markersize10) sns.lineplot(xx_name, yval_loss, datametrics, labelValid Loss, linewidth2, markerX, markersize12) plt.xlabel(Epoch) plt.ylabel(Loss) plt.tight_layout() plt.show()plt.figure(figsize(14, 12), dpi100)plt.subplot(2,2,1) sns.lineplot(xx_name, ytrain_acc, datametrics, labelTrain Accuracy, linewidth2, markero, markersize10) sns.lineplot(xx_name, yval_acc, datametrics, labelValid Accuracy, linewidth2, markerX, markersize12) plt.xlabel(Epoch) plt.ylabel(Accuracy)plt.subplot(2,2,2) sns.lineplot(xx_name, ytrain_prec, datametrics, labelTrain Precision, linewidth2, markero, markersize10) sns.lineplot(xx_name, yval_prec, datametrics, labelValid Precision, linewidth2, markerX, markersize12) plt.xlabel(Epoch) plt.ylabel(Precision)plt.subplot(2,2,3) sns.lineplot(xx_name, ytrain_recall, datametrics, labelTrain Recall, linewidth2, markero, markersize10) sns.lineplot(xx_name, yval_recall, datametrics, labelValid Recall, linewidth2, markerX, markersize12) plt.xlabel(Epoch) plt.ylabel(Recall)plt.subplot(2,2,4) sns.lineplot(xx_name, ytrain_f1score, datametrics, labelTrain F1-Score, linewidth2, markero, markersize10) sns.lineplot(xx_name, yval_f1score, datametrics, labelValid F1-Score, linewidth2, markerX, markersize12) plt.xlabel(Epoch) plt.ylabel(F1-Score)plt.tight_layout() plt.show()绘制 Loss 与评价指标的变化。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/921708.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

wordpress全站ajax用wordpress仿a站

中介者模式 中介者模式 中介者模式 介绍:用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 实现:抽象中介者类,定义一个…

服装设计网上自学课程宁波网站搜索引擎优化

以下文字是钱学森在1990年给汪成为院士的信中对虚拟现实技术的科学意义和未来发展给与的思考和建议,他也提出可以将虚拟现实技术成为灵境技术。

IOS-和安卓-AR-游戏开发指南-全-

IOS 和安卓 AR 游戏开发指南(全)原文:zh.annas-archive.org/md5/eaf1b154611090aa6422cd5e3d6dc2fc 译者:飞龙 协议:CC BY-NC-SA 4.0前言 在本书中,我们将介绍增强现实及其如何使用强大而简单的工具实现。利用 V…

Winform/C# 输出到Release VS中Release模式下生成去掉生成pdb文件

前几天发布项目,有时候就发布那几个dll,但是一个dll同时还有一个pdb文件,而且pdb文件貌似还挺大。 pdb文件包含了编译后程序指向源代码的位置信息,用于调试的时候定位到源代码,主要是用来方便调试的. 在程序发布为r…

成都响应网站建设网站文章标题

一、实验内容与目的 实验要求: 利用CP226实验仪上的小键盘将程序输入主存储器EM,通过指令的执行实现微程序控制器的程序控制。 实验目的: 1.掌握模型机的操作码测试过程; 2.掌握模型机微程序控制器的基本结构以及程序控制的基本原…

表格上传网站建设网游小说

1. 引言 在任何编程语言中,错误处理都是一个至关重要的部分。在 Go 语言中,错误处理方式独具特色,它并没有采用异常处理机制(try-catch),而是通过显式的错误返回值来处理错误。这种方式让代码更加明确、易于维护,也使得错误处理更加透明。 在这篇博客中,我们将深入探…

做外贸好的网站有哪些百度识图在线

目录 0、基本信息1、研究动机2、创新点2.1、核心思想:2.2、思想推导: 3、准备3.1、符号3.2、互信息3.3、JS散度3.4、Deep InfoMax方法3.5、判别器:f-GAN估计散度 4、具体实现4.1、局部-全局互信息最大化4.2、理论动机 5、实验设置5.1、直推式…

校园二手网站开发与设计任务书行政单位单位网站建设

1.实现一个纵横字谜 2.支持14x14的网格 3.可以查看答案 4.猜测错误会提示答案信息 5.从txt读取词汇 6.每次游戏开始 随机生成纵横字谜 n’h

网站推他网站wordpress教程登陆

1.为什么要有缓冲区 缓冲区分成语言层面的缓冲区和操作系统层面的缓冲区 先说结论,语言的缓冲区可以减少系统调用的次数进而提高向文件写入和读取的效率。 2.举例子 向屏幕打印,无非就是向屏幕这个文件的缓冲区写入,然后在由操作系统刷新…

重庆工程建设信息网站4399谁做的网站

log函数是指数函数y bx 的反函数,用于求数字以某个数为底的对数。log函数的定义:设b>0,b≠1,对于任意实数x > 0,如果存在唯一的实数y,使得 b^y x,则称y为以b为底x的对数,记为:y log_b(x)这里b称为对数的底数。对数运算的底数通常取10和e。常见的对数运算有:1. 常用对数…

公司核名在哪个网站网站提交搜索引擎后出现问题

作者:Zarten知乎专栏:Python爬虫深入详解知乎ID: Zarten简介: 互联网一线工作者,尊重原创并欢迎评论留言指出不足之处,也希望多些关注和点赞是给作者最好的鼓励 !介绍MongoDB是一种面向文档型的…

供应商协同平台:打造高效安全供应链的关键

供应商协同平台通过整合技术资源,解决了传统供应链中文件传输混乱、数据更新延迟、安全管控薄弱等问题。结合“Ftrans B2B企业间⽂件安全交换系统”的加密传输与权限管理功能,平台实现了设计图纸、订单数据等关键信息…

互斥锁和信号量机制

互斥锁 特性: 1.需要忙等,进程时间片用完才下处理机,违反让权等待 2.优点:等待奇迹不用切换进程上下文,多处理机系统中,若上锁的时间短,则等待的代价很低 3.常用于多处理机,一个核忙等,其他核照常工作,并快速…

NSIS为当前用户安装和为所有用户安装的选择

一、为当前用户和所有用户安装选择 确定 NSIS 脚本中应使用 SetShellVarContext all 还是 current,主要取决于你的软件安装目标和用户访问需求。可以通过以下几个核心问题来判断: 1. 软件是否需要被系统中所有用户访…

在 Unity 中运用 SoundTouch 插件控制音频倍速播放

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

网站的商桥怎么做国内产品设计公司前十名

内容管理模块 - 课程预览、提交审核 文章目录 内容管理模块 - 课程预览、提交审核一、课程预览1.1 需求分析1.2 freemarker 模板引擎1.2.1 Maven 坐标1.2.2 freemaker 相关配置信息1.2.3 添加模板 1.3 测试静态页面1.3.1 部署Nginx1.3.2 解决端口问题被占用问题1.3.3 配置host文…

网站建设综合实训报告公司建设网站需要什么条件

介绍: lag() 是一种常用的窗口函数,它用于获取某一行之前的行的值。它可以用来在结果集中的当前行之前访问指定列的值。 用法: lag() 函数的语法如下: lag(列名, 偏移量, 默认值) over (partition by 列名1, 列名2, ... order by 列名 [asc|desc], .…

数据中台厂商选型|解决方案厂商与独立中台厂商详细解读

上一轮关于数据中台厂商的分享,获得了不少同行伙伴的积极反馈与认可。大家普遍认为内容具有较好的参考意义,并希望进一步了解“解决方案厂商”与“独立数据中台厂商”各自的特点。这份关注令我感到十分荣幸,也让我更…

深度学习项目全流程实践与核心技术解析:从数据处理到模型优化 - 教程

深度学习项目全流程实践与核心技术解析:从数据处理到模型优化 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: &q…

基于 SciPy 的矩阵运算与线性代数应用详解 - 详解

基于 SciPy 的矩阵运算与线性代数应用详解 - 详解2025-09-29 10:15 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; displa…