- 博客(23)
- 收藏
- 关注
原创 Pytorch从零开始实战22
CycleGAN是一种无监督图像到图像转换模型,它的一个重要应用领域是域迁移,比如可以把一张普通的风景照变化成梵高化作,或者将游戏画面变化成真实世界画面,将一匹正常肤色的马转为斑马等等。CycleGAN 主要解决的问题是将一个域中的图像转换到另一个域中的图像,而无需成对的训练数据。这种转换是双向的,即可以从一个域转换到另一个域,也可以反过来转换。生成器: CycleGAN 包含两个生成器,分别用于将两个不同域的图像进行转换。
2024-03-29 19:07:41
859
原创 Pytorch从零开始实战21
Pix2Pix是一种用于用于图像翻译的通用框架,即图像到图像的转换。它在生成对抗网络的框架下进行训练。Pix2Pix的目标是将输入图像转换为输出图像,例如将黑白线稿转换为彩色图像,或者将地图转换为卫星图像等。Pix2Pix模型的训练通常需要大量的配对数据,即包含输入图像与相应输出图像的数据集。图像内容:指的是图像的固有内容,它是区分不同图像的依据。图像域:指在特定上下文中所涵盖的一组图像的集合,这些图像通常具有某种相似性或共同特征。图像域可以用来表示一类具有共同属性或内容的图像。
2024-03-15 00:07:22
1205
原创 Pytorch从零开始实战20
本次实验将CGAN模型又重新复习了一遍,并且使用训练好的生成器模型指定生成对象。由于生成器模型的训练是在一个带有手势标签的数据集上进行的,这使得生成器可以学会生成具有特定手势的图像。手势标签被设定为 1,并且将这个标签传递给了生成器模型后,生成器模型在生成图像时考虑了这个标签,因此生成的图像会具有与该标签对应的手势特征。
2024-03-07 20:44:32
1291
1
原创 Pytorch从零开始实战19
与标准GAN相比,CGAN额外接收一个条件向量,用于指导生成器生成特定类型的输出。从中了解如何生成样本时使用额外的条件信息,未来掌握利用条件信息生成特定类别的图像或生成带有特定属性的图像。
2024-02-29 22:48:22
1145
1
原创 Pytorch从零开始实战18
深度卷积对抗网络(Deep Convolutional Generative Adversarial Networks, DCGAN)是生成对抗网络的一种模型改进,其将卷积运算的思想引入到生成式模型当中来做无监督的训练,利用卷积网络强大的特征提取能力来提高生成网络的学习效果。判别器网络和生成器网络: DCGAN包括两个主要部分,即判别器(Discriminator)和生成器(Generator)。判别器负责评估输入图像是真实图像还是生成图像,而生成器则试图生成逼真的图像以欺骗判别器。卷积层和批量归一化。
2024-02-01 20:52:47
1402
2
原创 Pytorch从零开始实战17
首先定义鉴别器模型,代码中LeakyReLU是ReLU激活函数的变体,它引入了一个小的负斜率,在负输入值范围内,而不是将它们直接置零。这个斜率通常是一个小的正数,例如0.01。return validity # 返回的是一个[0, 1]间的概率定义生成器模型,用于输出图像。nn.Tanh()imgs = imgs.view(imgs.size(0), *img_shape) # reshape成(64, 1, 28, 28)
2024-01-19 19:02:34
2487
原创 Pytorch从零开始实战16
本文只是对ResNeXt-50算法的部分代码进行思考,学习过程中需要积极思考与探索,以提高能力和解决问题。对于上次ResNeXt-50算法,我们同样有基于TensorFlow的实现。
2024-01-10 19:50:54
566
1
原创 Pytorch从零开始实战15
ResNeXt 使用多个分支(cardinality)来学习特征,每个分支都是一个小型的卷积网络。分支的输出在通道维度上进行拼接,增加了模型的宽度,提高了特征的丰富性。通过增加模型的宽度而不是深度,ResNeXt 在一定程度上提高了模型性能,同时减少了参数量和计算复杂度。通过学习它的设计理念可能会启发我们后续工作。
2024-01-04 21:49:51
1100
1
原创 Pytorch从零开始实战14
SE模块引入了通道注意力机制,使得网络在学习过程中能够更加自适应地关注对任务有用的通道,抑制对任务无关的通道。这有助于提高网络的特征表达能力。当前也可以与各种其他的深度神经网络结构集成。因此,可以在不改变整体网络架构的情况下,通过引入通道注意力机制来增强网络性能。
2023-12-27 22:00:18
1377
原创 Pytorch从零开始实战13
由于作者水平有限,所以本次模型之间的结合探索采用模型集成,这其中的优势有:1.每个模型通过不同的方式学习数据的表示,将它们集成可以得到更全面、更丰富的特征表示。2.不同的模型可能对数据集中的不同样本和模式有更好的泛化能力,集成可以减少过拟合的风险。这样的模型可以提供更强的鲁棒性,但一定有很多更好的结合方式。
2023-12-15 20:01:29
1172
原创 Pytorch从零开始实战12
本次实验学习到了一个更激进的密集连接机制,每个层都会包含前面层所有的输入,而且与ResNet不同,层与层之间使用叠加的方式进行连接,来增强神经网络的信息流动,促进梯度的传播,以及提高参数的共享和重复使用,使得模型表现出不错的效果。
2023-12-08 17:18:23
1544
原创 Pytorch从零开始实战11
本次实验主要实现了ResNet-50V2模型,ResNet模型本身就是用来缓解梯度爆炸和梯度消失问题的,在V2结构中,激活函数ReLU应用在残差块的输出上,而不是在整个块的输入上。这使得网络能够学习到更复杂的非线性映射,并且使得原本的网络进行相对的恒等映射,提高了网络的表达能力。当然,网络可以有不同的残差连接,本文这种修改并不是一成不变适用于所有情况,而是在某些场景下可能有助于训练,提高网络性能。
2023-11-29 17:19:09
1106
原创 Pytorch从零开始实战10
本次实验学习了ResNet的基本概念和实现,ResNet的核心思想是通过引入残差块,使网络能够更容易地学习恒等映射的变化部分,所以能够构建深层次的网络, 同时其中的跳跃连接通过将输入直接添加到输出,有助于梯度的流动,减轻梯度消失的问题,但是ResNet计算和存储的资源要求高,容易过拟合也是它的缺点,我们可以通过学习它的网络设计思想,构建自己的网络。
2023-11-21 23:23:20
716
原创 Pytorch从零开始实战09
本次实验了解到模型由卷积、批归一化和残差连接组成,可以进一步提取和强化特征,同时又了解到SPPF层的实现,其用于捕获不同尺度的上下文信息。
2023-11-11 14:29:05
626
1
原创 Pytorch从零开始实战08
通过这个实验可以了解如何在模型中实现残差连接,这对于训练深度神经网络特别有用。残差连接允许在模块之间传递和保留信息,有助于缓解梯度消失问题和训练更深的网络。
2023-11-03 22:39:18
927
1
原创 Pytorch从零开始实战07
本次实验主要手写了经典网络架构VGG16,并且使用两张GPU和一张GPU进行实验,但惊奇的发现,一张GPU运行时间是164秒,两张GPU运行时间是318秒,明明算力提高了,反而训练时间更加慢了,经过资料的查询,大概原因是数据量很小,GPU之间传递数据占用时间相对大于加速运算时间,所以训练时间反而变长了。
2023-10-27 17:58:39
786
原创 Pytorch从零开始实战06
本次调用官方预训练的VGG模型,由于VGG的参数量过大,我们仅训练了最后一层,所以效果不是很好,所以未来数据集比较大的时候,可以放开所有的层重新训练。
2023-10-20 19:31:55
774
1
原创 Pytorch从零开始实战03
经过几次实验,发现三个问题:1.经过实验,将学习率从0.01改为0.0001,模型效果会好很多。2.有的时候每轮epoch准确率一直为百分之20多,可能是模型陷入局部最小值或鞍点,所以后续可以引入提前停止。3.无脑的增加层数并不会使模型效果变好。
2023-09-14 22:55:32
468
1
原创 Pytorch从零开始实战01
self.conv1 是第一个卷积层,将输入特征图的通道数从1增加到32,同时使用3x3的卷积核进行卷积。self.conv2 是第二个卷积层,将输入特征图的通道数从32增加到64,同样使用3x3的卷积核进行卷积。本次实战使用MNIST数据集,这是一个包含了手写数字的灰度图像的数据集,每个图像都是28x28像素大小,并且标记了相应的数字,也是很多计算机视觉初学者第一个使用的数据集。self.pool2 是第二个最大池化层,将特征图的大小再次减半,从11x11变为5x5。定义一个函数,随机查看5张图片。
2023-09-05 19:35:25
991
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人