深度学习
我是小水水啊
静
展开
-
labelme的使用
听说是要用这个3.6版本的python环境激活虚拟环境下载labelme启动labelme。原创 2024-05-25 16:15:55 · 320 阅读 · 0 评论 -
边界框转化
在目标检测中,我们通常使用边界框(bounding box)来描述对象的空间位置。边界框是矩形的,由矩形。一种常用的边界框表示方法是。原创 2024-04-09 20:10:31 · 233 阅读 · 0 评论 -
常用的图像增广方法
左右翻转图像通常不会改变对象的类别。这是最早且最广泛使用的图像增广方法之一。接下来,我们使用transforms模块来创建RandomFlipLeftRight实例,这样就各有50%的几率使图像向左或向右翻转。2. 上下翻转图像3. 图像进行随机裁剪4. 改变颜色。原创 2024-04-09 19:40:35 · 304 阅读 · 0 评论 -
稠密连接网络(DenseNet)
DenseNet的核心思想是改进网络中特征的传递方式,通过在每个层之间建立直接的连接(即稠密连接),来提高信息流动和梯度传播的效率,从而解决深度神经网络中的梯度消失和梯度爆炸问题。原创 2024-04-02 12:29:42 · 296 阅读 · 0 评论 -
残差网络(ResNet)
残差网络的核心思想是:每个附加层都应该更容易地包含原始函数作为其元素之一。于是,残差块(residual blocks)便诞生了,这个设计对如何建立深层神经网络产生了深远的影响。即随着网络层数的增加,网络的性能反而不再提升,甚至下降。残差块通过引入“残差学习”(residual learning)来缓解这一问题,使得网络能够更容易地学习到深层特征。残差块的输入不仅传递到卷积层等操作中,还通过一个跳跃连接(也称为快捷连接)直接传递到后面的层。原创 2024-04-02 11:22:13 · 310 阅读 · 0 评论 -
批量规范化(batch normalization)
一种流行且有效的技术,可持续加速深层网络的收敛速度。批量规范化应用于单个可选层(也可以应用到所有层),其原理如下:在每次训练迭代中,我们首先规范化输入,即通过减去其均值并除以其标准差,其中两者均基于当前小批量处理。接下来,我们应用比例系数和比例偏移。正是由于这个基于批量统计的标准化,才有了批量规范化的名称。在模型训练过程中,批量规范化利用小批量的均值和标准差,不断调整神经网络的中间输出,使整个神经网络各层的中间输出值更加稳定。原创 2024-04-02 10:21:23 · 250 阅读 · 0 评论 -
GoogLeNet
中间的两条路径在输入上执行1x1卷积减少通道数,从而降低模型的复杂性。第四条路径使用3x3最大汇聚层,然后使用1x1卷积层来改变通道数。这四条路径都使用合适的填充来使输入与输出的高和宽一致,最后我们将每条线路的输出在通道维度上连结,并构成Inception块的输出。GoogLeNet一共使用9个Inception块和全局平均汇聚层的堆叠来生成其估计值。第一个模块类似于AlexNet和LeNet,Inception块的组合从VGG继承,全局平均汇聚层避免了在最后使用全连接层。原创 2024-04-01 21:12:17 · 208 阅读 · 0 评论 -
网络中的网络(NiN)
NiN的想法是在每个像素位置(针对每个高度和宽度)应用一个全连接层。果我们将权重连接到每个空间位置,我们可以将其视为1x1卷积层,或作为在每个像素位置上独立作用的全连接层。从另一个角度看,即将空间维度中的每个像素视为单个样本,将通道维度视为不同特征。其卷积核的大小为1×1。这种卷积层的主要作用是改变输入特征图的通道数,同时保留空间信息不变。1×1卷积层在网络中通常用于增加或减少通道数、调整网络的深度、以及进行特征融合或分离。原创 2024-04-01 20:53:53 · 341 阅读 · 0 评论 -
使用块的网络(VGG)
VGG神经网络连接有几个VGG块(在vgg_block函数中定义)。其中有超参数变量conv_arch。该变量指定了每个VGG块里卷积层个数和输出通道数。而一个VGG块与之类似,由一系列卷积层组成,后面再加上用于空间下采样的最大汇聚层。VGG网络可以分为两部分:第一部分主要由卷积层和汇聚层组成,第二部分由全连接层组成。1.带填充以保持分辨率的卷积层;2.非线性激活函数,如ReLU;3.汇聚层,如最大汇聚层。原创 2024-04-01 19:55:22 · 274 阅读 · 0 评论 -
深度卷积神经网络(AlexNet)
AlexNet由八层组成:五个卷积层、两个全连接隐藏层和一个全连接输出层。AlexNet使用ReLU而不是sigmoid作为其激活函数。# 这里使用一个11*11的更大窗口来捕捉对象。# 同时,步幅为4,以减少输出的高度和宽度。# 另外,输出通道的数目远大于LeNet# 减小卷积窗口,使用填充为2来使得输入与输出的高和宽一致,且增大输出通道数# 使用三个连续的卷积层和较小的卷积窗口。# 除了最后的卷积层,输出通道的数量进一步增加。# 在前两个卷积层之后,汇聚层不用于减少输入的高度和宽度。原创 2024-04-01 17:13:36 · 353 阅读 · 0 评论 -
神经网络汇聚层
汇聚窗口从输入张量的左上角开始,从左往右、从上往下的在输入张量内滑动。在汇聚窗口到达的每个位置,它计算该窗口中输入子张量的最大值或平均值。计算最大值或平均值是取决于使用了最大汇聚层还是平均汇聚层。可以设定一个任意大小的矩形汇聚窗口,并分别设定填充和步幅的高度和宽。原创 2024-04-01 16:25:17 · 393 阅读 · 0 评论 -
LeNet卷积神经网络
它是最早发布的卷积神经网络之一网络层的结构:我们对原始模型做了一点小改动,去掉了最后一层的高斯激活。除此之外,这个网络与最初的LeNet-5一致。原创 2024-04-01 15:39:07 · 331 阅读 · 0 评论 -
多输入多输出通道
由于我们通常使用小卷积核,因此对于任何单个卷积,我们可能只会丢失几个像素。也可以设置上下和左右走的步长分别是什么,设置stride=(3, 4)时,意味着卷积核在输入数据的宽度(横向)上每次移动3个像素,在高度(纵向)上每次移动4个像素。卷积失去了卷积层的特有能力——在高度和宽度维度上,识别相邻元素间相互作用的能力。就是将之前的大的图片,定义一个核函数,然后经过移动并运算将图片变小了.也就是将图像压缩提取整合特征值.在计算互相关时,卷积窗口从输入张量的左上角开始,向下、向右滑动。比如我下面移动两步。原创 2024-03-31 19:37:50 · 321 阅读 · 0 评论 -
pytorch读写文件
【代码】pytorch读写文件。原创 2024-03-31 15:37:23 · 400 阅读 · 0 评论 -
pytorch 层和块
'''建立了线性层 输入20,输出256Relu函数激活,线性层 输入256,输出10'''X = torch.rand(2, 20) # 随机2x20的矩阵net(X)一般来说 都要定义# 用模型参数声明层。这里,我们声明两个全连接的层# 调用MLP的父类Module的构造函数来执行必要的初始化。# 在类实例化时也可以指定其他函数参数self.hidden = nn.Linear(20, 256) # 隐藏层self.out = nn.Linear(256, 10) # 输出层。原创 2024-03-30 21:21:36 · 552 阅读 · 0 评论