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

金融公司网站设计图网站开发人员的要求

金融公司网站设计图,网站开发人员的要求,利用花生壳做网站,怎样通过阿里云建设网站#x1f368; 本文为#x1f517;365天深度学习训练营 中的学习记录博客#x1f356; 原作者#xff1a;K同学啊 文章目录 一、前言1、结构改进2、分组卷积 二、前期工作1.设置GPU2. 导入数据3. 查看数据 三、数据预处理1、加载数据2、配置数据集 四、构建网络1、导入包2、… 本文为365天深度学习训练营 中的学习记录博客 原作者K同学啊 文章目录 一、前言1、结构改进2、分组卷积 二、前期工作1.设置GPU2. 导入数据3. 查看数据 三、数据预处理1、加载数据2、配置数据集 四、构建网络1、导入包2、分组卷积模块3、残差单元4、堆叠残差单元5、搭建ResNeXt-50网络6、查看模型摘要 五、编译六、训练模型七、模型评估 电脑环境 语言环境Python 3.8.0 深度学习环境tensorflow 2.17.0 一、前言 本次使用的数据集是猴痘病毒数据集。 1、结构改进 上图是ResNet左与ResNeXt右block的差异。在ResNet中输入的具有256个通道的特征经过1×1卷积压缩4倍到64个通道之后3×3的卷积核用于处理特征经1×1卷积扩大通道数与原特征残差连接后输出。ResNeXt也是相同的处理策略但在ResNeXt中输入的具有256个通道的特征被分为32个组每组被压缩64倍到4个通道后进行处理。32个组相加后与原特征残差连接后输出。这里cardinatity指的是一个block中所具有的相同分支的数目。 2、分组卷积 ResNeXt中采用的分组卷积简单来说就是将特征图分为不同的组再对每组特征图分别进行卷积这个操作可以有效的降低计算量。 在分组卷积中每个卷积核只处理部分通道比如下图中红色卷积核只处理红色的通道绿色卷积核只处理绿色通道黄色卷积核只处理黄色通道。此时每个卷积核有2个通道每个卷积核生成一张特征图。 二、前期工作 1.设置GPU from tensorflow import keras from keras import layers, models import os, PIL, pathlib import matplotlib.pyplot as plt import tensorflow as tfgpus tf.config.list_physical_devices(GPU)if gpus:gpu0 gpus[0] #如果有多个GPU仅使用第0个GPUtf.config.experimental.set_memory_growth(gpu0, True) #设置GPU显存用量按需使用tf.config.set_visible_devices([gpu0],GPU)2. 导入数据 data_dir ./data/ data_dir pathlib.Path(data_dir)3. 查看数据 image_count len(list(data_dir.glob(*/*.jpg))) print(图片总数为,image_count)输出图片总数为 2142 三、数据预处理 1、加载数据 batch_size 8 img_height 224 img_width 224train_ds tf.keras.preprocessing.image_dataset_from_directory(data_dir,validation_split0.2,subsettraining,seed123,image_size(img_height, img_width),batch_sizebatch_size)val_ds tf.keras.preprocessing.image_dataset_from_directory(data_dir,validation_split0.2,subsetvalidation,seed123,image_size(img_height, img_width),batch_sizebatch_size)class_names train_ds.class_names2、配置数据集 AUTOTUNE tf.data.AUTOTUNE train_ds train_ds.cache().shuffle(1000).prefetch(buffer_sizeAUTOTUNE) val_ds val_ds.cache().prefetch(buffer_sizeAUTOTUNE)四、构建网络 1、导入包 import numpy as np from tensorflow.keras.preprocessing.image import ImageDataGenerator from tensorflow.keras.utils import to_categorical from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Input, Dense, Dropout, Conv2D, MaxPool2D, Flatten, GlobalAvgPool2D, concatenate, \ BatchNormalization, Activation, Add, ZeroPadding2D, Lambda from tensorflow.keras.optimizers import Adam from tensorflow.keras.layers import ReLU import matplotlib.pyplot as plt from tensorflow.keras.callbacks import LearningRateScheduler from tensorflow.keras.models import Model2、分组卷积模块 # 定义分组卷积 def grouped_convolution_block(init_x, strides, groups, g_channels):group_list []# 分组进行卷积for c in range(groups):# 分组取出数据x Lambda(lambda x: x[:, :, :, c * g_channels:(c 1) * g_channels])(init_x)# 分组进行卷积x Conv2D(filtersg_channels, kernel_size(3, 3),stridesstrides, paddingsame, use_biasFalse)(x)# 存入listgroup_list.append(x)# 合并list中的数据group_merage concatenate(group_list, axis3)x BatchNormalization(epsilon1.001e-5)(group_merage)x ReLU()(x)return x3、残差单元 # 定义残差单元 def block(x, filters, strides1, groups32, conv_shortcutTrue):if conv_shortcut:shortcut Conv2D(filters * 2, kernel_size(1, 1), stridesstrides, paddingsame, use_biasFalse)(x)# epsilon为BN公式中防止分母为零的值shortcut BatchNormalization(epsilon1.001e-5)(shortcut)else:# identity_shortcutshortcut x# 三层卷积层x Conv2D(filtersfilters, kernel_size(1, 1), strides1, paddingsame, use_biasFalse)(x)x BatchNormalization(epsilon1.001e-5)(x)x ReLU()(x)# 计算每组的通道数g_channels int(filters / groups)# 进行分组卷积x grouped_convolution_block(x, strides, groups, g_channels)x Conv2D(filtersfilters * 2, kernel_size(1, 1), strides1, paddingsame, use_biasFalse)(x)x BatchNormalization(epsilon1.001e-5)(x)x Add()([x, shortcut])x ReLU()(x)return x4、堆叠残差单元 # 堆叠残差单元 def stack(x, filters, blocks, strides, groups32):# 每个stack的第一个block的残差连接都需要使用1*1卷积升维x block(x, filters, stridesstrides, groupsgroups)for i in range(blocks):x block(x, filters, groupsgroups, conv_shortcutFalse)return x5、搭建ResNeXt-50网络 # 定义ResNext50(32*4d)网络 def ResNext50(input_shape, num_classes):inputs Input(shapeinput_shape)# 填充3圈0[224,224,3]-[230,230,3]x ZeroPadding2D((3, 3))(inputs)x Conv2D(filters64, kernel_size(7, 7), strides2, paddingvalid)(x)x BatchNormalization(epsilon1.001e-5)(x)x ReLU()(x)# 填充1圈0x ZeroPadding2D((1, 1))(x)x MaxPool2D(pool_size(3, 3), strides2, paddingvalid)(x)# 堆叠残差结构x stack(x, filters128, blocks2, strides1)x stack(x, filters256, blocks3, strides2)x stack(x, filters512, blocks5, strides2)x stack(x, filters1024, blocks2, strides2)# 根据特征图大小进行全局平均池化x GlobalAvgPool2D()(x)x Dense(num_classes, activationsoftmax)(x)# 定义模型model Model(inputsinputs, outputsx)return model6、查看模型摘要 modelResNext50(input_shape(224,224,3),num_classes1000) model.summary()五、编译 # 设置优化器 opt tf.keras.optimizers.Adam(learning_rate1e-4) model.compile(optimizeropt,losstf.keras.losses.SparseCategoricalCrossentropy(from_logitsTrue),metrics[accuracy])六、训练模型 epochs 20history model.fit(train_ds,validation_dataval_ds,epochsepochs)Epoch 1/20 215/215 ━━━━━━━━━━━━━━━━━━━━ 292s 557ms/step - accuracy: 0.4838 - loss: 1.8304 - val_accuracy: 0.5701 - val_loss: 0.7159 .................................................................................. Epoch 18/20 215/215 ━━━━━━━━━━━━━━━━━━━━ 37s 173ms/step - accuracy: 0.9794 - loss: 0.0574 - val_accuracy: 0.8014 - val_loss: 0.6634 Epoch 19/20 215/215 ━━━━━━━━━━━━━━━━━━━━ 37s 173ms/step - accuracy: 0.9749 - loss: 0.0660 - val_accuracy: 0.7640 - val_loss: 0.7989 Epoch 20/20 215/215 ━━━━━━━━━━━━━━━━━━━━ 41s 175ms/step - accuracy: 0.9610 - loss: 0.1093 - val_accuracy: 0.7780 - val_loss: 0.6207七、模型评估 acc history.history[accuracy] val_acc history.history[val_accuracy]loss history.history[loss] val_loss history.history[val_loss]epochs_range range(epochs)plt.figure(figsize(12, 4)) plt.subplot(1, 2, 1) plt.plot(epochs_range, acc, labelTraining Accuracy) plt.plot(epochs_range, val_acc, labelValidation Accuracy) plt.legend(loclower right) plt.title(Training and Validation Accuracy)plt.subplot(1, 2, 2) plt.plot(epochs_range, loss, labelTraining Loss) plt.plot(epochs_range, val_loss, labelValidation Loss) plt.legend(locupper right) plt.title(Training and Validation Loss) plt.show()
http://www.w-s-a.com/news/769245/

