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

俄罗斯网站推广省级建设网站

俄罗斯网站推广,省级建设网站,电子商务网站建设与管理课件,网站优点文章目录 卷积、下采样、经典卷积网络1. 对图像进行卷积处理2. 池化3. VGGNET4. 采用预训练的Resnet实现猫狗识别 TensorFlow2.2基本应用5. 使用深度学习进行手写数字识别 卷积、下采样、经典卷积网络 1. 对图像进行卷积处理 import cv2 path data\instance\p67.jpg input_… 文章目录 卷积、下采样、经典卷积网络1. 对图像进行卷积处理2. 池化3. VGGNET4. 采用预训练的Resnet实现猫狗识别 TensorFlow2.2基本应用5. 使用深度学习进行手写数字识别 卷积、下采样、经典卷积网络 1. 对图像进行卷积处理 import cv2 path data\instance\p67.jpg input_img cv2.imread(path)import cv2 import numpy as np #分别将三个通道进行卷积然后合并通道def conv(image, kernel): conv_b convolve(image[:, :, 0], kernel) conv_g convolve(image[:, :, 1], kernel) conv_r convolve(image[:, :, 2], kernel) output np.dstack([conv_b, conv_g, conv_r]) return output#卷积处理 def convolve(image, kernel): h_kernel, w_kernel kernel.shape h_image, w_image image.shapeh_output h_image - h_kernel 1 w_output w_image - w_kernel 1 output np.zeros((h_output, w_output), np.uint8) for i in range(h_output): for j in range(w_output): output[i, j] np.multiply(image[i:i h_kernel, j:j w_kernel], kernel).sum() return outputif __name__ __main__: path data\instance\p67.jpg input_img cv2.imread(path) # 1.锐化卷积核 #kernel np.array([[-1,-1,-1],[-1,9,-1],[-1,-1,-1]]) # 2.模糊卷积核kernel np.array([[0.1,0.1,0.1],[0.1,0.2,0.1],[0.1,0.1,0.1]]) output_img conv(input_img, kernel)cv2.imwrite(path.replace(.jpg, -processed.jpg), output_img) cv2.imshow(Output Image, output_img) cv2.waitKey(0)2. 池化 img cv2.imread(data\instance\dog.jpg) img.shape(4064, 3216, 3)import numpy as np from PIL import Image import cv2 import matplotlib.pyplot as plt#均值池化 def AVGpooling(imgData, strdW, strdH):W,H imgData.shapenewImg []for i in range(0,W,strdW):line []for j in range(0,H,strdH):x imgData[i:istrdW,j:jstrdH] #获取当前待池化区域avgValuenp.sum(x)/(strdW*strdH) #求该区域的均值line.append(avgValue) newImg.append(line)return np.array(newImg)#最大池化 def MAXpooling(imgData, strdW, strdH):W,H imgData.shapenewImg []for i in range(0,W,strdW):line []for j in range(0,H,strdH):x imgData[i:istrdW,j:jstrdH] #获取当前待池化区域maxValuenp.max(x) #求该区域的最大值line.append(maxValue) newImg.append(line)return np.array(newImg)img cv2.imread(data\instance\dog.jpg) imgData img[:,:,1] #绿色通道#显示原图 plt.subplot(221) plt.imshow(img) plt.axis(off)#显示原始绿通道图 plt.subplot(222) plt.imshow(imgData) plt.axis(off)#显示平均池化结果图 AVGimg AVGpooling(imgData, 2, 2) plt.subplot(223) plt.imshow(AVGimg) plt.axis(off)#显示最大池化结果图 MAXimg MAXpooling(imgData, 2, 2) plt.subplot(224) plt.imshow(MAXimg) plt.axis(off) plt.show()3. VGGNET import numpy as np from tensorflow.keras import backend as K import matplotlib.pyplot as plt from tensorflow.keras.applications import vgg16 # Keras内置 VGG-16模块直接可调用。 from tensorflow.keras.preprocessing import image from tensorflow.keras.applications.vgg16 import preprocess_input import math input_size 224 # 网络输入图像的大小长宽相等 kernel_size 64 # 可视化卷积核的大小长宽相等 layer_vis True # 特征图是否可视化 kernel_vis True # 卷积核是否可视化 each_layer False # 卷积核可视化是否每层都做 which_layer 1 # 如果不是每层都做那么第几个卷积层 path data\instance\p67.jpg img image.load_img(path, target_size(input_size, input_size)) img image.img_to_array(img) img np.expand_dims(img, axis0) img preprocess_input(img) #标准化预处理 model vgg16.VGG16(include_topTrue, weightsimagenet)def network_configuration(): all_channels [64, 64, 64, 128, 128, 128, 256, 256, 256, 256, 512, 512, 512, 512, 512, 512, 512, 512] down_sampling [1, 1, 1 / 2, 1 / 2, 1 / 2, 1 / 4, 1 / 4, 1 / 4, 1 / 4, 1 / 8, 1 / 8, 1 / 8, 1 / 8, 1 / 16, 1 / 16, 1 / 16, 1 / 16, 1 / 32] conv_layers [1, 2, 4, 5, 7, 8, 9, 11, 12, 13, 15, 16, 17] conv_channels [64, 64, 128, 128, 256, 256, 256, 512, 512, 512, 512, 512, 512] return all_channels, down_sampling, conv_layers, conv_channelsdef layer_visualization(model, img, layer_num, channel, ds): # 设置可视化的层 layer K.function([model.layers[0].input], [model.layers[layer_num].output]) f layer([img])[0] feature_aspect math.ceil(math.sqrt(channel)) single_size int(input_size * ds)plt.figure(figsize(8, 8.5)) plt.suptitle(Layer- str(layer_num), fontsize22)plt.subplots_adjust(left0.02, bottom0.02, right0.98, top0.94, wspace0.05, hspace0.05) for i_channel in range(channel): print(Channel-{} in Layer-{} is running..format(i_channel 1, layer_num)) show_img f[:, :, :, i_channel] show_img np.reshape(show_img, (single_size, single_size)) plt.subplot(feature_aspect, feature_aspect, i_channel 1) plt.imshow(show_img) plt.axis(off) fig plt.gcf() fig.savefig(data/instance/feature_kernel_images/layer_ str(layer_num).zfill(2) .png, formatpng, dpi300)plt.show()all_channels, down_sampling, conv_layers, conv_channels network_configuration() if layer_vis: for i in range(len(all_channels)): layer_visualization(model, img, i 1, all_channels[i], down_sampling[i]) 4. 采用预训练的Resnet实现猫狗识别 from tensorflow.keras.applications.resnet50 import ResNet50 from tensorflow.keras.preprocessing import image from tensorflow.keras.applications.resnet50 import preprocess_input, decode_predictions import numpy as np from PIL import ImageFont, ImageDraw, Image import cv2img_path data\instance\dog.jpg #进行狗的判断 #img_path cat.jpg #进行猫的判断 #img_path deer.jpg #进行鹿的判断weights_path resnet50_weights.h5img image.load_img(img_path, target_size(224, 224)) x image.img_to_array(img) x np.expand_dims(x, axis0) x preprocess_input(x)def get_model(): model ResNet50(weightsweights_path) # 导入模型以及预训练权重print(model.summary()) # 打印模型概况 return model model get_model() Model: resnet50 __________________________________________________________________________________________________Layer (type) Output Shape Param # Connected to input_4 (InputLayer) [(None, 224, 224, 3 0 [] )] conv1_pad (ZeroPadding2D) (None, 230, 230, 3) 0 [input_4[0][0]] conv1_conv (Conv2D) (None, 112, 112, 64 9472 [conv1_pad[0][0]] ) conv1_bn (BatchNormalization) (None, 112, 112, 64 256 [conv1_conv[0][0]] ) conv1_relu (Activation) (None, 112, 112, 64 0 [conv1_bn[0][0]] ) pool1_pad (ZeroPadding2D) (None, 114, 114, 64 0 [conv1_relu[0][0]] ) pool1_pool (MaxPooling2D) (None, 56, 56, 64) 0 [pool1_pad[0][0]] conv2_block1_1_conv (Conv2D) (None, 56, 56, 64) 4160 [pool1_pool[0][0]] conv2_block1_1_bn (BatchNormal (None, 56, 56, 64) 256 [conv2_block1_1_conv[0][0]] ization) conv2_block1_1_relu (Activatio (None, 56, 56, 64) 0 [conv2_block1_1_bn[0][0]] n) conv2_block1_2_conv (Conv2D) (None, 56, 56, 64) 36928 [conv2_block1_1_relu[0][0]] conv2_block1_2_bn (BatchNormal (None, 56, 56, 64) 256 [conv2_block1_2_conv[0][0]] ization) conv2_block1_2_relu (Activatio (None, 56, 56, 64) 0 [conv2_block1_2_bn[0][0]] n) conv2_block1_0_conv (Conv2D) (None, 56, 56, 256) 16640 [pool1_pool[0][0]] conv2_block1_3_conv (Conv2D) (None, 56, 56, 256) 16640 [conv2_block1_2_relu[0][0]] conv2_block1_0_bn (BatchNormal (None, 56, 56, 256) 1024 [conv2_block1_0_conv[0][0]] ization) conv2_block1_3_bn (BatchNormal (None, 56, 56, 256) 1024 [conv2_block1_3_conv[0][0]] ization) conv2_block1_add (Add) (None, 56, 56, 256) 0 [conv2_block1_0_bn[0][0], conv2_block1_3_bn[0][0]] conv2_block1_out (Activation) (None, 56, 56, 256) 0 [conv2_block1_add[0][0]] conv2_block2_1_conv (Conv2D) (None, 56, 56, 64) 16448 [conv2_block1_out[0][0]] conv2_block2_1_bn (BatchNormal (None, 56, 56, 64) 256 [conv2_block2_1_conv[0][0]] ization) conv2_block2_1_relu (Activatio (None, 56, 56, 64) 0 [conv2_block2_1_bn[0][0]] n) conv2_block2_2_conv (Conv2D) (None, 56, 56, 64) 36928 [conv2_block2_1_relu[0][0]] conv2_block2_2_bn (BatchNormal (None, 56, 56, 64) 256 [conv2_block2_2_conv[0][0]] ization) conv2_block2_2_relu (Activatio (None, 56, 56, 64) 0 [conv2_block2_2_bn[0][0]] n) conv2_block2_3_conv (Conv2D) (None, 56, 56, 256) 16640 [conv2_block2_2_relu[0][0]] conv2_block2_3_bn (BatchNormal (None, 56, 56, 256) 1024 [conv2_block2_3_conv[0][0]] ization) conv2_block2_add (Add) (None, 56, 56, 256) 0 [conv2_block1_out[0][0], conv2_block2_3_bn[0][0]] conv2_block2_out (Activation) (None, 56, 56, 256) 0 [conv2_block2_add[0][0]] conv2_block3_1_conv (Conv2D) (None, 56, 56, 64) 16448 [conv2_block2_out[0][0]] conv2_block3_1_bn (BatchNormal (None, 56, 56, 64) 256 [conv2_block3_1_conv[0][0]] ization) conv2_block3_1_relu (Activatio (None, 56, 56, 64) 0 [conv2_block3_1_bn[0][0]] n) conv2_block3_2_conv (Conv2D) (None, 56, 56, 64) 36928 [conv2_block3_1_relu[0][0]] conv2_block3_2_bn (BatchNormal (None, 56, 56, 64) 256 [conv2_block3_2_conv[0][0]] ization) conv2_block3_2_relu (Activatio (None, 56, 56, 64) 0 [conv2_block3_2_bn[0][0]] n) conv2_block3_3_conv (Conv2D) (None, 56, 56, 256) 16640 [conv2_block3_2_relu[0][0]] conv2_block3_3_bn (BatchNormal (None, 56, 56, 256) 1024 [conv2_block3_3_conv[0][0]] ization) conv2_block3_add (Add) (None, 56, 56, 256) 0 [conv2_block2_out[0][0], conv2_block3_3_bn[0][0]] conv2_block3_out (Activation) (None, 56, 56, 256) 0 [conv2_block3_add[0][0]] conv3_block1_1_conv (Conv2D) (None, 28, 28, 128) 32896 [conv2_block3_out[0][0]] conv3_block1_1_bn (BatchNormal (None, 28, 28, 128) 512 [conv3_block1_1_conv[0][0]] ization) conv3_block1_1_relu (Activatio (None, 28, 28, 128) 0 [conv3_block1_1_bn[0][0]] n) conv3_block1_2_conv (Conv2D) (None, 28, 28, 128) 147584 [conv3_block1_1_relu[0][0]] conv3_block1_2_bn (BatchNormal (None, 28, 28, 128) 512 [conv3_block1_2_conv[0][0]] ization) conv3_block1_2_relu (Activatio (None, 28, 28, 128) 0 [conv3_block1_2_bn[0][0]] n) conv3_block1_0_conv (Conv2D) (None, 28, 28, 512) 131584 [conv2_block3_out[0][0]] conv3_block1_3_conv (Conv2D) (None, 28, 28, 512) 66048 [conv3_block1_2_relu[0][0]] conv3_block1_0_bn (BatchNormal (None, 28, 28, 512) 2048 [conv3_block1_0_conv[0][0]] ization) conv3_block1_3_bn (BatchNormal (None, 28, 28, 512) 2048 [conv3_block1_3_conv[0][0]] ization) conv3_block1_add (Add) (None, 28, 28, 512) 0 [conv3_block1_0_bn[0][0], conv3_block1_3_bn[0][0]] conv3_block1_out (Activation) (None, 28, 28, 512) 0 [conv3_block1_add[0][0]] conv3_block2_1_conv (Conv2D) (None, 28, 28, 128) 65664 [conv3_block1_out[0][0]] conv3_block2_1_bn (BatchNormal (None, 28, 28, 128) 512 [conv3_block2_1_conv[0][0]] ization) conv3_block2_1_relu (Activatio (None, 28, 28, 128) 0 [conv3_block2_1_bn[0][0]] n) conv3_block2_2_conv (Conv2D) (None, 28, 28, 128) 147584 [conv3_block2_1_relu[0][0]] conv3_block2_2_bn (BatchNormal (None, 28, 28, 128) 512 [conv3_block2_2_conv[0][0]] ization) conv3_block2_2_relu (Activatio (None, 28, 28, 128) 0 [conv3_block2_2_bn[0][0]] n) conv3_block2_3_conv (Conv2D) (None, 28, 28, 512) 66048 [conv3_block2_2_relu[0][0]] conv3_block2_3_bn (BatchNormal (None, 28, 28, 512) 2048 [conv3_block2_3_conv[0][0]] ization) conv3_block2_add (Add) (None, 28, 28, 512) 0 [conv3_block1_out[0][0], conv3_block2_3_bn[0][0]] conv3_block2_out (Activation) (None, 28, 28, 512) 0 [conv3_block2_add[0][0]] conv3_block3_1_conv (Conv2D) (None, 28, 28, 128) 65664 [conv3_block2_out[0][0]] conv3_block3_1_bn (BatchNormal (None, 28, 28, 128) 512 [conv3_block3_1_conv[0][0]] ization) conv3_block3_1_relu (Activatio (None, 28, 28, 128) 0 [conv3_block3_1_bn[0][0]] n) conv3_block3_2_conv (Conv2D) (None, 28, 28, 128) 147584 [conv3_block3_1_relu[0][0]] conv3_block3_2_bn (BatchNormal (None, 28, 28, 128) 512 [conv3_block3_2_conv[0][0]] ization) conv3_block3_2_relu (Activatio (None, 28, 28, 128) 0 [conv3_block3_2_bn[0][0]] n) conv3_block3_3_conv (Conv2D) (None, 28, 28, 512) 66048 [conv3_block3_2_relu[0][0]] conv3_block3_3_bn (BatchNormal (None, 28, 28, 512) 2048 [conv3_block3_3_conv[0][0]] ization) conv3_block3_add (Add) (None, 28, 28, 512) 0 [conv3_block2_out[0][0], conv3_block3_3_bn[0][0]] conv3_block3_out (Activation) (None, 28, 28, 512) 0 [conv3_block3_add[0][0]] conv3_block4_1_conv (Conv2D) (None, 28, 28, 128) 65664 [conv3_block3_out[0][0]] conv3_block4_1_bn (BatchNormal (None, 28, 28, 128) 512 [conv3_block4_1_conv[0][0]] ization) conv3_block4_1_relu (Activatio (None, 28, 28, 128) 0 [conv3_block4_1_bn[0][0]] n) conv3_block4_2_conv (Conv2D) (None, 28, 28, 128) 147584 [conv3_block4_1_relu[0][0]] conv3_block4_2_bn (BatchNormal (None, 28, 28, 128) 512 [conv3_block4_2_conv[0][0]] ization) conv3_block4_2_relu (Activatio (None, 28, 28, 128) 0 [conv3_block4_2_bn[0][0]] n) conv3_block4_3_conv (Conv2D) (None, 28, 28, 512) 66048 [conv3_block4_2_relu[0][0]] conv3_block4_3_bn (BatchNormal (None, 28, 28, 512) 2048 [conv3_block4_3_conv[0][0]] ization) conv3_block4_add (Add) (None, 28, 28, 512) 0 [conv3_block3_out[0][0], conv3_block4_3_bn[0][0]] conv3_block4_out (Activation) (None, 28, 28, 512) 0 [conv3_block4_add[0][0]] conv4_block1_1_conv (Conv2D) (None, 14, 14, 256) 131328 [conv3_block4_out[0][0]] conv4_block1_1_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block1_1_conv[0][0]] ization) conv4_block1_1_relu (Activatio (None, 14, 14, 256) 0 [conv4_block1_1_bn[0][0]] n) conv4_block1_2_conv (Conv2D) (None, 14, 14, 256) 590080 [conv4_block1_1_relu[0][0]] conv4_block1_2_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block1_2_conv[0][0]] ization) conv4_block1_2_relu (Activatio (None, 14, 14, 256) 0 [conv4_block1_2_bn[0][0]] n) conv4_block1_0_conv (Conv2D) (None, 14, 14, 1024 525312 [conv3_block4_out[0][0]] ) conv4_block1_3_conv (Conv2D) (None, 14, 14, 1024 263168 [conv4_block1_2_relu[0][0]] ) conv4_block1_0_bn (BatchNormal (None, 14, 14, 1024 4096 [conv4_block1_0_conv[0][0]] ization) ) conv4_block1_3_bn (BatchNormal (None, 14, 14, 1024 4096 [conv4_block1_3_conv[0][0]] ization) ) conv4_block1_add (Add) (None, 14, 14, 1024 0 [conv4_block1_0_bn[0][0], ) conv4_block1_3_bn[0][0]] conv4_block1_out (Activation) (None, 14, 14, 1024 0 [conv4_block1_add[0][0]] ) conv4_block2_1_conv (Conv2D) (None, 14, 14, 256) 262400 [conv4_block1_out[0][0]] conv4_block2_1_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block2_1_conv[0][0]] ization) conv4_block2_1_relu (Activatio (None, 14, 14, 256) 0 [conv4_block2_1_bn[0][0]] n) conv4_block2_2_conv (Conv2D) (None, 14, 14, 256) 590080 [conv4_block2_1_relu[0][0]] conv4_block2_2_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block2_2_conv[0][0]] ization) conv4_block2_2_relu (Activatio (None, 14, 14, 256) 0 [conv4_block2_2_bn[0][0]] n) conv4_block2_3_conv (Conv2D) (None, 14, 14, 1024 263168 [conv4_block2_2_relu[0][0]] ) conv4_block2_3_bn (BatchNormal (None, 14, 14, 1024 4096 [conv4_block2_3_conv[0][0]] ization) ) conv4_block2_add (Add) (None, 14, 14, 1024 0 [conv4_block1_out[0][0], ) conv4_block2_3_bn[0][0]] conv4_block2_out (Activation) (None, 14, 14, 1024 0 [conv4_block2_add[0][0]] ) conv4_block3_1_conv (Conv2D) (None, 14, 14, 256) 262400 [conv4_block2_out[0][0]] conv4_block3_1_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block3_1_conv[0][0]] ization) conv4_block3_1_relu (Activatio (None, 14, 14, 256) 0 [conv4_block3_1_bn[0][0]] n) conv4_block3_2_conv (Conv2D) (None, 14, 14, 256) 590080 [conv4_block3_1_relu[0][0]] conv4_block3_2_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block3_2_conv[0][0]] ization) conv4_block3_2_relu (Activatio (None, 14, 14, 256) 0 [conv4_block3_2_bn[0][0]] n) conv4_block3_3_conv (Conv2D) (None, 14, 14, 1024 263168 [conv4_block3_2_relu[0][0]] ) conv4_block3_3_bn (BatchNormal (None, 14, 14, 1024 4096 [conv4_block3_3_conv[0][0]] ization) ) conv4_block3_add (Add) (None, 14, 14, 1024 0 [conv4_block2_out[0][0], ) conv4_block3_3_bn[0][0]] conv4_block3_out (Activation) (None, 14, 14, 1024 0 [conv4_block3_add[0][0]] ) conv4_block4_1_conv (Conv2D) (None, 14, 14, 256) 262400 [conv4_block3_out[0][0]] conv4_block4_1_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block4_1_conv[0][0]] ization) conv4_block4_1_relu (Activatio (None, 14, 14, 256) 0 [conv4_block4_1_bn[0][0]] n) conv4_block4_2_conv (Conv2D) (None, 14, 14, 256) 590080 [conv4_block4_1_relu[0][0]] conv4_block4_2_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block4_2_conv[0][0]] ization) conv4_block4_2_relu (Activatio (None, 14, 14, 256) 0 [conv4_block4_2_bn[0][0]] n) conv4_block4_3_conv (Conv2D) (None, 14, 14, 1024 263168 [conv4_block4_2_relu[0][0]] ) conv4_block4_3_bn (BatchNormal (None, 14, 14, 1024 4096 [conv4_block4_3_conv[0][0]] ization) ) conv4_block4_add (Add) (None, 14, 14, 1024 0 [conv4_block3_out[0][0], ) conv4_block4_3_bn[0][0]] conv4_block4_out (Activation) (None, 14, 14, 1024 0 [conv4_block4_add[0][0]] ) conv4_block5_1_conv (Conv2D) (None, 14, 14, 256) 262400 [conv4_block4_out[0][0]] conv4_block5_1_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block5_1_conv[0][0]] ization) conv4_block5_1_relu (Activatio (None, 14, 14, 256) 0 [conv4_block5_1_bn[0][0]] n) conv4_block5_2_conv (Conv2D) (None, 14, 14, 256) 590080 [conv4_block5_1_relu[0][0]] conv4_block5_2_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block5_2_conv[0][0]] ization) conv4_block5_2_relu (Activatio (None, 14, 14, 256) 0 [conv4_block5_2_bn[0][0]] n) conv4_block5_3_conv (Conv2D) (None, 14, 14, 1024 263168 [conv4_block5_2_relu[0][0]] ) conv4_block5_3_bn (BatchNormal (None, 14, 14, 1024 4096 [conv4_block5_3_conv[0][0]] ization) ) conv4_block5_add (Add) (None, 14, 14, 1024 0 [conv4_block4_out[0][0], ) conv4_block5_3_bn[0][0]] conv4_block5_out (Activation) (None, 14, 14, 1024 0 [conv4_block5_add[0][0]] ) conv4_block6_1_conv (Conv2D) (None, 14, 14, 256) 262400 [conv4_block5_out[0][0]] conv4_block6_1_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block6_1_conv[0][0]] ization) conv4_block6_1_relu (Activatio (None, 14, 14, 256) 0 [conv4_block6_1_bn[0][0]] n) conv4_block6_2_conv (Conv2D) (None, 14, 14, 256) 590080 [conv4_block6_1_relu[0][0]] conv4_block6_2_bn (BatchNormal (None, 14, 14, 256) 1024 [conv4_block6_2_conv[0][0]] ization) conv4_block6_2_relu (Activatio (None, 14, 14, 256) 0 [conv4_block6_2_bn[0][0]] n) conv4_block6_3_conv (Conv2D) (None, 14, 14, 1024 263168 [conv4_block6_2_relu[0][0]] ) conv4_block6_3_bn (BatchNormal (None, 14, 14, 1024 4096 [conv4_block6_3_conv[0][0]] ization) ) conv4_block6_add (Add) (None, 14, 14, 1024 0 [conv4_block5_out[0][0], ) conv4_block6_3_bn[0][0]] conv4_block6_out (Activation) (None, 14, 14, 1024 0 [conv4_block6_add[0][0]] ) conv5_block1_1_conv (Conv2D) (None, 7, 7, 512) 524800 [conv4_block6_out[0][0]] conv5_block1_1_bn (BatchNormal (None, 7, 7, 512) 2048 [conv5_block1_1_conv[0][0]] ization) conv5_block1_1_relu (Activatio (None, 7, 7, 512) 0 [conv5_block1_1_bn[0][0]] n) conv5_block1_2_conv (Conv2D) (None, 7, 7, 512) 2359808 [conv5_block1_1_relu[0][0]] conv5_block1_2_bn (BatchNormal (None, 7, 7, 512) 2048 [conv5_block1_2_conv[0][0]] ization) conv5_block1_2_relu (Activatio (None, 7, 7, 512) 0 [conv5_block1_2_bn[0][0]] n) conv5_block1_0_conv (Conv2D) (None, 7, 7, 2048) 2099200 [conv4_block6_out[0][0]] conv5_block1_3_conv (Conv2D) (None, 7, 7, 2048) 1050624 [conv5_block1_2_relu[0][0]] conv5_block1_0_bn (BatchNormal (None, 7, 7, 2048) 8192 [conv5_block1_0_conv[0][0]] ization) conv5_block1_3_bn (BatchNormal (None, 7, 7, 2048) 8192 [conv5_block1_3_conv[0][0]] ization) conv5_block1_add (Add) (None, 7, 7, 2048) 0 [conv5_block1_0_bn[0][0], conv5_block1_3_bn[0][0]] conv5_block1_out (Activation) (None, 7, 7, 2048) 0 [conv5_block1_add[0][0]] conv5_block2_1_conv (Conv2D) (None, 7, 7, 512) 1049088 [conv5_block1_out[0][0]] conv5_block2_1_bn (BatchNormal (None, 7, 7, 512) 2048 [conv5_block2_1_conv[0][0]] ization) conv5_block2_1_relu (Activatio (None, 7, 7, 512) 0 [conv5_block2_1_bn[0][0]] n) conv5_block2_2_conv (Conv2D) (None, 7, 7, 512) 2359808 [conv5_block2_1_relu[0][0]] conv5_block2_2_bn (BatchNormal (None, 7, 7, 512) 2048 [conv5_block2_2_conv[0][0]] ization) conv5_block2_2_relu (Activatio (None, 7, 7, 512) 0 [conv5_block2_2_bn[0][0]] n) conv5_block2_3_conv (Conv2D) (None, 7, 7, 2048) 1050624 [conv5_block2_2_relu[0][0]] conv5_block2_3_bn (BatchNormal (None, 7, 7, 2048) 8192 [conv5_block2_3_conv[0][0]] ization) conv5_block2_add (Add) (None, 7, 7, 2048) 0 [conv5_block1_out[0][0], conv5_block2_3_bn[0][0]] conv5_block2_out (Activation) (None, 7, 7, 2048) 0 [conv5_block2_add[0][0]] conv5_block3_1_conv (Conv2D) (None, 7, 7, 512) 1049088 [conv5_block2_out[0][0]] conv5_block3_1_bn (BatchNormal (None, 7, 7, 512) 2048 [conv5_block3_1_conv[0][0]] ization) conv5_block3_1_relu (Activatio (None, 7, 7, 512) 0 [conv5_block3_1_bn[0][0]] n) conv5_block3_2_conv (Conv2D) (None, 7, 7, 512) 2359808 [conv5_block3_1_relu[0][0]] conv5_block3_2_bn (BatchNormal (None, 7, 7, 512) 2048 [conv5_block3_2_conv[0][0]] ization) conv5_block3_2_relu (Activatio (None, 7, 7, 512) 0 [conv5_block3_2_bn[0][0]] n) conv5_block3_3_conv (Conv2D) (None, 7, 7, 2048) 1050624 [conv5_block3_2_relu[0][0]] conv5_block3_3_bn (BatchNormal (None, 7, 7, 2048) 8192 [conv5_block3_3_conv[0][0]] ization) conv5_block3_add (Add) (None, 7, 7, 2048) 0 [conv5_block2_out[0][0], conv5_block3_3_bn[0][0]] conv5_block3_out (Activation) (None, 7, 7, 2048) 0 [conv5_block3_add[0][0]] avg_pool (GlobalAveragePooling (None, 2048) 0 [conv5_block3_out[0][0]] 2D) predictions (Dense) (None, 1000) 2049000 [avg_pool[0][0]] Total params: 25,636,712 Trainable params: 25,583,592 Non-trainable params: 53,120 __________________________________________________________________________________________________ Nonepreds model.predict(x)1/1 [] - 1s 854ms/stepprint(Predicted:, decode_predictions(preds, top5)[0])Predicted: [(n02108422, bull_mastiff, 0.3921146), (n02110958, pug, 0.2944119), (n02093754, Border_terrier, 0.14356579), (n02108915, French_bulldog, 0.057976846), (n02099712, Labrador_retriever, 0.052499186)]TensorFlow2.2基本应用 import tensorflow as tf xtf.random.normal([2,16]) w1tf.Variable(tf.random.truncated_normal([16,8],stddev0.1)) b1tf.Variable(tf.zeros([8])) o1tf.matmul(x,w1)b1 o1tf.nn.relu(o1) o1tf.Tensor: id8263, shape(2, 8), dtypefloat32, numpy array([[0.16938789, 0. , 0.08883161, 0.14095941, 0.34751543, 0.353898 , 0. , 0.13356908], [0. , 0. , 0.48546872, 0.37623546, 0.5447475 , 0.21755993, 0.40121362, 0. ]], dtypefloat32) from tensorflow.keras import layers xtf.random.normal([4,16*16]) fclayers.Dense(5,activationtf.nn.relu) h1fc(x) h1tf.Tensor: id8296, shape(4, 5), dtypefloat32, numpy array([[0. , 0. , 0. , 0.14286758, 0. ], [0. , 2.2727172 , 0. , 0. , 0.34961763], [0.1311972 , 0. , 1.4005635 , 0. , 0. ], [0. , 1.7266206 , 0.64711714, 1.3494569 , 0. ]], dtypefloat32) #获取权值矩阵w fc.kerneltf.Variable ‘dense/kernel:0’ shape(256, 5) dtypefloat32, numpy array([[-0.0339304 , 0.02273461, -0.12746884, 0.14963049, 0.00773269], [-0.05978647, 0.07886668, -0.09110804, 0.14902723, 0.13007113], [ 0.10187459, 0.13089484, 0.14367685, 0.12212327, -0.06235344], …, [ 0.10417426, 0.05112691, 0.12206474, 0.01141772, -0.05271714], [ 0.03493455, -0.13473712, -0.01317982, -0.09485313, 0.04731715], [ 0.12421742, 0.00030141, -0.00211757, -0.04196439, -0.03638943]], dtypefloat32) fc.biastf.Variable ‘dense/bias:0’ shape(5,) dtypefloat32, numpyarray([0., 0., 0., 0., 0.], dtypefloat32) fc.trainable_variables[tf.Variable ‘dense/kernel:0’ shape(256, 5) dtypefloat32, numpy array([[-0.0339304 , 0.02273461, -0.12746884, 0.14963049, 0.00773269], [-0.05978647, 0.07886668, -0.09110804, 0.14902723, 0.13007113], [ 0.10187459, 0.13089484, 0.14367685, 0.12212327, -0.06235344], …, [ 0.10417426, 0.05112691, 0.12206474, 0.01141772, -0.05271714], [ 0.03493455, -0.13473712, -0.01317982, -0.09485313, 0.04731715], [ 0.12421742, 0.00030141, -0.00211757, -0.04196439, -0.03638943]], dtypefloat32), tf.Variable ‘dense/bias:0’ shape(5,) dtypefloat32, numpyarray([0., 0., 0., 0., 0.], dtypefloat32)] fc.variables[tf.Variable ‘dense/kernel:0’ shape(256, 5) dtypefloat32, numpy array([[-0.0339304 , 0.02273461, -0.12746884, 0.14963049, 0.00773269], [-0.05978647, 0.07886668, -0.09110804, 0.14902723, 0.13007113], [ 0.10187459, 0.13089484, 0.14367685, 0.12212327, -0.06235344], …, [ 0.10417426, 0.05112691, 0.12206474, 0.01141772, -0.05271714], [ 0.03493455, -0.13473712, -0.01317982, -0.09485313, 0.04731715], [ 0.12421742, 0.00030141, -0.00211757, -0.04196439, -0.03638943]], dtypefloat32), tf.Variable ‘dense/bias:0’ shape(5,) dtypefloat32, numpyarray([0., 0., 0., 0., 0.], dtypefloat32)] 5. 使用深度学习进行手写数字识别 import tensorflow as tf#载入MNIST 数据集。 mnist tf.keras.datasets.mnist #拆分数据集 (x_train, y_train), (x_test, y_test) mnist.load_data() #将样本进行预处理并从整数转换为浮点数 x_train, x_test x_train / 255.0, x_test / 255.0#使用tf.keras.Sequential将模型的各层堆叠并设置参数 model tf.keras.models.Sequential([tf.keras.layers.Flatten(input_shape(28, 28)),tf.keras.layers.Dense(128, activationrelu),tf.keras.layers.Dropout(0.2),tf.keras.layers.Dense(10, activationsoftmax) ]) #设置模型的优化器和损失函数 model.compile(optimizeradam,losssparse_categorical_crossentropy,metrics[accuracy]) #训练并验证模型 model.fit(x_train, y_train, epochs5) model.evaluate(x_test, y_test, verbose2)Train on 60000 samples Epoch 1/5 60000/60000 [] - 6s 95us/sample - loss: 0.2931 - accuracy: 0.9146 Epoch 2/5 60000/60000 [] - 5s 77us/sample - loss: 0.1419 - accuracy: 0.9592 Epoch 3/5 60000/60000 [] - 5s 78us/sample - loss: 0.1065 - accuracy: 0.9683 Epoch 4/5 60000/60000 [] - 5s 78us/sample - loss: 0.0852 - accuracy: 0.9738 Epoch 5/5 60000/60000 [] - 6s 100us/sample - loss: 0.0735 - accuracy: 0.9769 10000/1 - 0s - loss: 0.0338 - accuracy: 0.9795 [0.0666636555833742, 0.9795]
http://www.sadfv.cn/news/273188/

