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

新乡市网站建设公司网络稿件投稿平台

新乡市网站建设公司,网络稿件投稿平台,自己做的网站如何在网络上展示,免费网站应用池化是什么?它有什么作用? 还是草地的场景,把草地分成一块块的网格,数量还是太多了,如何继续简化输入数据呢? 这时候可以只取一块网格中所有的小草的大小形状的平均值或者最大值作为一个输入数据,这样就大…

池化是什么?它有什么作用?

还是草地的场景,把草地分成一块块的网格,数量还是太多了,如何继续简化输入数据呢?


这时候可以只取一块网格中所有的小草的大小形状的平均值或者最大值作为一个输入数据,这样就大大简化了数据数量。

池化(Pooling)是卷积神经网络中的一种常用操作,其目的是通过减小特征图的空间大小来降低模型的复杂度。在池化操作中,我们将特征图划分为多个子区域,然后对每个子区域进行聚合操作,生成一个较小的特征图。

通常,池化操作的聚合操作可以是取最大值(Max Pooling)、取平均值(Average Pooling)等,其中最大值池化是最常用的一种。

池化的作用有以下几点:

  1. 减小特征图的空间大小,降低模型复杂度,减少计算量。

  2. 增强模型对平移不变性的学习能力,即使目标在图像中稍微移动一点,也能保持对它的识别能力。

  3. 缓解过拟合,减少模型对噪声的敏感性,提高模型的泛化能力。

在实际应用中,池化操作通常会与卷积操作交替进行,以构建一个完整的卷积神经网络。同时,由于池化操作的缩小特征图的空间大小,因此在池化操作之前,可以通过增加卷积层的数量或通道数来提高模型的表达能力,从而保持对目标的识别能力。

Pytorch中常用的池化操作的函数

 

还是上一篇的例子,我们把每一个卷积核的结果进行最大值或平均值池化,可得到如下结果

 这样数据量明显减小。以下是python代码

import numpy as np
import torch
import torch.nn as nn
import matplotlib.pyplot as plt
from PIL import Image# 读取图像并将其转换为灰度图
img = Image.open("/home/cbc/图片/2.png")
imgGray = np.array(img.convert("L"), dtype=np.float32)  # convert("L") 转换为单通道图片imh,imw = imgGray.shape
# 将二维的灰度图像转换成四维的张量,维度为(1, 1, imh, imw),表示一个batch,一个通道,高为imh,宽为imw
imgGray_torch = torch.from_numpy(imgGray.reshape((1,1,imh,imw)))
print(imgGray_torch.shape)
# 定义卷积核大小和卷积核矩阵,其中心为24,其余为-1
kersize = 5
ker = torch.ones(kersize, kersize, dtype=torch.float32) * -1
ker[2, 2] = 24
ker = ker.reshape((1, 1, kersize, kersize))# 将卷积核矩阵转换成张量,维度为(1, 1, kersize, kersize),表示一个batch,一个通道,卷积核的高和宽分别为kersize
ker = ker.reshape((1, 1, kersize, kersize))# 定义一个2D卷积层,输入通道数为1,输出通道数为2,卷积核的大小为(kersize,kersize),不使用偏置项
conv2d = nn.Conv2d(1, 2, (kersize, kersize), bias=False)# 将卷积核张量赋值给卷积层的权重,第一个通道的权重为ker
conv2d.weight.data[0] = ker# 对灰度图像进行卷积操作
imconv2dout = conv2d(imgGray_torch)
maxpoll2 = nn.MaxPool2d(2,stride=2)
pool2_out = maxpoll2(imconv2dout)# 将卷积和池化的结果的张量降维成二维数组
imconv2dout_im = pool2_out.data.squeeze()# 打印卷积结果的形状
print("卷积后的尺寸:", imconv2dout_im.shape)# 绘制卷积结果的两个通道
plt.figure(figsize=(12, 6))
plt.subplot(1, 2, 1)
plt.imshow(imconv2dout_im[0], cmap=plt.cm.gray)
plt.axis(False)
plt.subplot(1, 2, 2)
plt.imshow(imconv2dout_im[1], cmap=plt.cm.gray)
plt.axis(False)
plt.show()

 

 可以看出,由于池化后的输入数据量减少,图像也变得模糊了。

http://www.dinnco.com/news/36236.html

相关文章:

  • 邢台做网站找谁好的竞价推广托管
  • 列出网站开发建设的步骤seo资料站
  • wordpress 分类模板插件前端seo怎么优化
  • 软件培训机构排名北京自动seo
  • asp 网站源代码关键词优化是什么意思?
  • 情侣建站的wordpress主题百度站长官网
  • 做网站在哪nba新闻最新消息
  • 公司基本资料模板沈阳seo关键词排名优化软件
  • 宁波做网站优化价格如何在百度搜索排名靠前
  • 福田做商城网站建设哪家效益快中牟网络推广外包
  • 手机网站有什么不同站长工具是什么意思
  • 自己做网站编程微信广告推广如何收费
  • 网站建设的公司哪家靠谱西安疫情最新消息
  • 做百度推广送网站吗网络营销的收获与体会
  • 给企业做宣传网站的好处做电商一个月能挣多少钱
  • 百度快照优化网站免费申请网站
  • 怎么做网站的三级目录阐述网络推广的主要方法
  • 石家庄制作网站软件百度集团总部在哪里
  • 最大的网站模板网线下宣传渠道和宣传方式
  • 安徽做网站电话推销产品的万能句子
  • 有哪些免费的黄页网seo搜索引擎实战详解
  • 林州企业网站建设快速排名上
  • 什么网站时候做伪静态厦门人才网个人登录
  • wordpress音乐站武汉做网页推广公司
  • 音乐网站的音乐怎么做品牌推广方案思维导图
  • 做网站用哪种语言好企业网站有哪些
  • 深圳做网站排名公司网站建设服务
  • 网站建设与网页制作盒子模型东莞网络营销
  • 做的比较好的网站seo优化员
  • 一个人在家做网站建设百度竞价代理商