卷积神经网络-池化层和激活层

**2.**池化层

根据特征图上的局部统计信息进行下采样,在保留有用信息的同时减少特征图的大小。和卷积层不同的是,池化层不包含需要学习的参数。最大池化(max-pooling)在一个局部区域选最大值作为输出,而平均池化(average pooling)计算一个局部区域的均值作为输出。局部区域池化中最大池化使用更多,而全局平均池化(global average pooling)是更常用的全局池化方法。

池化的核通常采用2×2的大小,平均池化就是计算2×2范围内的平均值,最大池化就是取该范围内的最大值。目前比较常用的是最大池化。在经过池化后,原图像的channel是不发生改变的。

池化层的作用:

  1. 增加特征平移不变性。
  2. 减小特征图大小。
  3. 最大池化可以带来非线性。

**3.**激活层

激活层的作用在于将前一层的线性输出,通过非线性的激活函数进行处理,这样用以模拟任意函数,从而增强网络的表征能力。激活层常用的函数包括sigmoid和ReLu(Rectified-Linear Unit,修正线性单元)等。激活函数是一些非线性的函数,这些函数的特性有所不同:

1.sigmoid函数可以将数值压缩到[0, 1]的区间。

2.tanh可以将数值压缩到[-1, 1]的区间。

3.ReLu函数实现一个取正的效果,所有负数的信息都抛弃。

4.LeakyReLu是一种相对折中的ReLu,认为当数值为负的时候可能也存在一定有用的信息,那么就乘以一个系数0.1(可以调整或自动学习),从而获取负数中的一部分信息。

5.Maxout使用两套参数,取其中值大的一套作为输出。

6.ELU类似于LeakyReLu,只是使用的公式不同。

以Tensorflow为例学习如何搭建这些层的方法:

卷积层:tf.nn.conv2d(input, filter, strides, padding)

激活层:tf.nn.relu()

池化层:tf.nn.max_pool()(最大池化)

相关推荐
水龙吟啸7 分钟前
项目设计与开发:智慧校园食堂系统
python·机器学习·前端框架·c#·团队开发·visual studio·数据库系统
王哈哈^_^34 分钟前
【完整源码+数据集】道路拥塞数据集,yolo道路拥塞检测数据集 8921 张,交通拥堵识别数据集,路口拥塞识别系统实战教程
深度学习·算法·yolo·目标检测·计算机视觉·分类·毕业设计
不错就是对1 小时前
【Agent-lightning】 - 1_环境搭建
人工智能·pytorch·深度学习·机器学习·chatgpt·transformer·vllm
未来之窗软件服务1 小时前
幽冥大陆(八十七 ) 水果识别在线检测模型netron —东方仙盟练气期
人工智能·机器学习·ncnn·仙盟创梦ide·东方仙盟
HyperAI超神经7 小时前
在线教程丨 David Baker 团队开源 RFdiffusion3,实现全原子蛋白质设计的生成式突破
人工智能·深度学习·学习·机器学习·ai·cpu·gpu
一瞬祈望10 小时前
⭐ 深度学习入门体系(第 7 篇): 什么是损失函数?
人工智能·深度学习·cnn·损失函数
阿正的梦工坊10 小时前
Kronecker积详解
人工智能·深度学习·机器学习
Dfreedom.10 小时前
从 model(x) 到__call__:解密深度学习框架的设计基石
人工智能·pytorch·python·深度学习·call
汤姆yu11 小时前
基于深度学习的水稻病虫害检测系统
人工智能·深度学习
手揽回忆怎么睡11 小时前
Streamlit学习实战教程级,一个交互式的机器学习实验平台!
人工智能·学习·机器学习