相关文章:

  • 来宾建设网站企业网站建设国内外现状
  • 如何做哟个优惠券网站个人电子商务网站 制作
  • 网站设计案例公司网站内容营销
  • 鞍山制作公司网站的公司物联网设计
  • 大学生二手书网站开发需求东莞房价一览表
  • 重庆网站建设的公司哪家好企查查企业信息查询手机版下载
  • 备案网站ip腾讯云低代码开发平台
  • 直播网站开发百度推广销售
  • 游览有关小城镇建设的网站百度快照推广是什么意思
  • 建立平台网站需要花多少钱100个经典创意营销方案
  • 深圳网站建设公司麦服务推广软文范例
  • 电脑做服务器发布网站吗怎么开发小程序
  • 济南专业网站优化ui设计师的工作内容包括哪些
  • 哈尔滨网站建设价格低什么是网站和网页
  • html网站制作答辩ppt建筑木模板
  • 通桥小学的网站建设浙江创都建设有限公司网站
  • 互联网站管理工作细则路由器屏蔽网站怎么做
  • 网站策划方案范文华米手表官方网站
  • 万网买网站怎样建立网站ip地址
  • 高端网站设计高端网站制作微网站如何做微信支付宝支付接口
  • 免费申请个人网站网站有图片的验证码是怎么做的
  • 排版的网站自媒体怎么注册
  • asp网站防注入代码宁德建设银行网站
  • 松江建设网站公司wordpress 帮助插件
  • 茶叶网站建设策划方案u001f外包网站
  • 成都商城网站开发聊城有什么网站制作公司
  • 创研科技做网站怎么样WordPress报错关闭
  • 深圳网站建设(龙华信科)节水网站建设
  • 昆明专业做网站站酷网如何接单
  • 怎么让自己的网站通过域名访问不了网站模块是啥