
深度学习框架pytorch
文章平均质量分 70
欢迎来到本专栏,这里汇集了深度学习框架PyTorch的精华知识。我们将深入剖析PyTorch的核心原理,解读其强大功能,并分享实际应用的最佳实践。无论你是初学者还是资深开发者,都能在这里找到有价值的学习资源。让我们一起探索PyTorch的奥秘,掌握深度学习的核心技术,开启智能时代的无限可能!
每天五分钟玩转人工智能
没有梦想和神经网络有什么区别?
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
每天五分钟深度学习PyTorch:卷积和池化后图片会有什么变化?
卷积神经网络两个最核心的网络层就是卷积层还有池化层,本文我们将看一下一张图片数据经过卷积层和池化层之后会有什么变化,以此来加深对卷积操作和池化操作的认识。这就是卷积神经网络卷积层和池化层操作的直观体现,本文的所有代码均放在了我的GitHub的卷积和池化操作的conv_pool.py中。这里的卷积层的参数我们并没有使用卷积层中默认的,而是使用我们自定义的,下面我们看一下经过卷积层和池化层之后图片有什么变化。原创 2025-06-11 23:33:06 · 316 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:BatchNorm1d和BatchNorm2d的使用
使用这种归一化技术可以保证网络每次接受的输入都是均值 0 标准差 1。running_mean表示均值,running_var表示方差。原创 2025-05-20 00:21:26 · 386 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:视觉工具包torchvison
在pytorch深度学习框架中,torchvision是一个非常优秀的视觉工具包,我们可以使用它加载一些著名的数据集,然后我们可以使用它来加载网络模型,比如vgg,resnet等等,还可以使用它来预处理一些图片数据,本节课程我们将学习一下它的使用方式。原创 2025-05-09 23:54:04 · 389 阅读 · 0 评论 -
每天五分钟深度学习框架PyTorch:基于Dataset封装自定义数据集
我们前面使用过torchvision中的数据集,我们可以直接使用torchvison来加载,然后使用dataLoader来获取batch个数据,用于模型的训练和测试。现在的问题是如果我们的所要使用的数据pytorch中没有进行封装怎么办?原创 2025-05-04 22:41:02 · 329 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:使用visdom绘制损失函数图像
如果安装失败。原创 2025-04-27 21:01:30 · 517 阅读 · 0 评论 -
每天五分钟深度学习PyTorch:图像的处理的上采样和下采样
在pytorch中封装了上采样和下采样的方法,我们可以使用封装好的方法可以很方便的完成采样任务,采样分为上采样和下采样。原创 2025-04-23 23:21:58 · 655 阅读 · 0 评论 -
每天五分钟深度学习PyTorch:0填充函数在搭建神经网络中的应用
在深度学习中,神经网络的搭建涉及对输入数据、权重矩阵以及中间计算结果的处理。masked_fill 是 PyTorch 等深度学习框架中常用的张量操作函数,它通过布尔掩码(mask)对张量中的指定元素进行填充。当将矩阵元素填充为 0 时,masked_fill 在神经网络中发挥着重要作用,主要体现在屏蔽无效信息、实现注意力机制、处理序列数据、优化计算效率以及增强模型鲁棒性等方面。原创 2025-04-19 22:49:40 · 530 阅读 · 0 评论 -
每天五分钟深度学习PyTorch:RNN CELL模型原理以及搭建
RNN Cell(循环神经网络单元)是循环神经网络(RNN)的核心组成部分,用于处理序列数据中的每个时间步,并维护隐藏状态以捕获序列中的时间依赖关系。原创 2025-04-15 23:28:07 · 389 阅读 · 0 评论 -
每天五分钟玩转深度学习PyTorch:搭建LSTM算法模型完成词性标注
本文通过LSTM算法模型来解决一个实际问题,也就是如何使用LSTM完成词性预测,下面我们搭建两个模型,一个是单词级别的,另外一个是字母级别的,大概的步骤就是,字母级别的LSTM将每个单词的字母作为输入,然后取最后一个时刻作为整个单词的表示,然后将文本中所有的单词的表示stack组合构成最终的文本向量表示,然后和文本数据经过embedding层编码的向量表示cat起来,共同输入到单词级别的LSTM中,然后完成最终的词性预测。这里看起来可能有些模糊,下面我们通过实例来看一下模型是怎么搭建和训练的。原创 2025-04-10 23:39:30 · 386 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:搭建LSTM完成时间序列的预测
数据集如图所示,其中有一列是时间,然后还有一列是对应时间的起飞航班数,它可以看成是一个时间序列,通过前面t时间的起飞航班数,然后预测t+1时刻的起飞航班数这个数据集我们可以看成是序列数据,因为当前月份的飞机流量肯定和前面几个月的飞机流量有关系,当我们将其看成是序列数据的时候,我们就可以使用序列模型来完成这个任务了。本例中一共有144个月份的数据,我们将两个月的数据作为样本的特征x1、x2,然后将第三个月的数据作为样本的标签y。原创 2025-04-06 22:22:55 · 837 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:搭建LSTM完成手写字体识别任务?
前面我们学习了LSTM的搭建,我们也学习过很多卷积神经网络关于手写字体的识别,本文我们使用LSTM来完成手写字体的识别。原创 2025-04-05 22:54:26 · 351 阅读 · 0 评论 -
每天五分钟深度学习框架PyTorch:梯度裁剪解决RNN梯度爆炸的问题
在循环神经网络训练的过程中,有时候很容易出现梯度爆炸的情况,如果出现这种问题,我们应该怎么办?本文先来分析一下为什么会出现这种情况,然后我们在给出解决方案。原创 2025-03-26 22:55:09 · 212 阅读 · 0 评论 -
每天五分钟深度学习框架PyTorch:获取循环神经网络RNN模型的参数
前面我们学习了RNN、LSTM、GRU的搭建,我们知道LSTM的参数维度是RNN的4倍,额案后GRU的参数的维度是RNN的3倍,本文我们看一下如何获取循环神经网络RNN模型的参数。原创 2025-03-24 23:19:23 · 409 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:基于pytorch搭建循环神经网络RNN
我们前面介绍了循环神经网络RNN,主要分析了它的维度信息,其实它的维度信息是最重要的,一旦我们把维度弄清楚了,一起就很简单了,本文我们正式的来学习一下,如何使用pytorch搭建循环神经网络RNN。原创 2025-03-18 22:57:19 · 1598 阅读 · 0 评论 -
每天五分钟深度学习PyTorch:循环神经网络RNN的计算以及维度信息
然后此时wxh的维度为[30,100],然后ht的维度为[3,30],然后whh的维度为[30,30],然后ht的维度为[3,30]这就是说明,我们构建RNN网络模型的时候,需要知道以下的几个维度seq_len,batch,feature_len,hidden,其中构建网络模型的时候,我们需要指定模型需要接收的每个词的feature_len,然后还有hidden_len。原创 2025-03-17 22:31:00 · 416 阅读 · 0 评论 -
每天五分钟深度学习PyTorch:为什么需要循环神经网络RNN?
前面我们学习了卷积神经网络CNN,以及如何使用pytorch搭建卷积神经网络CNN,本文我们学习如何使用循环神经网络RNN。原创 2025-03-14 21:00:15 · 550 阅读 · 0 评论 -
每天五分钟深度学习框架PyTorch:算法模型的保存和加载(CPU和GPU)
我们前面学习了模型的训练,比如线性回归,全连接神经网络,各种经典的卷积神经网络,模型训练完成之后,我们如何将训练的模型保存起来,然后方便之后的使用。pytorch已经封装好了相关的api,下面我们对此进行介绍。原创 2025-03-13 23:28:44 · 633 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:常见神经网络层的维度信息总结
我们可以看到这个实例,当batch=1的时候,神经网络的输出维度为[1,10],然后tag的维度为[1],这两个要计算损失。构建训练数据的时候,样本特征为[[样本1],[样本2],[样本3]],它的shape为[样本数,每个样本的特征数]样本特标签tag为[标签1,标签2,标签3...],它的shape为[样本数][torch.tensor([[1,1]])]这样的shape=[1]torch.tensor([[1,1]])这样的shape=[1,1]卷积神经网络接收[batch,通道数,长,宽]原创 2025-03-12 23:00:33 · 555 阅读 · 0 评论 -
每天五分钟深度学习框架PyTorch:ResNet算法模型完成CAFIR十分类
在之前的课程中我们对残差块以及ResNet模型进行了详细的介绍,并且我们对模型训练这些基础的数据集进行了详细的使用,我们只需要加载好模型,然后将数据以特定的格式输入到模型中,此时前向传播完成,然后将前向传播的输出和真实的标签计算交叉熵损失,然后进行反向传播。至此一段训练完成,经过多次训练之后,最终完成模型的训练,最终我们将训练曲线画出来。原创 2025-03-11 23:36:28 · 253 阅读 · 0 评论 -
每天五分钟深度学习框架PyTorch:使用残差块快速搭建ResNet网络
前面我们使用pytorch搭建了残差块,本文我们更进一步,我们使用残差块搭建ResNet网络,当学会如何搭建残差块之后,搭建ResNet就会非常简单了,因为ResNet就是由多个残差块组成的。原创 2025-03-09 22:39:05 · 245 阅读 · 0 评论 -
每天五分钟深度学习pytorch:基于Pytorch搭建ResNet模型的残差块
这就是残差块的搭建,关键点在于将F(x)和下的维度对齐,不然不能相加,当前上面的残差块是一种方式,我们只设置了1和2的步长选择,卷积核大小只有3,这个都是可以按照自己的需求调节的,总的来说就是无论怎么调整,都要保证F(x)和x的维度一致。原创 2025-03-09 22:26:12 · 160 阅读 · 0 评论 -
每天五分钟深度学习PyTorch:向更深的卷积神经网络挑战的ResNet
ResNet大名鼎鼎,它是由何恺明团队设计的,它获取了2015年ImageNet冠军,它很好的解决了当神经网络层数过多出现的难以训练的问题,它创造性的设计了跳跃连接的方式,使得卷积神经网络的层数出现了大幅度提升,设置可以达到上千层,可以说resnet对于网络模型的设计具有深远的意义。原创 2025-03-08 22:24:56 · 1258 阅读 · 0 评论 -
每天五分钟玩转深度学习PyTorch:基于GoogLeNet完成CAFIR10分类
前面我们终于使用pytorch搭建了GoogLeNet,本文我们使用该网络模型解决一个实际问题,也就是使用它完成CAFIR10分类,其实就这些任务而言,我们只要搭建好模型,然后把数据喂进去就行了,其它的地方都是一样的,就是网络模型不一样。原创 2025-03-07 21:17:44 · 656 阅读 · 0 评论 -
每天五分钟深度学习pytorch:使用Inception模块搭建GoogLeNet模型
前面我们学习了Incetption模块,它的作用类似于vgg块对于VGG网络模型一样,本文我们使用Inception搭建GoogLeNet网络,如果使用卷积层开始从头开始搭建GoogleNet,那么这样看起来会很不清晰,我们使用已经封装好的Inception来搭建GoogLeNet网络。原创 2025-02-23 22:04:24 · 292 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:搭建谷歌的Inception网络模块
前面我们学习了VGG,从现在开始我们将学习谷歌公司推出的GoogLeNet。当年ImageNet竞赛的第二名是VGG,而第一名就是GoogLeNet,它的模型设计拥有很多的技巧,这个model证明了一件事:用更多的卷积,更深的层次可以得到更好的结构。原创 2025-02-16 00:00:01 · 457 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:搭建谷歌的Inception网络模块
前面我们学习了VGG,从现在开始我们将学习谷歌公司推出的GoogLeNet。当年ImageNet竞赛的第二名是VGG,而第一名就是GoogLeNet,它的模型设计拥有很多的技巧,这个model证明了一件事:用更多的卷积,更深的层次可以得到更好的结构。原创 2025-01-24 17:46:42 · 825 阅读 · 0 评论 -
每天五分钟深度学习pytorch:基于VGG神经网络完成CAFIR10的识别
前面的所有模型我们都是使用VGG跑了mnist数据集,本次我们换一个数据集,我们使用CAFIR数据集,这个数据集我们前面介绍过,它和mnist不一样了,mnist是灰度图,这个是彩色图,所以它的通道数是3,这样我们再构建卷积神经网路的时候,第一个卷积层的输入通道数就应该是3而不是1了。原创 2025-01-23 22:22:09 · 552 阅读 · 0 评论 -
每天五分钟深度学习pytorch:基于VGG神经网络完成手写字体识别
return x。原创 2025-01-16 23:18:54 · 65 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:基于vgg块搭建VGG卷积神经网络
我们可以看到我们将shape为[2,3,224,224]的输入到VGG16中,它的输出为[2,10],2是batch-size,而10是10分类。return nn.Sequential(*net)#*net是不要列表只要列表中的元素。文字版看着不舒服可以私信我获取源py文件。原创 2025-01-15 23:13:58 · 348 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:快速搭建VGG网络的基础模块VGG块
卷积层什么的没有必要非得定义在类里面,定义在类里面只是为了调用方便,我们可以直接定义一个卷积层,就可以直接使用,或者定义很多卷积层还有激活层,这样可以使用sequential来将它们组合起来。原创 2025-01-13 23:49:47 · 364 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:越来越深的卷积神经网络模型VGG
前面我们使用pytorch搭建了卷积神经网络LeNet-5,AlexNet,本文我们学习卷积神经网络VGG,VGG相比于前面的两个神经网络而言比较深,我们知道网络模型越深那么就难以训练,但是VGG效果比较好。Vgg使用了更小的滤波器,同时使用了更深的网络结构,AlexNet只有8层网络结构,但是VGG有16到19层,它一般使用3*3的卷积过滤器,还有2*2的最大池化层,它之所以使用很小的滤波器是因为小的滤波器的感受野和一个大的滤波器的感受野是相同的,但是小的滤波器能够有效的减少参数的数量。原创 2024-12-29 14:34:42 · 219 阅读 · 0 评论 -
每天五分钟深度学习pytorch:基于AlexNet模型完成手写字体识别
前面我们学习了LeNet的搭建,本文我们学习AlexNet网络模型的搭建,然后使用它跑一遍手写字体识别的项目。原创 2024-12-15 22:10:36 · 583 阅读 · 0 评论 -
每天五分钟深度学习pytorch:基于LeNet算法模型完成手写字体识别
LeNet是我们要介绍的第一个经典的卷积神经网络模型,它是一种用于手写体字符识别的非常高效的卷积神经网络。它是卷积神经网络的祖师爷LeCun在1998年提出,它将CNN的最基本的架构就定下来了:卷积层、池化层、全连接层。原创 2024-12-14 21:31:16 · 262 阅读 · 0 评论 -
每天五分钟深度学习pytoch:卷积神经网络比全连接神经网络强在哪
卷积神经网络CNN是一种前馈神经网络,其特点是每层的神经元结点只响应前一层局部区域范围内的神经元。一个深度卷积神经网络的模型通常由若干卷积层叠加若干全连接层组成,当然中间页存在各种由激活函数构成的非线性操作以及池化操作。如何训练卷积神经网络呢?同样使用反向传播算法来完成模型的训练任务,相比较于其它的网络模型,卷积神经网络的参数共享特性使得需要优化的参数数目大量的缩减了,这样提升了模型的训练效率以及可扩展性。原创 2024-12-09 23:00:37 · 78 阅读 · 0 评论 -
每天五分钟深度学习pytorch:可视化神经网络训练损失函数图像
我们希望训练的时候损失函数是降低的,一种好的办法就是通过画图的方式来将其可视化,这样效果比较好,其实这个很简单,只需要在训练过程中将训练损失和测试损失存储下来,然后使用matplotlib来绘图。原创 2024-12-06 23:25:59 · 639 阅读 · 0 评论 -
每天五分钟深度学习PyTorch:搭建卷积神经网络完成手写字体识别
前面的一篇文章我们学习了使用pytorch搭建卷积神经网络,本文我们使用刚刚搭建的卷积神经网络完成手写字体识别的任务手写字体识别是之前进行介绍过的常用的数据集了,然后卷积神经网络如何搭建前面已经进行介绍了,下面我们将再详细的介绍一下如何使用卷积神经网络完成手写字体识别。原创 2024-11-29 23:57:39 · 610 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:卷积神经网络的搭建
从本文开始我们将开启卷积神经网络的搭建了,卷积神经网络网络是深度学习中基础的算法模型之一,但是这里我们从实战为主,我们并不会对卷积神经网络详细的介绍,如果不懂得可以看我得《每天五分钟计算机视觉》专栏。原创 2024-11-26 23:52:44 · 846 阅读 · 0 评论 -
每天五分钟深度学习框架pytorch:神经网络模型的参数初始化操作
其实如果我们使用pytorch封装好的网络层的时候,我们并不需要对模型的参数初始化,因为这些都是pytorch帮助我们完成的,但是如果我们自己搭建模型(不使用pytorch中的封装好的网络层)或者对pytorch中封装好的模型初始化参数不满意,那么此时我们对模型进行参数初始化。原创 2024-11-22 00:07:33 · 656 阅读 · 0 评论 -
每天五分钟深度学习pytorch:批归一化全连接网络完成手写字体识别
前面我们学习了普通的全连接神经网络,后面我们学习了带有激活层的全连接神经网络,本文我们继续进一步升级,我们学习带有批归一化的全连接神经网络,批归一化可以加快神经网络的训练速度,减少过拟合,具体它的原理,大家可以看我们的《每天五分钟深度学习》专栏,这里就不再详细的介绍了,下面先看一下是如何搭建模型的。原创 2024-11-18 23:47:55 · 317 阅读 · 0 评论 -
深度学习PyTorch极简入门:带有激活层的全连接神经网络识别数字
前面我们学习了简单的全连接神经网络,之所以说他简单的原因是我们只是使用了全连接层的堆叠,本文中我们更近一步,我们在层与层之间我们使用激活函数,来看一下这样的神经网络是如何堆叠的。原创 2024-11-17 21:52:46 · 342 阅读 · 0 评论