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

wordpress title description惠州seo排名公司

wordpress title description,惠州seo排名公司,阿里巴巴运营,洮南网站12种猫分类比赛传送门 要求很简单#xff0c;给train和test集#xff0c;训练模型实现图像分类。 这里使用的是残差连接模型#xff0c;这个平台有预训练好的模型#xff0c;可以直接拿来主义。 训练十几个迭代#xff0c;每个批次60左右#xff0c;准确率达到90%以上…12种猫分类比赛传送门 要求很简单给train和test集训练模型实现图像分类。 这里使用的是残差连接模型这个平台有预训练好的模型可以直接拿来主义。 训练十几个迭代每个批次60左右准确率达到90%以上 一、导入库解压文件 import os import zipfile import random import json import cv2 import numpy as np from PIL import Imageimport matplotlib.pyplot as plt from sklearn.model_selection import train_test_split import paddle import paddle.nn as nn from paddle.io import Dataset,DataLoader from paddle.nn import \Layer, \Conv2D, Linear, \Embedding, MaxPool2D, \BatchNorm2D, ReLUimport paddle.vision.transforms as transforms from paddle.vision.models import resnet50 from paddle.metric import Accuracytrain_parameters {input_size: [3, 224, 224], # 输入图片的shapeclass_dim: 12, # 分类数src_path:data/data10954/cat_12_train.zip, # 原始数据集路径src_test_path:data/data10954/cat_12_test.zip, # 原始数据集路径target_path:/home/aistudio/data/dataset, # 要解压的路径 train_list_path: ./train.txt, # train_data.txt路径eval_list_path: ./eval.txt, # eval_data.txt路径label_dict:{}, # 标签字典readme_path: /home/aistudio/data/readme.json,# readme.json路径num_epochs:6, # 训练轮数train_batch_size: 16, # 批次的大小learning_strategy: { # 优化函数相关的配置lr: 0.0005 # 超参数学习率} }scr_pathtrain_parameters[src_path] target_pathtrain_parameters[target_path] src_test_pathtrain_parameters[src_test_path] z zipfile.ZipFile(scr_path, r) z.extractall(pathtarget_path) z zipfile.ZipFile(src_test_path, r) z.extractall(pathtarget_path) z.close() for imgpath in os.listdir(target_path /cat_12_train):src os.path.join(target_path /cat_12_train/, imgpath)img Image.open(src)if img.mode ! RGB:img img.convert(RGB)img.save(src)for imgpath in os.listdir(target_path /cat_12_test):src os.path.join(target_path /cat_12_test/, imgpath)img Image.open(src)if img.mode ! RGB:img img.convert(RGB)img.save(src)解压后将所有图像变为RGB图像 二、加载训练集进行预处理、数据增强、格式变换 transform transforms.Compose([transforms.Resize(size224),transforms.ColorJitter(0.2, 0.2, 0.2, 0.2),transforms.RandomHorizontalFlip(),transforms.RandomRotation(15),transforms.RandomResizedCrop(size224, scale(0.8, 1.0)),transforms.ToTensor(),transforms.Normalize(mean[0.485, 0.456, 0.406], std[0.229, 0.224, 0.225]) ])x_train,x_eval,y_train[],[],[]#获取训练图像和标签、测试图像和标签 contents[] with open(data/data10954/train_list.txt)as f:contentsf.read().split(\n)for item in contents:if item:continuepathdata/dataset/item.split(\t)[0]datanp.array(Image.open(path).convert(RGB))datanp.array(transform(data))x_train.append(data)y_train.append(int(item.split(\t)[-1]))contetnsos.listdir(data/dataset/cat_12_test) for item in contetns:pathdata/dataset/cat_12_test/itemdatanp.array(Image.open(path).convert(RGB))datanp.array(transform(data))x_eval.append(data)重点是transforms变换的预处理 三、划分训练集和测试集 x_trainnp.array(x_train)y_trainnp.array(y_train)x_evalnp.array(x_eval)x_train,x_test,y_train,y_testtrain_test_split(x_train,y_train,test_size0.2,random_state42,stratifyy_train)x_trainpaddle.to_tensor(x_train,dtypefloat32) y_trainpaddle.to_tensor(y_train,dtypeint64) x_testpaddle.to_tensor(x_test,dtypefloat32) y_testpaddle.to_tensor(y_test,dtypeint64) x_evalpaddle.to_tensor(x_eval,dtypefloat32) 这是必要的可以随时利用测试集查看准确率 四、加载预训练模型选择损失函数和优化器 learning_rate0.001 epochs 5 # 迭代轮数 batch_size 50 # 批次大小 weight_decay1e-5 num_class12cnnresnet50(pretrainedTrue) checkpointpaddle.load(checkpoint.pdparams)for param in cnn.parameters():param.requires_gradFalse cnn.fc nn.Linear(2048, num_class) cnn.set_dict(checkpoint[cnn_state_dict]) criterionnn.CrossEntropyLoss() optimizer paddle.optimizer.Adam(learning_ratelearning_rate, parameterscnn.fc.parameters(),weight_decayweight_decay) 第一次训练把加载模型注释掉即可优化器包含最后一层全连接的参数 五、模型训练  if x_train.shape[3]3:x_trainpaddle.transpose(x_train,perm(0,3,1,2))dataset paddle.io.TensorDataset([x_train, y_train]) data_loader DataLoader(dataset, batch_sizebatch_size, shuffleTrue) for epoch in range(epochs):for batch_data, batch_labels in data_loader:outputs cnn(batch_data)loss criterion(outputs, batch_labels)print(epoch)loss.backward()optimizer.step()optimizer.clear_grad()print(fEpoch [{epoch1}/{epochs}], Loss: {loss.numpy()[0]})#保存参数 paddle.save({cnn_state_dict: cnn.state_dict(),}, checkpoint.pdparams)使用批处理这个很重要不然平台分分钟炸了 六、测试集准确率 num_class12 batch_size64 cnnresnet50(pretrainedTrue) checkpointpaddle.load(checkpoint.pdparams)for param in cnn.parameters():param.requires_gradFalse cnn.fc nn.Linear(2048, num_class) cnn.set_dict(checkpoint[cnn_state_dict])cnn.eval()if x_test.shape[3]3:x_testpaddle.transpose(x_test,perm(0,3,1,2)) dataset paddle.io.TensorDataset([x_test, y_test]) data_loader DataLoader(dataset, batch_sizebatch_size, shuffleTrue)with paddle.no_grad():score0for batch_data, batch_labels in data_loader:predictions cnn(batch_data)predicted_probabilities paddle.nn.functional.softmax(predictions, axis1)predicted_labels paddle.argmax(predicted_probabilities, axis1) print(predicted_labels)for i in range(len(predicted_labels)):if predicted_labels[i].numpy()batch_labels[i]:score1print(score/len(y_test)) 设置eval模式使用批处理测试准确率
http://www.hkea.cn/news/14458477/

