学习笔记4 Supervised Convolutional Neural Network 之 Convolution and Pooling

本文详细介绍了卷积神经网络中的两个核心概念:卷积(Convolution)与池化(Pooling)。通过使用Matlab的conv2函数进行卷积运算,并展示了如何实现不同类型的池化方法,包括平均池化(mean-pooling)和最大池化(max-pooling)。

一、Convolution

这里写图片描述

对一个 r×c 的 Image 用 k个 a×b
 的滤波器做卷积,则得到k × (r - a + 1) × (c - b + 1)的特征。

利用 matlab 的 conv2 函数操作十分方便。

convolvedImage = conv2(im, filter, 'valid');

二、Pooling

这里写图片描述

Pooling 一般用mean 或 max - pooling。如图所示。这里在 matlab 里有个技巧是利用卷积进行求mean-pooling.

pooling具有尺寸不变形,起到降维的作用。

filter = ones(poolDim)./(poolDim*poolDim);
for imageNum = 1:numImages
    for featureNum = 1:numFilters
        convolvedImage = convolvedFeatures(:, :, featureNum, imageNum);
        pooledImage = conv2(convolvedImage, filter, 'valid');
        pooledImage = pooledImage(1:poolDim:end, 1:poolDim:end);
        pooledFeatures(:, :, featureNum, imageNum) = pooledImage;
    end
end
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值