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

怎样建设公司的网站网站刚通过备案

怎样建设公司的网站,网站刚通过备案,杭州建网站的公司,淄博手机网站建设报价目录 一、前言#xff1a; 二、前期准备#xff1a; 1、设备查看 2、导入收集到的数据集 3、数据预处理 4、划分数据集#xff08;8:2#xff09; 5、加载数据集 三、搭建神经网络 四、训练模型 1、设置超参数 2、编写训练函数 3、编写测试函数 4、正式训练 …目录 一、前言 二、前期准备 1、设备查看 2、导入收集到的数据集 3、数据预处理 4、划分数据集8:2 5、加载数据集 三、搭建神经网络 四、训练模型 1、设置超参数 2、编写训练函数 3、编写测试函数 4、正式训练 五、可视化结果 六、预测 1、预测函数 2、指定图片进行预测 七、模型保存 八、运行结果展示 ①使用原有的网络模型测试集的精确度基本上在82%左右。 ②在原有网络模型的基础上添加了relu激活函数 ③减小学习率 ④增大学习率 本文为365天深度学习训练营 中的学习记录博客 原作者K同学啊 | 接辅导、项目定制 一、前言 本篇博文主要使用猴痘数据集来训练模型大部分的代码还是之前的很类似不同的地方在意使用的模型参数不同模型也都是类似的。这篇文章里面你可以学会如何保存训练好的模型如何使用保存的的模型进行预测。 如以往一样可以先大概看下目录你的脑海会有大概得流程。 二、前期准备 1、设备查看 # 1、设备相关 device torch.device(cuda:0 if torch.cuda.is_available() else cpu) print(device) 2、导入收集到的数据集 我的数据集文件夹是这样的 ①一个是带有猴痘的图片的文件夹②一个是其他痘的文件夹 # 2、导入数据 data_dir ./data data_dir pathlib.Path(data_dir) # 获取到文件data的名称data_paths list(data_dir.glob(*)) # 获取到文件夹data下面子文件夹的名称 [PosixPath(data/Others), PosixPath(data/Monkeypox)] classNames [str(path).split(/)[1] for path in data_paths] # 获取到子文件夹的名称 [Others, Monkeypox]3、数据预处理 # 3、数据处理 train_transforms transforms.Compose([transforms.Resize([224, 224]),transforms.ToTensor(),transforms.Normalize(mean[0.485, 0.456, 0.406],std[0.229, 0.224, 0.225]) ])total_data datasets.ImageFolder(./data,transformtrain_transforms) # print(total_data.class_to_idx) # {Monkeypox: 0, Others: 1} total_data.class_to_idx 是一个存储了数据集类别和对应索引的字典。4、划分数据集8:2 # 4、划分数据集 train_size int(0.8*len(total_data)) test_size len(total_data) - train_size train_dataset, test_dataset torch.utils.data.random_split(total_data,[train_size, test_size]) # print(len(train_dataset), len(test_dataset)) # 1713 4295、加载数据集 # 5、加载数据集 batch_size 32 train_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) print(准备工作结束。。。。) 三、搭建神经网络 网络图如下 # 猴痘的模型 class Network_bn(nn.Module):def __init__(self):super(Network_bn, self).__init__()默认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.pool1 nn.MaxPool2d(2, 2)self.conv3 nn.Conv2d(in_channels12, out_channels24, kernel_size5, stride1, padding0)self.bn3 nn.BatchNorm2d(24)self.conv4 nn.Conv2d(in_channels24, out_channels24, kernel_size5, stride1, padding0)self.bn4 nn.BatchNorm2d(24)self.pool2 nn.MaxPool2d(2, 2)self.fc nn.Linear(24*50*50, 2)self.relu nn.ReLU(inplaceTrue)def forward(self, x):x F.relu(self.bn1(self.conv1(x)))x F.relu(self.bn2(self.conv2(x)))x self.pool1(x)x F.relu(self.bn3(self.conv3(x)))x F.relu(self.bn4(self.conv4(x)))x self.pool2(x)x x.view(-1, 24*50*50)x self.fc(x)x self.relu(x)return xmodel Network_bn().to(device) print(model) 四、训练模型 1、设置超参数 # 三、训练模型 # 1、 设置超参数 loss_fn nn.CrossEntropyLoss() # 创建损失函数 learn_rate 1e-4 # 学习率 opt torch.optim.SGD(model.parameters(), lrlearn_rate)2、编写训练函数 # 2、编写训练函数 def train(dataloader, model, loss_fn, optimizer):size len(dataloader.dataset) # 训练集大小num_batches len(dataloader) # 批次数目train_acc, train_loss 0, 0for X, y in dataloader: # 获取图片及其标签X, y X.to(device), y.to(device)# 计算预测误差pred model(X) # 网络输出loss loss_fn(pred, y) # 计算网络输出与真实值之间的差距。# 反向传播optimizer.zero_grad() # 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_loss 3、编写测试函数 # 3、 编写测试函数def test(dataloader, model, loss_fn):size len(dataloader.dataset) # 测试集大小num_batches len(dataloader) # 批次数目test_acc, test_loss 0, 0# 当不进行训练时停止梯度更新节省计算内存消耗with torch.no_grad():for imgs, target in dataloader:imgs, target imgs.to(device), target.to(device)# 计算损失target_pred model(imgs)loss loss_fn(target_pred, target)test_acc (target_pred.argmax(1) target).type(torch.float).sum().item()test_loss loss.item()test_acc / sizetest_loss / num_batchesreturn test_acc, test_loss 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(epoch1, epoch_train_acc*100, epoch_train_loss, epoch_test_acc*100, epoch_test_loss)) print(Done) 五、可视化结果 # 结果可视化 warnings.filterwarnings(ignore) # 忽略警告信息 plt.rcParams[axes.unicode_minus] False # 用来正常显示负号 plt.rcParams[figure.dpi] 100 # 分辨率epochs_range range(epochs)plt.figure(figsize(12,3)) plt.subplot(1, 2, 1) plt.plot(epochs_range, train_acc, labelTraining Acc) plt.plot(epochs_range, test_acc, labelTest Acc) plt.legend(loclower right) plt.title(Training and Validation Acc)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.savefig(/data/jupyter/deepinglearning_train_folder/p04_weather/resultImg.jpg) plt.show() 六、预测 1、预测函数 classes list(total_data.class_to_idx) print(classes:, classes)# 预测训练集中的某张图片 predict_one_image(image_path./data/Monkeypox/M01_01_00.jpg,modelmodel,transformtrain_transforms,classesclasses) 2、指定图片进行预测 # 预测函数 def predict_one_image(image_path, model, transform, classes):test_img Image.open(image_path).convert(RGB)test_img transform(test_img)img test_img.to(device).unsqueeze(0)model.eval()output model(img)_, pred torch.max(output, 1)pred_class classes[pred]print(f预测结果是{pred_class}) 七、模型保存 # 模型保存 PATH ./model.pth # 保存的模型 torch.save(model.state_dict(), PATH)# 将参数加载到model当中 model.load_state_dict(torch.load(PATH, map_locationdevice)) 我是在具有GPU的服务器上训练的模型 八、运行结果展示 ①使用原有的网络模型测试集的精确度基本上在82%左右。 ②在原有网络模型的基础上添加了relu激活函数 可使得精度提高2%左右。但是训练精度减少了。 ③减小学习率 使得测试精度直线下降 ④增大学习率 也可以使得测试精确度提高2%左右还会使得训练的精确度更好达到98.7%
http://www.pierceye.com/news/110536/

