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

网站目录层级建设wordpress项目导入

网站目录层级建设,wordpress项目导入,WordPress到底好不好用,乌镇旅游攻略自由行文章目录 一、前言二、前期工作1. 设置GPU#xff08;如果使用的是CPU可以忽略这步#xff09;2. 导入数据3. 查看数据 二、数据预处理1. 加载数据2. 再次检查数据3. 配置数据集4. 可视化数据 三、构建VG-16网络四、编译五、训练模型六、模型评估七、保存and加载模型八、预测… 文章目录 一、前言二、前期工作1. 设置GPU如果使用的是CPU可以忽略这步2. 导入数据3. 查看数据 二、数据预处理1. 加载数据2. 再次检查数据3. 配置数据集4. 可视化数据 三、构建VG-16网络四、编译五、训练模型六、模型评估七、保存and加载模型八、预测 一、前言 我的环境 语言环境Python3.6.5编译器jupyter notebook深度学习环境TensorFlow2.4.1 往期精彩内容 卷积神经网络CNN实现mnist手写数字识别 卷积神经网络CNN多种图片分类的实现卷积神经网络CNN衣服图像分类的实现卷积神经网络CNN鲜花识别卷积神经网络CNN天气识别 卷积神经网络VGG-16识别海贼王草帽一伙卷积神经网络ResNet-50鸟类识别 卷积神经网络AlexNet鸟类识别卷积神经网络(CNN)识别验证码 来自专栏机器学习与深度学习算法推荐 二、前期工作 1. 设置GPU如果使用的是CPU可以忽略这步 import tensorflow as tfgpus tf.config.list_physical_devices(GPU)if gpus:tf.config.experimental.set_memory_growth(gpus[0], True) #设置GPU显存用量按需使用tf.config.set_visible_devices([gpus[0]],GPU)# 打印显卡信息确认GPU可用 print(gpus)2. 导入数据 import matplotlib.pyplot as plt # 支持中文 plt.rcParams[font.sans-serif] [SimHei] # 用来正常显示中文标签 plt.rcParams[axes.unicode_minus] False # 用来正常显示负号import os,PIL# 设置随机种子尽可能使结果可以重现 import numpy as np np.random.seed(1)# 设置随机种子尽可能使结果可以重现 import tensorflow as tf tf.random.set_seed(1)#隐藏警告 import warnings warnings.filterwarnings(ignore)import pathlibimage_count len(list(data_dir.glob(*/*)))print(图片总数为,image_count)3. 查看数据 image_count len(list(pictures_dir.glob(*.png))) print(图片总数为,image_count)图片总数为 3400二、数据预处理 1. 加载数据 使用image_dataset_from_directory方法将磁盘中的数据加载到tf.data.Dataset中 batch_size 8 img_height 224 img_width 224TensorFlow版本是2.2.0的同学可能会遇到module tensorflow.keras.preprocessing has no attribute image_dataset_from_directory的报错升级一下TensorFlow就OK了。 train_ds tf.keras.preprocessing.image_dataset_from_directory(data_dir,validation_split0.2,subsettraining,seed12,image_size(img_height, img_width),batch_sizebatch_size)Found 3400 files belonging to 2 classes. Using 2720 files for training.val_ds tf.keras.preprocessing.image_dataset_from_directory(data_dir,validation_split0.2,subsetvalidation,seed12,image_size(img_height, img_width),batch_sizebatch_size)Found 3400 files belonging to 2 classes. Using 680 files for validation.我们可以通过class_names输出数据集的标签。标签将按字母顺序对应于目录名称。 class_names train_ds.class_names print(class_names)[cat, dog]2. 再次检查数据 for image_batch, labels_batch in train_ds:print(image_batch.shape)print(labels_batch.shape)break(8, 224, 224, 3) (8,)Image_batch是形状的张量8, 224, 224, 3)。这是一批形状224x224x3的8张图片最后一维指的是彩色通道RGB。Label_batch是形状8的张量这些标签对应8张图片 3. 配置数据集 AUTOTUNE tf.data.AUTOTUNEdef preprocess_image(image,label):return (image/255.0,label)# 归一化处理 train_ds train_ds.map(preprocess_image, num_parallel_callsAUTOTUNE) val_ds val_ds.map(preprocess_image, num_parallel_callsAUTOTUNE)train_ds train_ds.cache().shuffle(1000).prefetch(buffer_sizeAUTOTUNE) val_ds val_ds.cache().prefetch(buffer_sizeAUTOTUNE)4. 可视化数据 plt.figure(figsize(15, 10)) # 图形的宽为15高为10for images, labels in train_ds.take(1):for i in range(8):ax plt.subplot(5, 8, i 1) plt.imshow(images[i])plt.title(class_names[labels[i]])plt.axis(off)三、构建VG-16网络 VGG优缺点分析 VGG优点 VGG的结构非常简洁整个网络都使用了同样大小的卷积核尺寸3x3和最大池化尺寸2x2。 VGG缺点 1)训练时间过长调参难度大。2)需要的存储容量大不利于部署。例如存储VGG-16权重值文件的大小为500多MB不利于安装到嵌入式系统中。 结构说明 13个卷积层Convolutional Layer分别用blockX_convX表示3个全连接层Fully connected Layer分别用fcX与predictions表示5个池化层Pool layer分别用blockX_pool表示 VGG-16包含了16个隐藏层13个卷积层和3个全连接层故称为VGG-16 from tensorflow.keras import layers, models, Input from tensorflow.keras.models import Model from tensorflow.keras.layers import Conv2D, MaxPooling2D, Dense, Flatten, Dropoutdef VGG16(nb_classes, input_shape):input_tensor Input(shapeinput_shape)# 1st blockx Conv2D(64, (3,3), activationrelu, paddingsame,nameblock1_conv1)(input_tensor)x Conv2D(64, (3,3), activationrelu, paddingsame,nameblock1_conv2)(x)x MaxPooling2D((2,2), strides(2,2), name block1_pool)(x)# 2nd blockx Conv2D(128, (3,3), activationrelu, paddingsame,nameblock2_conv1)(x)x Conv2D(128, (3,3), activationrelu, paddingsame,nameblock2_conv2)(x)x MaxPooling2D((2,2), strides(2,2), name block2_pool)(x)# 3rd blockx Conv2D(256, (3,3), activationrelu, paddingsame,nameblock3_conv1)(x)x Conv2D(256, (3,3), activationrelu, paddingsame,nameblock3_conv2)(x)x Conv2D(256, (3,3), activationrelu, paddingsame,nameblock3_conv3)(x)x MaxPooling2D((2,2), strides(2,2), name block3_pool)(x)# 4th blockx Conv2D(512, (3,3), activationrelu, paddingsame,nameblock4_conv1)(x)x Conv2D(512, (3,3), activationrelu, paddingsame,nameblock4_conv2)(x)x Conv2D(512, (3,3), activationrelu, paddingsame,nameblock4_conv3)(x)x MaxPooling2D((2,2), strides(2,2), name block4_pool)(x)# 5th blockx Conv2D(512, (3,3), activationrelu, paddingsame,nameblock5_conv1)(x)x Conv2D(512, (3,3), activationrelu, paddingsame,nameblock5_conv2)(x)x Conv2D(512, (3,3), activationrelu, paddingsame,nameblock5_conv3)(x)x MaxPooling2D((2,2), strides(2,2), name block5_pool)(x)# full connectionx Flatten()(x)x Dense(4096, activationrelu, namefc1)(x)x Dense(4096, activationrelu, namefc2)(x)output_tensor Dense(nb_classes, activationsoftmax, namepredictions)(x)model Model(input_tensor, output_tensor)return modelmodelVGG16(1000, (img_width, img_height, 3)) model.summary()四、编译 在准备对模型进行训练之前还需要再对其进行一些设置。以下内容是在模型的编译步骤中添加的 损失函数loss用于衡量模型在训练期间的准确率。优化器optimizer决定模型如何根据其看到的数据和自身的损失函数进行更新。评价函数metrics用于监控训练和测试步骤。以下示例使用了准确率即被正确分类的图像的比率。 model.compile(optimizeradam,loss sparse_categorical_crossentropy,metrics [accuracy])五、训练模型 from tqdm import tqdm import tensorflow.keras.backend as Kepochs 10 lr 1e-4# 记录训练数据方便后面的分析 history_train_loss [] history_train_accuracy [] history_val_loss [] history_val_accuracy []for epoch in range(epochs):train_total len(train_ds)val_total len(val_ds)total预期的迭代数目ncols控制进度条宽度mininterval进度更新最小间隔以秒为单位默认值0.1with tqdm(totaltrain_total, descfEpoch {epoch 1}/{epochs},mininterval1,ncols100) as pbar:lr lr*0.92K.set_value(model.optimizer.lr, lr)for image,label in train_ds: history model.train_on_batch(image,label)train_loss history[0]train_accuracy history[1]pbar.set_postfix({loss: %.4f%train_loss,accuracy:%.4f%train_accuracy,lr: K.get_value(model.optimizer.lr)})pbar.update(1)history_train_loss.append(train_loss)history_train_accuracy.append(train_accuracy)print(开始验证)with tqdm(totalval_total, descfEpoch {epoch 1}/{epochs},mininterval0.3,ncols100) as pbar:for image,label in val_ds: history model.test_on_batch(image,label)val_loss history[0]val_accuracy history[1]pbar.set_postfix({loss: %.4f%val_loss,accuracy:%.4f%val_accuracy})pbar.update(1)history_val_loss.append(val_loss)history_val_accuracy.append(val_accuracy)print(结束验证)print(验证loss为%.4f%val_loss)print(验证准确率为%.4f%val_accuracy)六、模型评估 epochs_range range(epochs)plt.figure(figsize(12, 4)) plt.subplot(1, 2, 1)plt.plot(epochs_range, history_train_accuracy, labelTraining Accuracy) plt.plot(epochs_range, history_val_accuracy, labelValidation Accuracy) plt.legend(loclower right) plt.title(Training and Validation Accuracy)plt.subplot(1, 2, 2) plt.plot(epochs_range, history_train_loss, labelTraining Loss) plt.plot(epochs_range, history_val_loss, labelValidation Loss) plt.legend(locupper right) plt.title(Training and Validation Loss) plt.show()七、保存and加载模型 # 保存模型 model.save(model/21_model.h5)# 加载模型 new_model tf.keras.models.load_model(model/21_model.h5)八、预测 # 采用加载的模型new_model来看预测结果plt.figure(figsize(18, 3)) # 图形的宽为18高为5 plt.suptitle(预测结果展示)for images, labels in val_ds.take(1):for i in range(8):ax plt.subplot(1,8, i 1) # 显示图片plt.imshow(images[i].numpy())# 需要给图片增加一个维度img_array tf.expand_dims(images[i], 0) # 使用模型预测图片中的人物predictions new_model.predict(img_array)plt.title(class_names[np.argmax(predictions)])plt.axis(off)
http://www.sadfv.cn/news/207676/

