深度学习
文章平均质量分 81
daimashiren
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
通俗理解CNN感受野的计算方法
现在要计算输出的这个特征图上的每个点对应输入的6x6的图像上多大范围的像素点(感受野)。很直观的,输出的2x2图像上每个点来自于中间特征图的3x3区域。图片来自于https://paddlepedia.readthedocs.io/en/latest/tutorials/CNN/convolution_operator/Convolution.html。因此我们得到输出的2x2的特征图上的点对应于原始特征图上5x5范围的像素点,即感受野为5x5。那么中间的特征图上点影响多大范围的来自第一个特征图像素点?原创 2023-05-03 20:42:07 · 1374 阅读 · 1 评论 -
搭建Pytorch 和 Tensorflow v1 兼容的环境
Github 上很多大牛的代码都是Tensorflow v1 写的,比较新的文章则喜欢用Pytorch,这导致我们复现实验或者对比实验的时候需要花费大量的时间在搭建不同的环境上。这篇文章是我经过反复实践总结出来的环境配置教程,亲测有效!原创 2022-10-30 22:06:57 · 2139 阅读 · 0 评论 -
Pytorch 计算模型复杂度 (Params 和 FLOPs)
Pytorch 计算模型复杂度 (Params 和 FLOPs)原创 2022-10-17 12:32:41 · 3073 阅读 · 0 评论 -
理解Separable Convolution
普通Convolution layer 会构造输入图像的各通道加权值 N 次得到N 维的feature map 输出 (卷积核的数量,也就是输出的feature map的维度) ;而Separable Convolution layer 只构造输入图像各通道加权值1 次(Depwise Convolution),然后用不同的比例 (权值) 构造feature map N次得到N 维的feature map 输出 (PointWise Convolution)......原创 2022-07-17 17:47:23 · 348 阅读 · 0 评论 -
通俗理解深度学习梯度累加(Gradient Accumulation)的原理
首先你得明白什么是梯度,可以看我之前写的一篇博客 :微分与梯度的概念理解本质上,梯度是一种方向导数,是一个矢量,因此这里的梯度累加并不是简单的相加,而是类似于初高中物理学的力的合成,梯度作为一种方向导数(矢量)的其累加的效果就是将各个小的梯度合成为一个指向Loss function 最终优化方向的梯度。这里结合代码理解一下:正常训练的过程for i, (images, labels) in enumerate(train_data): # 1. forwared 前向计算 ou原创 2022-05-28 12:35:20 · 3535 阅读 · 6 评论 -
Tensorflow 1.x 和 Pytorch 中 Conv2d Padding的区别
Pytorch中Conv2d的Padding可以是整数,二元组,字符串三种形式。整数(int)。如果输入的padding为整数则代表在 上,下,左,右 四个方向都充填一样数量的0或者由padding_mode 确定的padding类型。二元组(tuple)。如果输入的padding 为二元组(padding[0],padding[1]),则padding[0]代表上下两个方向的padding大小,padding[1]则代表左右两个方向的padding大小。字符串(str)。字符串模式可选参数为原创 2022-03-24 13:25:13 · 2418 阅读 · 0 评论 -
TensorFlow v1 入门教程
目录Tensor计算图Eager modeTensorboardSave and Restore模型保存模型恢复tensorflow v2 版本现在已经全面用keras 封装了,运行时甚至都不用显式地建立计算图,然后再调用session.run() 了,对刚入门人工智能的人来说很是友好了。但是我想说,github上,包括很多以前大牛们的论文的代码实现不都还是用的v1 版本的tensorflow 写的吗???连tensorflow 的session 都抛弃了,让人读大牛们的论文的时候那叫一个抓狂,所以下定决翻译 2022-03-23 17:26:32 · 2173 阅读 · 4 评论 -
理解WGAN 和 Spectral Normalization(归一化)
传统的Gan存在的问题传统的判别器损失maxD V(D,G)=Ex∼Pr(x)[log D(x)]+Ez∼Pg (x)[log(1−D(x))](1)\hspace{2em}\mathop{max}\limits_{D}\space V(D,G) = \mathbb{E}_{x\sim P_{r}(x)}[log\space D(x)] + \mathbb{E}_{z \sim P_g \space (x)}[log(1-D(x))] \hspace{4em}(1)原创 2022-03-09 12:12:32 · 1302 阅读 · 0 评论 -
理解原始Gan Loss 和 Hinge Gan Loss
原始Gan LossminG maxD V(D,G)=Ex∼Pdata[log D(x)]+Ez∼Pz (Z)[log(1−D(G(Z)))]\mathop{min}\limits_{G}\space \mathop{max}\limits_{D}\space V(D,G) = E_{x\sim P_{data}}[log\space D(x)] + E_{z \sim P_z \space (Z)}[log(1-D(G(Z)))]Gmin Dmax原创 2022-03-04 16:16:02 · 6904 阅读 · 4 评论 -
详解pytorch fold和unfold用法
先上结论,conv = unfold + matmul + fold. 即卷积操作等价于,先unfold(展开),再执行矩阵乘法matmul,然后再fold(折叠)。具体过程如下:unfold函数将一个输入Tensor(N,C,H,W) 展开成 (N,C * K1 * K2, Blocks),其中kernel形状为(K1,K2),总的Block数为Blocks。即把输入的Tensor根据kernel的大小展开成Blocks个向量。Block的计算公式如下:Blocks=Hblocks×WblocksB原创 2022-02-25 14:38:39 · 4107 阅读 · 0 评论 -
微分与梯度的概念理解
微分一元函数的微分定义式如下:dy=f′(x)∗dxdy=f'(x)*dxdy=f′(x)∗dx即 垂直变化量 = 斜率(导数) * 水平变化量微分的含义:用一个线性函数的变化来逼近任意可导函数的变化梯度梯度是一个矢量,是多元函数在某一点处的偏导数构成的矢量。例如,令 z = f(x,y),则z在点p(x,y)处的梯度为 :▽f(x,y)=gradf(x,y)=(∂f∂x,∂f∂y)▽f(x,y) = gradf(x,y) = (\frac{\partial f}{\partial x原创 2022-02-21 14:26:24 · 2975 阅读 · 0 评论 -
直观理解Dilated Convolution
Dilated Convolution是一种通过增加kernel元素间距(padding 0)使得感受野增加的一种卷积方式。所谓感受野就是特征图上每个点对应原图像的像素范围。这样,在不改变kernel size(上图中的kernel size还是3x3)的情况下,增加了感受野。也可以理解为kernel size从3x3 变成了5x5(但是只有原来的3x3的位置有权值,其余位置均为0),Dilated Conv的kernel计算公式如下:k′=k+(k−1)(d−1)k'=k+(k-1)(d-1)k原创 2022-02-20 20:57:29 · 1960 阅读 · 0 评论 -
直观理解Transpose Convolution
首先,先上结论,Transpose Convolution 可以看成是在原始input的基础上做padding之后的常规Convolution. 所以常规的Convolution的计算性质也适用于Transpose Convolution.需要特别注意的是,Trans Conv中的stride和常规Conv的stride有点不太一样的是,常规Conv的stride是对kernel的移动步长,而Trans Conv的stride是对输入input元素间的间隔。常规的Conv 以及其对应的Trans Conv原创 2022-02-20 13:32:03 · 1409 阅读 · 0 评论 -
KL散度与交叉熵概念辨析
KL散度深度学习中,常用KL散度衡量两个数据分布之间的差异,KL散度越小,则表示两个数据分布之间的差异越小。一般以 P(x) 表示样本的真实分布,Q(x)作为模型预测的分布。例如,在一个三分类任务中,x1,x2,x3分别表示猫、狗和马。若一张猫的图片的真实分布P(x)=[1,0,0],而预测分布为Q(x)=[0.7,0.2,0.1],则对应的KL散度计算如下:交叉熵在介绍交叉熵之前,首先补充一下以下重要概念:信息量设某一事件发生的概率为P(x),则其信息量表示为:...原创 2022-01-21 21:30:01 · 3999 阅读 · 0 评论
分享