相关文章:

  • app网站怎么下载个人备案做视频网站
  • 西宁建一个网站公司广东网站备案
  • 网站数据比较北京网站优化推广公司
  • 想做网站的客户在哪找美间在线设计平台
  • 网站设计规划的目的和要求营销外贸网站建设案例
  • 网站营销力一级a做爰片2017免费网站
  • 昌图网站网页界面设计的要求
  • 做一个网站赚钱什么 门户网站
  • 中国建设银行购物网站帝国织梦wordpress
  • 瑞安网站网站建设松原公司做网站的流程
  • 做网站按页面收费视频解析网站如何做搜索
  • 太原网站的公司赣州安全教育平台
  • 淮北建投网站网站推广与维护有什么不同
  • 深圳网站备案注销平果县免费网站哪家好
  • 如何区分网站开发语言做网站多少钱一般
  • 定制专业app开发seo数据统计分析工具有哪些
  • 某服装公司网站建设论文网站建设seo虾哥网络
  • 网站建设销售员工作内容网站访问量过大
  • 企业网站加快企业信息化建设设计网站名称
  • 做网站的技术要求高吗农业推广专业
  • 在百度做个卷闸门网站怎么做成都高端网站
  • 个人网站备案名称填写货运网站建设公司
  • 有网页源码 怎么做网站外链发布软件
  • 医疗网站建设基本流程wordpress速度加快
  • 网站建设优化开发公司哪家好泰州东方医院男科
  • 怎么自己做歌曲网站大连网站制作公司费用多少
  • 网站专题设计稿用vue做商城网站常用的js
  • 怎么在免费空间里面做网站深圳英文站seo
  • 学风建设网站版块如何用visual studio做网站
  • 山东响应式网站设置字体颜色的网站