DAY 54 Inception网络及其思考

知识点回顾:

  1. 传统计算机视觉发展史:LeNet-->AlexNet-->VGGNet-->nceptionNet-->ResNet
  2. Inception模块和网络
  3. 特征融合方法阶段性总结:逐元素相加、逐元素相乘、concat通道数增加等
  4. 感受野与卷积核变体:深入理解不同模块和类的设计初衷

一、 Inception网络介绍

今天我们介绍Inception,也就是GoogleNet

Inception 网络,也被称为 GoogLeNet,是 Google 团队在 2014 年提出的经典卷积神经网络架构。它的核心设计理念是 “并行的多尺度融合”,通过在同一层网络中使用多个不同大小的卷积核(如 1x1、3x3、5x5)以及池化操作,从不同尺度提取图像特征,然后将这些特征进行融合,从而在不增加过多计算量的情况下,获得更丰富的特征表达。

Inception 模块是 Inception 网络的基本组成单元

在同样的步长下,卷积核越小,下采样率越低,保留的图片像素越多;卷积核越大,越能捕捉像素周围的信息。

一个典型的 Inception 模块包含以下几个并行的分支:

  • 1x1 卷积分支:用于降维,减少后续卷积操作的计算量,同时提取局部特征。​(像素下采样率低,但是可以修改通道数)
  • 3x3 卷积分支:捕捉中等尺度的特征。​
  • 5x5 卷积分支:捕捉较大尺度的特征。​
  • 池化分支:通常使用最大池化或平均池化,用于保留图像的全局信息。

二、 inception网络架构

2.1 定义inception模块

import torch
import torch.nn as nn
 
class Inception(nn.Module):
    def __init__(self, in_channels):
        """
        Inception模块初始化,实现多尺度特征并行提取与融合
        
        参数:
            in_channels: 输入特征图的通道数
        """
        super(Inception, self).__init__()
        
        # 1x1卷积分支:降维并提取通道间特征关系
        # 减少后续卷积的计算量,同时保留局部特征信息
        self.branch1x1 = nn.Sequential(
            nn.Conv2d(in_channels, 64, kernel_size=1),  # 降维至64通道
            nn.ReLU()  # 引入非线性激活
        )
        
        # 3x3卷积分支:通过1x1卷积降维后使用3x3卷积捕捉中等尺度特征
        # 先降维减少计算量,再进行空间特征提取
        se
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值