重庆官方网站查询系统苏州公司

pingmian/2026/1/22 17:31:44/文章来源:
重庆官方网站查询系统,苏州公司,com网站注册,物流网站有哪些#x1f368; 本文为#x1f517;365天深度学习训练营 中的学习记录博客#x1f356; 原作者#xff1a;K同学啊 | 接辅导、项目定制 文章目录 前言1 我的环境2 代码实现与执行结果2.1 前期准备2.1.1 引入库2.1.2 设置GPU#xff08;如果设备上支持GPU就使用GPU,否则使用C… 本文为365天深度学习训练营 中的学习记录博客 原作者K同学啊 | 接辅导、项目定制 文章目录 前言1 我的环境2 代码实现与执行结果2.1 前期准备2.1.1 引入库2.1.2 设置GPU如果设备上支持GPU就使用GPU,否则使用CPU2.1.3 导入数据2.1.4 可视化数据2.1.4 图像数据变换2.1.4 划分数据集2.1.4 加载数据2.1.4 查看数据 2.2 构建CNN网络模型2.3 训练模型2.3.1 训练模型2.3.2 编写训练函数2.3.3 编写测试函数2.3.4 正式训练 2.4 结果可视化 3 知识点详解3.1 torchvision.transforms.Compose()详解3.2 pathlib中glob匹配多个格式文件获取数据列表3.3 plt.tight_layout()作用3.4 x.view()函数3.5 The freeze_support error解决方案3.6 提升测试acc--改变优化器 总结 前言 本文将采用pytorch框架创建CNN网络实现天气识别。讲述实现代码与执行结果并浅谈涉及知识点。 关键字 torchvision.transforms.Compose()详解,pathlib中glob匹配多个格式文件获取数据列表,plt.tight_layout()作用,x.view()函数The freeze_support error解决方案提升测试acc–改变优化器。 1 我的环境 电脑系统Windows 11语言环境python 3.8.6编译器pycharm2020.2.3深度学习环境 torch 1.9.1cu111 torchvision 0.10.1cu111显卡NVIDIA GeForce RTX 4070 2 代码实现与执行结果 2.1 前期准备 2.1.1 引入库 import torch import torch.nn as nnfrom torchvision import transforms, datasets import os from pathlib import Path from PIL import Image from torchinfo import summary import torch.nn.functional as F import matplotlib.pyplot as pltplt.rcParams[font.sans-serif] [SimHei] # 用来正常显示中文标签 plt.rcParams[axes.unicode_minus] False # 用来正常显示负号 plt.rcParams[figure.dpi] 100 # 分辨率 import warningswarnings.filterwarnings(ignore) # 忽略一些warning内容无需打印2.1.2 设置GPU如果设备上支持GPU就使用GPU,否则使用CPU 前期准备-设置GPU # 如果设备上支持GPU就使用GPU,否则使用CPUdevice torch.device(cuda if torch.cuda.is_available() else cpu)print(Using {} device.format(device))输出 Using cuda device2.1.3 导入数据 前期工作-导入数据 data_dir D:/DeepLearning/data/weather_photos/ data_dir Path(data_dir)data_paths list(data_dir.glob(*)) classeNames [str(path).split(\\)[-1] for path in data_paths] print(classeNames)输出 [cloudy, rain, shine, sunrise]2.1.4 可视化数据 前期工作-可视化数据 # 指定图像文件夹路径 image_folder os.path.join(data_dir, cloudy/) # 获取文件夹中的所有图像文件 image_files [f for f in os.listdir(image_folder) if f.endswith((.jpg, .png, .jpeg))] # 创建Matplotlib图像 fig, axes plt.subplots(3, 8, figsize(16, 6)) # 使用列表推导式加载和显示图像 for ax, img_file in zip(axes.flat, image_files):img_path os.path.join(image_folder, img_file)img Image.open(img_path)ax.imshow(img)ax.axis(off) # 显示图像 plt.tight_layout() plt.show()2.1.4 图像数据变换 前期工作-图像数据变换 total_datadir data_dir# 关于transforms.Compose的更多介绍可以参考https://blog.csdn.net/qq_38251616/article/details/124878863 train_transforms transforms.Compose([transforms.Resize([224, 224]), # 将输入图片resize成统一尺寸transforms.ToTensor(), # 将PIL Image或numpy.ndarray转换为tensor并归一化到[0,1]之间transforms.Normalize( # 标准化处理--转换为标准正太分布高斯分布使模型更容易收敛mean[0.485, 0.456, 0.406],std[0.229, 0.224, 0.225]) # 其中 mean[0.485,0.456,0.406]与std[0.229,0.224,0.225] 从数据集中随机抽样计算得到的。 ]) total_data datasets.ImageFolder(total_datadir, transformtrain_transforms) print(total_data)输出 Dataset ImageFolderNumber of datapoints: 1125Root location: D:\DeepLearning\data\weather_photosStandardTransform Transform: Compose(Resize(size[224, 224], interpolationbilinear, max_sizeNone, antialiasNone)ToTensor()Normalize(mean[0.485, 0.456, 0.406], std[0.229, 0.224, 0.225]))2.1.4 划分数据集 前期工作-划分数据集 train_size int(0.8 * len(total_data)) # train_size表示训练集大小通过将总体数据长度的80%转换为整数得到 test_size len(total_data) - train_size # test_size表示测试集大小是总体数据长度减去训练集大小。 # 使用torch.utils.data.random_split()方法进行数据集划分。该方法将总体数据total_data按照指定的大小比例[train_size, test_size]随机划分为训练集和测试集 # 并将划分结果分别赋值给train_dataset和test_dataset两个变量。 train_dataset, test_dataset torch.utils.data.random_split(total_data, [train_size, test_size]) print(train_dataset, test_dataset) 输出 torch.utils.data.dataset.Subset object at 0x000001A0144E8D00 torch.utils.data.dataset.Subset object at 0x000001A0144E8DC02.1.4 加载数据 前期工作-加载数据 batch_size 32train_dl torch.utils.data.DataLoader(train_dataset,batch_sizebatch_size,shuffleTrue,num_workers1) test_dl torch.utils.data.DataLoader(test_dataset,batch_sizebatch_size,shuffleTrue,num_workers1)2.1.4 查看数据 前期工作-查看数据 for X, y in test_dl:print(Shape of X [N, C, H, W]: , X.shape)print(Shape of y: , y.shape, y.dtype)break输出 Shape of X [N, C, H, W]: torch.Size([32, 3, 224, 224]) Shape of y: torch.Size([32]) torch.int642.2 构建CNN网络模型 构建CNN网络 class Network_bn(nn.Module):def __init__(self):super(Network_bn, self).__init__()nn.Conv2d()函数第一个参数in_channels是输入的channel数量第二个参数out_channels是输出的channel数量第三个参数kernel_size是卷积核大小第四个参数stride是步长默认为1第五个参数padding是填充大小默认为0self.conv1 nn.Conv2d(in_channels3, out_channels12, kernel_size5, stride1, padding0)self.bn1 nn.BatchNorm2d(12)self.conv2 nn.Conv2d(in_channels12, out_channels12, kernel_size5, stride1, padding0)self.bn2 nn.BatchNorm2d(12)self.pool nn.MaxPool2d(2, 2)self.conv4 nn.Conv2d(in_channels12, out_channels24, kernel_size5, stride1, padding0)self.bn4 nn.BatchNorm2d(24)self.conv5 nn.Conv2d(in_channels24, out_channels24, kernel_size5, stride1, padding0)self.bn5 nn.BatchNorm2d(24)self.fc1 nn.Linear(24 * 50 * 50, len(classeNames))def forward(self, x):x F.relu(self.bn1(self.conv1(x)))x F.relu(self.bn2(self.conv2(x)))x self.pool(x)x F.relu(self.bn4(self.conv4(x)))x F.relu(self.bn5(self.conv5(x)))x self.pool(x)x x.view(-1, 24 * 50 * 50)x self.fc1(x)return xmodel Network_bn().to(device) print(model) summary(model) 输出 Network_bn((conv1): Conv2d(3, 12, kernel_size(5, 5), stride(1, 1))(bn1): BatchNorm2d(12, eps1e-05, momentum0.1, affineTrue, track_running_statsTrue)(conv2): Conv2d(12, 12, kernel_size(5, 5), stride(1, 1))(bn2): BatchNorm2d(12, eps1e-05, momentum0.1, affineTrue, track_running_statsTrue)(pool): MaxPool2d(kernel_size2, stride2, padding0, dilation1, ceil_modeFalse)(conv4): Conv2d(12, 24, kernel_size(5, 5), stride(1, 1))(bn4): BatchNorm2d(24, eps1e-05, momentum0.1, affineTrue, track_running_statsTrue)(conv5): Conv2d(24, 24, kernel_size(5, 5), stride(1, 1))(bn5): BatchNorm2d(24, eps1e-05, momentum0.1, affineTrue, track_running_statsTrue)(fc1): Linear(in_features60000, out_features4, biasTrue) )Layer (type:depth-idx) Param #Network_bn -- ├─Conv2d: 1-1 912 ├─BatchNorm2d: 1-2 24 ├─Conv2d: 1-3 3,612 ├─BatchNorm2d: 1-4 24 ├─MaxPool2d: 1-5 -- ├─Conv2d: 1-6 7,224 ├─BatchNorm2d: 1-7 48 ├─Conv2d: 1-8 14,424 ├─BatchNorm2d: 1-9 48 ├─Linear: 1-10 240,004Total params: 266,320 Trainable params: 266,320 Non-trainable params: 02.3 训练模型 2.3.1 训练模型 训练模型--设置超参数 loss_fn nn.CrossEntropyLoss() # 创建损失函数计算实际输出和真实相差多少交叉熵损失函数事实上它就是做图片分类任务时常用的损失函数 learn_rate 1e-4 # 学习率 opt torch.optim.SGD(model.parameters(), lrlearn_rate) # 作用是定义优化器用来训练时候优化模型参数其中SGD表示随机梯度下降用于控制实际输出y与真实y之间的相差有多大 2.3.2 编写训练函数 训练模型--编写训练函数 # 训练循环 def train(dataloader, model, loss_fn, optimizer):size len(dataloader.dataset) # 训练集的大小一共60000张图片num_batches len(dataloader) # 批次数目187560000/32train_loss, train_acc 0, 0 # 初始化训练损失和正确率for X, y in dataloader: # 加载数据加载器得到里面的 X图片数据和 y真实标签X, y X.to(device), y.to(device) # 用于将数据存到显卡# 计算预测误差pred model(X) # 网络输出loss loss_fn(pred, y) # 计算网络输出和真实值之间的差距targets为真实值计算二者差值即为损失# 反向传播optimizer.zero_grad() # 清空过往梯度loss.backward() # 反向传播计算当前梯度optimizer.step() # 根据梯度更新网络参数# 记录acc与losstrain_acc (pred.argmax(1) y).type(torch.float).sum().item()train_loss loss.item()train_acc / sizetrain_loss / num_batchesreturn train_acc, train_loss2.3.3 编写测试函数 训练模型--编写测试函数 # 测试函数和训练函数大致相同但是由于不进行梯度下降对网络权重进行更新所以不需要传入优化器 def test(dataloader, model, loss_fn):size len(dataloader.dataset) # 测试集的大小一共10000张图片num_batches len(dataloader) # 批次数目31310000/32312.5向上取整test_loss, test_acc 0, 0# 当不进行训练时停止梯度更新节省计算内存消耗with torch.no_grad(): # 测试时模型参数不用更新所以 no_grad整个模型参数正向推就ok不反向更新参数for imgs, target in dataloader:imgs, target imgs.to(device), target.to(device)# 计算losstarget_pred model(imgs)loss loss_fn(target_pred, target)test_loss loss.item()test_acc (target_pred.argmax(1) target).type(torch.float).sum().item()#统计预测正确的个数test_acc / sizetest_loss / num_batchesreturn test_acc, test_loss 2.3.4 正式训练 训练模型--正式训练 epochs 20 train_loss [] train_acc [] test_loss [] test_acc []for epoch in range(epochs):model.train()epoch_train_acc, epoch_train_loss train(train_dl, model, loss_fn, opt)model.eval()epoch_test_acc, epoch_test_loss test(test_dl, model, loss_fn)train_acc.append(epoch_train_acc)train_loss.append(epoch_train_loss)test_acc.append(epoch_test_acc)test_loss.append(epoch_test_loss)template (Epoch:{:2d}, Train_acc:{:.1f}%, Train_loss:{:.3f}, Test_acc:{:.1f}%Test_loss:{:.3f})print(template.format(epoch 1, epoch_train_acc * 100, epoch_train_loss, epoch_test_acc * 100, epoch_test_loss)) print(Done)输出 Epoch: 1, Train_acc:55.8%, Train_loss:1.098, Test_acc:58.7%Test_loss:1.073 Epoch: 2, Train_acc:79.8%, Train_loss:0.682, Test_acc:74.2%Test_loss:1.073 Epoch: 3, Train_acc:83.7%, Train_loss:0.536, Test_acc:78.2%Test_loss:0.552 Epoch: 4, Train_acc:85.3%, Train_loss:0.472, Test_acc:80.9%Test_loss:0.466 Epoch: 5, Train_acc:88.4%, Train_loss:0.412, Test_acc:82.7%Test_loss:0.477 Epoch: 6, Train_acc:88.8%, Train_loss:0.367, Test_acc:88.0%Test_loss:0.418 Epoch: 7, Train_acc:90.7%, Train_loss:0.318, Test_acc:88.4%Test_loss:0.411 Epoch: 8, Train_acc:91.4%, Train_loss:0.288, Test_acc:86.2%Test_loss:0.371 Epoch: 9, Train_acc:91.8%, Train_loss:0.289, Test_acc:86.7%Test_loss:0.377 Epoch:10, Train_acc:91.4%, Train_loss:0.282, Test_acc:89.3%Test_loss:0.342 Epoch:11, Train_acc:93.1%, Train_loss:0.248, Test_acc:89.3%Test_loss:0.332 Epoch:12, Train_acc:93.6%, Train_loss:0.230, Test_acc:87.6%Test_loss:0.344 Epoch:13, Train_acc:94.8%, Train_loss:0.216, Test_acc:88.9%Test_loss:0.381 Epoch:14, Train_acc:94.2%, Train_loss:0.206, Test_acc:87.6%Test_loss:0.340 Epoch:15, Train_acc:94.8%, Train_loss:0.199, Test_acc:88.4%Test_loss:0.316 Epoch:16, Train_acc:94.7%, Train_loss:0.205, Test_acc:88.4%Test_loss:0.475 Epoch:17, Train_acc:95.7%, Train_loss:0.222, Test_acc:86.7%Test_loss:0.340 Epoch:18, Train_acc:96.1%, Train_loss:0.200, Test_acc:88.0%Test_loss:0.319 Epoch:19, Train_acc:95.4%, Train_loss:0.182, Test_acc:88.4%Test_loss:0.337 Epoch:20, Train_acc:96.8%, Train_loss:0.192, Test_acc:89.3%Test_loss:0.304 Done2.4 结果可视化 训练模型--结果可视化 epochs_range range(epochs)plt.figure(figsize(12, 3)) plt.subplot(1, 2, 1)plt.plot(epochs_range, train_acc, labelTraining Accuracy) plt.plot(epochs_range, test_acc, labelTest Accuracy) plt.legend(loclower right) plt.title(Training and Validation Accuracy)plt.subplot(1, 2, 2) plt.plot(epochs_range, train_loss, labelTraining Loss) plt.plot(epochs_range, test_loss, labelTest Loss) plt.legend(locupper right) plt.title(Training and Validation Loss) plt.show()3 知识点详解 3.1 torchvision.transforms.Compose()详解 torchvision是pytorch的一个图形库它服务于PyTorch深度学习框架的主要用来构建计算机视觉模型。torchvision.transforms主要是用于常见的一些图形变换。以下是torchvision的构成 1.torchvision.datasets: 一些加载数据的函数及常用的数据集接口 2.torchvision.models: 包含常用的模型结构含预训练模型例如AlexNet、VGG、ResNet等 3.torchvision.transforms: 常用的图片变换例如裁剪、旋转等 4.torchvision.utils: 其他的一些有用的方法。 torchvision.transforms.Compose()类的主要作用是串联多个图片变换的操作。from torchvision.transforms import transformstrain_transforms transforms.Compose([transforms.Resize([224, 224]), # 将输入图片resize成统一尺寸transforms.RandomRotation(degrees(-10, 10)), # 随机旋转-10到10度之间随机选transforms.RandomHorizontalFlip(p0.5), # 随机水平翻转 选择一个概率概率transforms.RandomVerticalFlip(p0.5), # 随机垂直翻转transforms.RandomPerspective(distortion_scale0.6, p1.0), # 随机视角transforms.GaussianBlur(kernel_size(5, 9), sigma(0.1, 5)), # 随机选择的高斯模糊模糊图像transforms.ToTensor(), # 将PIL Image或numpy.ndarray转换为tensor并归一化到[0,1]之间transforms.Normalize( # 标准化处理--转换为标准正太分布高斯分布使模型更容易收敛mean[0.485, 0.456, 0.406], std [0.229, 0.224, 0.225]) # 其中 mean[0.485,0.456,0.406]与std[0.229,0.224,0.225] 从数据集中随机抽样计算得到的。 ])参考链接:torchvision.transforms.Compose()详解【Pytorch入门手册】 3.2 pathlib中glob匹配多个格式文件获取数据列表 可视化数据可用另一种方式显示 数据预处理-可视化数据cloudyPath Path(data_dir)/cloudyimage_files list(p.resolve() for p in cloudyPath.glob(*) if p.suffix in [.jpg, .png, .jpeg])plt.figure(figsize(16, 6))for i in range(len(image_files[:24])):image_file image_files[i]ax plt.subplot(3, 8, i 1)img Image.open(str(image_file))plt.imshow(img)plt.axis(off)# 显示图片plt.tight_layout()plt.show()3.3 plt.tight_layout()作用 tight_layout会自动调整子图参数使之填充整个图像区域。这是个实验特性可能在一些情况下不工作。它仅仅检查坐标轴标签、刻度标签以及标题的部分。 当你拥有多个子图时你会经常看到不同轴域的标签叠在一起。 plt.rcParams[savefig.facecolor] 0.8def example_plot(ax, fontsize12):ax.plot([1, 2])ax.locator_params(nbins3)ax.set_xlabel(x-label, fontsizefontsize)ax.set_ylabel(y-label, fontsizefontsize)ax.set_title(Title, fontsizefontsize)plt.close(all) fig, ((ax1, ax2), (ax3, ax4)) plt.subplots(nrows2, ncols2) example_plot(ax1) example_plot(ax2) example_plot(ax3) example_plot(ax4)产生图片 增加plt.tight_layout()会调整子图之间的间隔来减少堆叠。 参考链接plt.tight_layout() 3.4 x.view()函数 在构建神经网络的时候经常会用到x.view()函数实际上view类似于reshape的用法将张量重新规划格式本文将简单介绍这个函数的用法。 import torcha torch.arange(1,17) print(a.shape) print(a) a a.view(-1,4) print(a.shape) print(a)输出 torch.Size([16]) tensor([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]) torch.Size([4, 4]) tensor([[ 1, 2, 3, 4],[ 5, 6, 7, 8],[ 9, 10, 11, 12],[13, 14, 15, 16]])这里view的第一个参数有时会是-1-1代表不确定行数将由张量的长度除以列数决定也就是说 a.view(-1,4) a.view(4,4) a.view(-1,8) a.view(2,8) 参考链接x.view(-1,4) 3.5 The freeze_support error解决方案 RuntimeError:An attempt has been made to start a new process before thecurrent process has finished its bootstrapping phase.This probably means that you are not using fork to start yourchild processes and you have forgotten to use the proper idiomin the main module:if __name__ __main__:freeze_support()...The freeze_support() line can be omitted if the programis not going to be frozen to produce an executable.这个错误相信很多人都碰到过就是在Linux中可以很好运行的代码在Windows中会给出这样的错误。 究其原因往往出现在multiprocess上。当程序中调用 multiprocess函数却不是在main中时会出现这样的报错。 解决方案 写一个main函数然后在if name ‘main’:中运行这个main函数。把那些引用multiprocessing的函数作都放到main()函数里去执行就OK了。 参考链接Windows freeze_support Error: An attempt has been made to start a new process 3.6 提升测试acc–改变优化器 原文优化器设置为SDG opt torch.optim.Adam(model.parameters(), lrlearn_rate) 变更优化器为Adam后代码如下 opt torch.optim.Adam(model.parameters(), lrlearn_rate) 变更后测试精度提升 Epoch: 2, Train_acc:84.2%, Train_loss:0.435, Test_acc:90.2%Test_loss:0.257 Epoch: 3, Train_acc:89.1%, Train_loss:0.323, Test_acc:84.9%Test_loss:0.481 Epoch: 4, Train_acc:89.3%, Train_loss:0.346, Test_acc:91.6%Test_loss:0.218 Epoch: 5, Train_acc:91.3%, Train_loss:0.272, Test_acc:92.9%Test_loss:0.271 Epoch: 6, Train_acc:96.9%, Train_loss:0.183, Test_acc:94.7%Test_loss:0.184 Epoch: 7, Train_acc:93.8%, Train_loss:0.261, Test_acc:92.0%Test_loss:0.312 Epoch: 8, Train_acc:95.6%, Train_loss:0.141, Test_acc:92.4%Test_loss:0.203 Epoch: 9, Train_acc:97.2%, Train_loss:0.143, Test_acc:94.2%Test_loss:0.170 Epoch:10, Train_acc:93.1%, Train_loss:0.224, Test_acc:93.8%Test_loss:0.265 Epoch:11, Train_acc:95.3%, Train_loss:0.275, Test_acc:93.8%Test_loss:0.211 Epoch:12, Train_acc:95.6%, Train_loss:0.164, Test_acc:94.7%Test_loss:0.196 Epoch:13, Train_acc:98.2%, Train_loss:0.066, Test_acc:93.3%Test_loss:0.432 Epoch:14, Train_acc:99.0%, Train_loss:0.052, Test_acc:95.1%Test_loss:0.191 Epoch:15, Train_acc:98.7%, Train_loss:0.087, Test_acc:93.3%Test_loss:0.248 Epoch:16, Train_acc:96.8%, Train_loss:0.156, Test_acc:93.8%Test_loss:0.290 Epoch:17, Train_acc:97.7%, Train_loss:0.067, Test_acc:93.8%Test_loss:0.268 Epoch:18, Train_acc:99.1%, Train_loss:0.036, Test_acc:94.7%Test_loss:0.388 Epoch:19, Train_acc:99.6%, Train_loss:0.021, Test_acc:95.6%Test_loss:0.176 Epoch:20, Train_acc:99.9%, Train_loss:0.012, Test_acc:95.1%Test_loss:0.181 Done优化器的详解可以参考链接深度学习 Day11——T11优化器对比实验 总结 通过本文的学习遇到The freeze_support error问题网上检索该问题解决方案顺利解决该问题并通过改变优化器的方式提升了原有模型的测试精度。

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

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