相关文章:

  • 品牌网球两个相同的网站对做优化有帮助
  • 网站站长如何赚钱网站建设基础教程视频
  • 做网站编辑要会什么施工企业项目管理中心岗位职责
  • 支付建设网站的费用什么科目wordpress 分类p
  • 移动互联网站开发与维护关于做血糖仪的网站
  • 网站推荐几个免费的营销型网站建设工资
  • 方案 网站wordpress360收录插件
  • dw做的网站怎么全屏稿定设计app下载
  • jsp是网站开发语言吗苏州高新区建设局网站
  • 东莞模板网站好wordpress 哪个好用吗
  • 高大上的平面设计网站杭州西湖区抖音seo哪里找
  • 做ae动图的网站杭州网站外包公司
  • 做环保的网站有哪些网站线上投票怎样做
  • 网站换域名要怎么做帮别人做非法网站
  • 如何做网站搬家建筑 企业官网设计
  • 做公司 网站建设价格低免费 微网站
  • 苏州行业网站建设服务网站建设与管理 管理课程
  • 专业做网站厂家seo优化心得
  • 成都做网站的公司哪家好网络推广宣传方式
  • 住房建设部投诉网站无锡做公司网站
  • 怎么做企业网站二维码扫描重庆微信网站开发公司
  • 贵州省建设厅官网网站wordpress 基础主题
  • php网站开发工程师职责博罗惠州网站建设
  • 网站空间服务器费用摄影做网站
  • 做图片类型的网站要怎么做如何修改网站后台时间
  • 网站展示 包括什么为了选择合适的网络设计方案
  • 湖南移动网站建站酷网logo
  • 网站建设职业培训餐厅网站设计
  • 建设个人网站用什么软件wordpress discuz
  • 中国建设银行网站首页怎么销户招工网站怎么做