相关文章:

  • 自己开发一个网站应该怎么做国外设计网站 绿色的
  • 南昌外贸网站设计推广任务发布平台app
  • 建立网站成本书店网站建设可行性分析
  • 高端网站设计官网乌海学校网站建设
  • 哪些网站适合新手编程做项目优秀网页设计赏析
  • 永州网站seo德阳网站建设优化
  • 网站建设高端网站本地建设网站软件下载
  • 网站后台账号密码破解杭州酒店网站设计公司推荐
  • 和县网站开发秦皇岛建设工程信息网站
  • 国外网站用什么dns好建一个下载网站要什么cms系统
  • 礼品工艺品网站建设手机做网站哪家好
  • 泉州网站建设方案维护怎样选择网站建设
  • 江苏建站速度忿先进的网站建设
  • 广州天河建站公司com域名注册多少钱
  • 成都网站建设推广好vs2013如何做网站
  • 茶叶网站建设模板企业网站备案要多少钱
  • 怎么查网站找谁做的win主机伪静态规则 wordpress
  • 轻云服务器菁英版 多个网站北京it外包服务商
  • 售后服务 网站建设阳江seo优化
  • 网站建设后怎么赚钱wordpress调用导航栏
  • 特产网站设计六色网站
  • 服务器网站备案做网站公司如何赚钱
  • 怎样进行站点优化荣成市有做网站的吗
  • 合肥建设工会网站芜湖做网站建设公司
  • 玉林市住房和城乡建设局网站网站开发百灵鸟
  • 网站怎么做双机房切换建设部网站2015年第158号
  • 郑州服务设计公司网站色块的网站
  • 网站设计所用到的技术做网站添加mp3
  • 凡科做的微网站怎样连接公众号seo李守洪排名大师
  • 温州网站开发网站的制作东莞寮步伟易达电子厂