相关文章

网站粘度html登录界面设计

centos关机命令: 1、halt 立马关机 2、shutdown -h 10 1分钟后自动关机 3、poweroff 立刻关机,并且电源也会断掉 4、shutdown -h now 立刻关机(root用户使用) 如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启转载于:https://www.cnbl…

杭州下沙网站建设帝国cms建网站

从3.1版开始, Spring框架提供了对几种不同来源的抽象,通过它们您可以轻松地配置应用程序: Environment 。 在这篇文章中,我描述了一个微基准测试,我可以证明该基准测试是一个方便的API(如果您在应用程序中…

上海企业建站流程电子商务专业就业方向女生

为什么要迁移,江湖上传说windows server的稳定性不如某某某,这类议题与八卦新闻没两样,不谈,如果windows的价钱能够和linux相同或者差异不至于那么大,我才懒得换,因为穷,这才是重点。 涉及IO路径…

如何降低网站的权重wordpress底部版权信息修改

目录 前言 一、 数据预处理与清洗 二、常见可视化技术 三、可视化工具和平台 博主介绍:✌专注于前后端、机器学习、人工智能应用领域开发的优质创作者、秉着互联网精神开源贡献精神,答疑解惑、坚持优质作品共享。本人是掘金/腾讯云/阿里云等平台优质作者…

温州市建设工程招投标网站wordpress transient

1、内容简介 略 46-可以交流、咨询、答疑 2、内容说明 略 4 取标段的分析 取标装置是贴标机的核心部件之一,是影响贴标质量和贴标精度的重要因素,取标段是通过取标板与标签的相切运动使得涂有胶水的取标板从标签盒中粘取标签纸[4],理论…

查询商品价格走势的网站百度网站置顶怎么做

电脑快捷键 Tab键 等于六个空格 Alt键 Alt加上F4关闭当前窗口 Ctrl键 Ctrl加S保存 shift键 shift加delete永久性的删除(不会出现在回收站中) win win加E打开我的电脑 win加tab桌面多窗口预览,切换 其他 cmd打开命令行窗口 任务管理器结束进程后 cmd输入explorer可…

自动做简历的网站免费域名空间服务

1、supervisorctl: 这是Supervisor提供的命令行客户端,Supervisor是一个进程控制系统。它用于在UNIX类操作系统上控制和监视进程。它通常用于服务器环境中管理长时间运行的进程。 Supervisor 是一个用于监控和控制 UNIX 系统上的进程的程序。它不是大多…

专注网站建设11年网站建设有哪些环节

onload事件是在网页中的所有内容(包括图片、样式表、脚本等)都加载完成后触发的事件。它常用于在页面加载完成后执行一些操作,例如初始化页面元素、绑定事件监听器等。 可以通过以下方式来使用onload事件: 在HTML标签中直接添加…

怎么样给自己做网站静态网页制作视频教程

文章目录 第一步:在项目public文件夹下创建一个login.html,其实就是将index.html复制一份,将title改一下:login.html 第二步:在src文件夹下创建一个login文件夹,分别创建login.main.js、login.router.js、l…

毕业设计博客网站开发女孩子做网站推广

一、Linux 常见的登录档档名登录档可以帮助我们瞭解很多系统重要的事件,包括登入者的部分资讯,因此登录档的权限通常是设定为仅有 root 能够读取而已。 而由于登录档可以记载系统这麽多的详细资讯,所以啦,一个有经验的主机管理员会…

长春网站开发培训什么是cms网站系统

头像解码库:libwlt2bmp.so 照片文件名:photo.bmp 原始身份证相片数据:574C66007E00320000F........(此处省略) 调用身份证阅读器Linux开发包,然后调用libwlt2bmp.so解码库文件,传入身份证原始…

东莞定制网站开发建立网站需要哪几个

目录 引言游戏背景介绍游戏规则游戏设计与实现开发环境与工具游戏界面设计游戏逻辑实现游戏优化和测试性能优化测试工具和流程说明引言 俄罗斯方块是一款经典的益智游戏,深受玩家喜爱。本文将介绍如何使用C#编程语言制作一个简单的俄罗斯方块小游戏,并探讨其设计与实现过程。…

天目西路网站建设德州做网站建设的公司

关于手机Charge,小白在以前的文章很少讲,一是这部分东西太多,过于复杂。二是总感觉写起来欠缺点什么。但后来想一想,本是抱着互相学习来写文章的心理态度,还是决定尝试写一些。 关于今天要讲的关于手机Charge的内容&a…

建设大型购物网站做外贸用什么平台

9.环形链表 141. 环形链表 - 力扣(LeetCode) /* 解题思路: 定义快慢指针fast,slow, 如果链表确实有环,fast指针一定会在环内追上slow指针。 */typedef struct ListNode Node; bool hasCycle(struct ListNode *head) {Node* slow …

做网站公司徐汇网站建设项目验收报告

文 | python编 | 小轶前言不知诸位在科研的起步阶段,是否曾有过如下的感受:总感觉自己写的论文就是和自己读过的论文长得不太一样,也不知道为啥。投稿的时候,审稿人也总是 get 不到论文的核心,只揪着论文的次要细节不放…

音乐排行榜网页设计作业深圳整站seo

PHP原始为Personal Home Page的缩写,已经正式更名为 “PHP: Hypertext Preprocessor”。PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了…

芜湖服装网站建设怎样用云服务器做网站

本篇博客只是作为个人记录,拆锂电池有危险,撬棒刺穿外壳可能爆炸,请勿模仿,误操作电池数据可能失效,请勿模仿。 1、简介 1.1、目的 得到该电池的电量计芯片型号、IIC从机地址、通信的实际波形; 1.2、步…

asp购物网站源码常州 招网站开发

shallowRef和shallowReactive shallowRef 作用&#xff1a;创建一个响应式数据&#xff0c;但只对顶层属性进行响应式处理 用法 let myVar shallowRef(initialValue)特点&#xff1a;只跟踪引用值变化&#xff0c;不关心值内部的属性变化 案例 <template><div c…

浙江网站建设制作流程济南汽车网站设计

1、将一个空塑料袋与一个装满空气的塑料袋放到秤上称重。在两个塑料袋本身完全一样的情况下&#xff0c;得出的结果会是 A、空塑料袋更重 B、装满空气的塑料袋更重 C、两个塑料袋一样重 D、无法判断 答案&#xff1a;C 2、全球变暖带来的一个主要影响就是海平面的上升。造…

网站建设好与管理在哪就业公司官网制作开发

文章目录 1 为什么需要卷(Volume)2 卷的挂载2.1 k8s集群中可以直接使用2.2 需要额外的存储组件2.3 公有云 2 PV(Persistent Volume)3 SC(Storage Class) 和 PVC(Persistent Volume Claim)4 总结 1 为什么需要卷(Volume) Pod是由一个或者多个容器组成的&#xff0c;在启动Pod中…