
深度学习及经典神经网络
主要为一些深度学习基础知识和经典神经网络复现
Lyttonkeepgoing
这个作者很懒,什么都没留下…
展开
-
GoogleNet网络详解
model# GoogleNe亮点# 引入了Inception结构 (融合不同尺度的特征信息)# 使用1x1 的卷积核进行降维以及映射处理# 添加两个辅助分类器帮助训练# 丢弃全连接层,使用平均池化层(大大减少模型参数)# AlexNet和VGG都只有一个输出层 GoogleNet有三个输出层(其中两个辅助分类层)# 辅助分类层: 平均池化下采样 5x5filter和stride3 + conv 1x1 + FC + FC# 为什么大多数人都不去使用googlenet 而去使用vgg#原创 2021-10-15 08:40:12 · 3252 阅读 · 0 评论 -
最详细代码注释之深度学习经典网络--2AlexNet
model# Alex Net 亮点# 1. 首次利用GPU进行网络加速# 2.使用了Relu激活函数,而不是传统的sigmoid激活以及tanh激活# 3.使用了LRN局部响应归一化# 4.在全连接层的前两层使用了Dropout 随机失活神经元操作,以减少过拟合 重点!!!import torchimport torch.nn as nn# 网络结构分析# conv1:rgb kernels:48 x 2 = 96 kernel_size = 11 padding[1, 2]原创 2021-09-26 22:29:30 · 718 阅读 · 0 评论 -
最详细的代码注释之深度学习经典网络1--LeNet
import torch.nn as nnimport torch.nn.functional as Fimport torchclass LeNet(nn.Module): # 首先定义一个类 这个类要继承于nn.Module def __init__(self): # 定义初始化函数 # 在这个类中实现两个方法 一 初始化函数 在搭建网络过程中所需要使用到的网络层结构 super(LeNet, self).__init__() # su.原创 2021-09-26 22:27:20 · 531 阅读 · 0 评论 -
梯度消失,梯度爆炸的一些问题/Batch Normalization
1.梯度消失梯度消失:梯度太小,无法进行参数的更新,梯度小到数据类型无法表示出现NAN梯度爆炸:梯度太大,大到数据类型无法表示,出现NAN假设我们有四层极简神经网络:每层只有一个神经元获取的w1的梯度有:获取的w1的梯度有假设我们使用sigmoid激活函数,即f为sigmoid函数,sigmoid的导数如下图假设每层都获取sigmoid导函数的最大值1/4,那么在反向传播时,当权重初始过小或使用易饱和神经元(sigmoid,tanh)sigmoid在y=0,...原创 2021-12-02 14:27:45 · 2465 阅读 · 0 评论 -
深度学习基础概念梳理(纯理解版)
很多时候概念容易忘 自己稍微整理了下 便于自己理解和后续复习# 纯新手卷积层特性:1拥有局部感知机制 2权值共享目的: 进行图像特征提取卷积核的channel与输入特征层的channel相同输出的特征矩阵channel与卷积核个数相同 # 重点 写代码时注意这两点 channel要对应如果加上偏移量 直接在对应的卷积核输出的层上加偏移量 几个卷积核几个偏置在卷积操作过程中 越界了怎么办 用padding激活函数 作用:引入非线性因素 使其具备解决非线性问题...原创 2021-09-24 16:55:54 · 144 阅读 · 0 评论