相关文章:

  • 网站里宣传视频怎么做wordpress章节添加章节
  • pc网站如何做移动网站成都软件外包公司
  • 淘宝客的wordpress模板下载地址seo发布网站
  • 信息发布网站设计免费做苗木网站
  • 外贸网站模板免费下载网站访问速度优化
  • 做兼职哪个网站好住建局哪个科室最吃香
  • 织梦网站被做跳转临漳专业做网站
  • 建网站怎么分类网站建设销售前景
  • wordpress qiniu-uploader 使用南宁seo多少钱报价
  • 哪家网站做推广好优化方案系列丛书
  • 中国建设银行网站的机构wordpress文章循环不带置顶文章
  • 家庭网络如何做网站服务器百度seo流量
  • 北京京水建设集团有限公司网站上海工程建设交易信息网站
  • 淮安做网站酷站网站
  • 网站带app建设南阳建设工程信息网站
  • 温州自适应网站建设深圳做英文网站的公司
  • 网站备案时间多久网站建设客户需求调查表
  • 网站分析流程郑州餐饮网站建设哪家好
  • 河北省建设安全监督站的网站濮阳家电网站建设
  • 微擎 网站开发工具网网站制作开发
  • 营销型网站建设信融网站制作西安
  • 网站改版换域名wordpress ajax 登陆
  • php网站开发实例教程百度网站备案查询
  • 重庆渝兴建设有限公司网站自己的网站怎么和百度做友链
  • 免费 网站 模板产品宣传方式有哪些
  • 番禺学校网站建设建议电子商务网站建设的重要行
  • 贞丰县建设局网站那个网站是做房产中介的
  • 专业网站建设加盟合作搜索引擎seo
  • 网站ome系统怎么做重庆搜索引擎优化seo
  • 美心西饼在哪个网站做问卷调查河北搜索引擎推广方法