![](https://img-blog.csdnimg.cn/cc754ece08b74c02bdd5a44908f7570f.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
深度学习实践
文章平均质量分 69
从零开始介绍深度学习算法和代码实现
EP Fitwin
我必须承认 生命中大部分时光是属于孤独的, 努力成长 是在孤独里可以进行的最好的游戏。
展开
-
经典CNN及PyTorch实现
许多现代卷积神经网络的研究都是建立在这些基础上的,包括:AlexNet。它是第一个在大规模视觉竞赛中击败传统计算机视觉模型的大型神经网络;使用重复块的网络(VGG)。它利用许多重复的神经网络块;网络中的网络(NiN)。它重复使用由卷积层和 1×1 卷积层(用来代替全连接层)来构建深层网络;含并行连结的网络(GoogLeNet)。它使用并行连结的网络,通过不同窗口大小的卷积层和最大汇聚层来并行抽取信息;残差网络(ResNet)。它通过残差块构建跨层的数据通道,是计算机视觉中最流行的体系架构。原创 2021-12-19 17:10:29 · 3827 阅读 · 1 评论 -
图像超分辨率[CVPR2016]-VDSR-PyTorch代码复现
图像超分辨率[CVPR2016]-VDSR-PyTorch代码复现前言:跑源码遇到的问题PSNR(图像峰值信噪比)vdsr.py中参数对卷积参数的初始化用91张图片数据集训练的结果后记:前言:Implementation of CVPR2016 Paper: “Accurate Image Super-Resolution Using Very Deep Convolutional Networks”(http://cv.snu.ac.kr/research/VDSR/) in PyTorch论文原作原创 2021-11-19 22:31:20 · 8630 阅读 · 36 评论 -
深度学习初学者,如何下载常用公开数据集并使用呢?
深度学习初学者,如何下载常用公开数据集并使用呢?1.前言2.官方文档怎样看3.动手写代码4.如何可视化1.前言刚开始进行深度学习的时候,难免要用到一些公开数据集,现在闲来无事,记录一下如何快速下载一些经典数据集。通过官方文档学习,是一些大牛们挂在嘴边经常推荐的方法,那么我们本篇博客就从官方文档开始学习。因为我是做CV方向的,所以用TorchVision这个库举例。来自官网:This library is part of the [PyTorch](http://pytorch.org/) projec原创 2021-11-13 10:13:30 · 9065 阅读 · 0 评论 -
深度学习实践 加载数据集
一、加载数据集全部数据:Batch 最大化利用向量的优势,提升计算速度(利用CPU GPU的并行计算能力)随机梯度下降:mini-batch 只用一个样本,有较好的随机性首先区分了Epoch(前馈、反馈和更新实现一次就是Epoch) \ Batch-Size(进行一次训练所用的样本数量)\ Iterations(内层迭代进行的次数 sum/Batch-size)shuffle用来打乱数据集中数据的顺序,然后通过Loader将数据划分成mini-batch。DataSet是抽象类,不能实例化对原创 2021-10-30 20:33:52 · 1202 阅读 · 0 评论 -
深度学习实践 处理多维特征的输入
这里写目录标题一、处理多维特征的输入二、代码:一、处理多维特征的输入多维数据的 行:record 列:feature当输入x变成n维的向量,让其和n维的权重w作内积,内积之后转置。广播:Python/Numpy中的矩阵向量的广播(Broadcasting)特性矩阵和向量:self.linear = torch.nn.Linear(8, 2) 可以将8维的输入进行空间维度变换,成为2维的输出。每次空间压缩,需要引入σ(激活函数),进行非线性的空间变换。变换的维度和层数,决定了网络的复杂程原创 2021-10-29 21:58:06 · 1484 阅读 · 0 评论 -
深度学习实践 Logistic实现二分类(解决代码报错问题)
逻辑斯蒂回归(分类问题)一、概念:二、代码:实验结果截图:三、问题:四、可视化:一、概念:对于之前的线性问题转化成分类问题:如果不再预测学习4小时可以得到的成绩,而是判断学习4小时是否可以通过考试。线性回归模型的模型和损失:那么,分类问题如何将结果映射到[0,1]呢?引出了sigmoid函数,将y带入x即可。计算某输入属于某一输出的概率的最大值。σ函数:保证输出值在0~1之间损失函数称为:BCE Loss(Cross Entropy 交叉熵)二、代码:import torch原创 2021-10-29 10:50:06 · 1023 阅读 · 6 评论 -
深度学习实践 用PyTorch带你逐步实现线性回归
目录用PyTorch实现线性回归一、准备数据集:二、设计模型 构造计算图三、构造Loss和Optimizer四、训练迭代代码:用PyTorch实现线性回归本文的内容为用PyTorch完成线性模型,包括:如何构造自己的神经网络如何构造损失函数如何构造随机梯度下降的优化器使用PyTorch解决问题的四步:准备数据集设计模型,计算y_pred构造Loss、optimizer(损失函数和优化器)Training cycle(前馈 -> 反馈 -> 更新)forward:算原创 2021-10-28 20:44:04 · 1659 阅读 · 0 评论 -
深度学习实践 反向传播算法(在图上进行梯度传播非常重要的算法)
文章目录Back Propagation知识代码:Back Propagation知识w.item(): 可以直接将梯度变成标量w.data: 取数值进行计算 不会构建计算图w.zero_(): 释放数值 对其清零计算过程可以看作在图上进行梯度传播训练的目的:使Loss取更新。计算Loss对w的导数,对w进行更新。因为目标不是y_pred取最小,而是使损失Loss取最小。如何将复杂的网络看成图,在图上传播梯度,根据链式法则求出梯度。(反向传播:Back propagation)W:权重矩原创 2021-10-28 10:28:46 · 1269 阅读 · 2 评论 -
深度学习实践 梯度下降算法(最常用的基础算法)
梯度下降算法对w向梯度的负方向更新,α表示学习率,这样可使得每次都朝着下降最快的方向移动。梯度下降对于非凸函数只能找到局部最优,很难找到全部最优(没有一个点的函数值比它小的点)原创 2021-10-27 19:24:12 · 2287 阅读 · 5 评论