人工智能/深度学习/机器学习
随风秀舞
这个作者很懒,什么都没留下…
展开
-
深度学习中的梯度消失、梯度爆炸问题的原因以及解决方法
本文简要介绍梯度消失 (gradient vanishing) 和梯度爆炸 (gradient exploding) 问题,并给出一些可行的解决方法。神经网络在更新参数的过程中,使用反向传播 (Backpropagation) 算法求得各层网络的梯度,可以看作是神经网络式的链式法则。反向传播过程是导致梯度消失和梯度爆炸问题的主要原因,而且随着网络的深度增加,这些问题越发明显。深度神经网络在解决...原创 2019-04-10 16:01:35 · 9943 阅读 · 3 评论 -
GAN生成对抗网络:数学原理
文章目录1. 极大似然估计2. 相对熵,KL散度3. KL散度与交叉熵的关系4. JS散度5. GAN 框架判别器的损失函数生成器的损失函数1. 极大似然估计GAN用到了极大似然估计(MLE),因此我们对MLE作简单介绍。MLE的目标是从样本数据中估计出真实的数据分布情况,所用的方法是最大化样本数据在估计出的模型上的出现概率,也即选定使得样本数据出现的概率最大的模型,作为真实的数据分布。将...原创 2019-05-31 23:08:16 · 1264 阅读 · 1 评论 -
CNN中感受野Receptive Field的计算
1. 感受野The receptive field is defined as the region in the input space that a particular CNN’s feature is looking at (i.e. be affected by).感受野是在输入空间内,CNN提取的特征的来源区域的大小。感受野可以用其中心位置和尺寸来描述。在一个感受野内,越靠近中...原创 2019-05-17 23:56:55 · 742 阅读 · 0 评论 -
深度学习中的优化算法
如何确定mini-batch的大小?64, 128, 256, 。。。。。。数据大小适应CPU / GPU内存的大小Exponentially weighted averagesvt=βvt−1+(1−β)θtv_t = \beta v_{t-1} + (1-\beta) \theta_tvt=βvt−1+(1−β)θtθt\theta_tθt是原始数据,vtv_tvt是构造的...原创 2019-05-26 19:38:47 · 184 阅读 · 0 评论 -
深度学习的一些知识点总结
当training set和test set数据分布不一致时,保证validate set和test set数据分布一致High bias? 增大加深网络。Large and deep。High variance?找更多训练数据,regularization增大加深网络,同时增大训练集数据量,总是可取的。Regularization:L2 平方和, 对矩阵是Frobenius N...原创 2019-05-19 00:03:16 · 338 阅读 · 0 评论 -
Conv2d反向传播梯度的计算过程
我们用一个例子来说明:令x∗w=yx*w=yx∗w=y并且x=[x11x12x13x21x22x23x31x32x33],w=[w11w12w21w22],y=[y11y12y21y22]x=\begin{bmatrix}x_{11} & x_{12} & x_{13}\\x_{21} & x_{22} & x_{23}\...原创 2019-05-05 14:10:07 · 1545 阅读 · 0 评论 -
卷积神经网络CNN的反向传播算法推导
文章目录1. 全连接层2. 池化层3. 卷积层4. 参考资料1. 全连接层与深度神经网络DNN的反向传播算法一致,辅助变量:{δL=∂J∂zL=∂J∂aL⊙σ′(zL)δl=(Wl+1)Tδl+1⊙σ′(zl)\left\{\begin{aligned}&\delta^L = \frac{\partial J}{\partial z^L} = \frac{\partial ...原创 2019-04-19 20:10:09 · 909 阅读 · 0 评论 -
上采样和反卷积 Up-sampling and Transposed Convolution (Deconvolution)
文章目录1. 卷积操作2. 卷积矩阵3. 反卷积4. 反卷积矩阵5. 总结参考文献使用反卷积(Transposed Convolution)来进行上采样操作,不需要借助插值方法,并且可以提供能够学习的参数。反卷积在DCGAN和图像的语义分割网络中,有很重要的应用。1. 卷积操作我们用一个简单的例子来介绍卷积的计算过程。如下图所示,用一个3x3的卷积核对一个4x4的矩阵进行卷积操作,步长为1...原创 2019-05-03 21:47:28 · 2596 阅读 · 0 评论 -
数据扩增方法 Data Augmentation
1. Common methodsmirroring 镜像水平翻转random cropping 随机裁切rotationshearinglocal warping2. Color shifting给R、G、G颜色分量增加不同的权重,例如R+20, G-20, B+20等等PCA color augmentation (AlexNet paper)...原创 2019-05-01 21:46:22 · 1433 阅读 · 0 评论 -
Logistic Regression逻辑回归的一些知识点
关于Logistic Regression的一些知识点:为什么损失函数不用平方误差:L=12∑i(y^−y)2L = \frac{1}{2}\sum_i(\hat{y}-y)^2L=21i∑(y^−y)2答:这样的损失函数不是凸的,梯度下降法会陷入局部最小值。...原创 2019-04-18 00:51:08 · 327 阅读 · 0 评论 -
1x1的卷积及其作用
本文将解决如下问题:1x1的卷积有什么作用?为什么要用1x1的卷积?文章目录1x1卷积可以扩增或减少数据实例:1x1卷积用于降低参数的数量 图1:左::3x3卷积;右:1x1卷积1x1卷积可以扩增或减少数据1x1的卷积核,也被称作网中网(Network in Network)。图1中右图显示的数据的channel是1,此时1x1卷积只是把原始数据乘以一个倍数(...原创 2019-04-14 01:38:44 · 3989 阅读 · 0 评论 -
l1约束比l2约束更容易获得稀疏解
本文内容受到了知乎相关问题的启发,本人做了一些整理和补充。l1l_1l1和l2l_2l2约束将损失函数L(w)L(w)L(w)看作参数www的函数,则l1l_1l1约束的形式是:(1)L=L(w)+λ∥w∥1L = L(w) + \lambda\left\Vert w\right\Vert_1 \tag{1}L=L(w)+λ∥w∥1(1)l2l_2l2约束的形式是:(2)L=L...原创 2019-04-21 17:41:43 · 1615 阅读 · 0 评论 -
循环神经网络RNN的前向传播与反向传播
文章目录1. RNN模型2. RNN的前向传播3. RNN的反向传播1. RNN模型2. RNN的前向传播对于当前的索引号ttt,隐藏状态hth^tht由xtx^txt和ht−1h^{t-1}ht−1共同得到:(1)ht=tanh(Uxt+Wht−1+b)h^t = \tanh(Ux^t+Wh^{t-1}+b) \tag{1}ht=tanh(Uxt+Wht−1+b)(1)其中选用了t...原创 2019-04-21 14:50:56 · 1688 阅读 · 1 评论 -
交叉熵的反向传播梯度推导(使用softmax激活函数)
设标签yk=1y_k=1yk=1,也即xkx_kxk对应的第kkk类的标签为1,则交叉熵损失函数为:(1)J=−∑j=1NyjlogajL=−logakLJ = -\sum_{j=1}^Ny_j\log a_j^L = -\log a_k^L \tag{1}J=−j=1∑NyjlogajL=−logakL(1)其中NNN是分类的类别数目。softmax激活函数的表达式为:(...原创 2019-04-21 01:20:23 · 8390 阅读 · 0 评论 -
PyTorch 中的交叉熵函数 CrossEntropyLoss 的计算过程
CrossEntropyLoss() 函数联合调用了 nn.LogSoftmax() 和 nn.NLLLoss()。假设网络得到的输出为 hhh,它的维度大小为 B×CB\times CB×C,其中 BBB 是 batch_size,CCC 是分类的总数目。与之对应的训练数据的标签 yyy 维度是 1×B1\times B1×B,yyy 中元素的取值范围是 [0,C−1][0, C-1][0,C...原创 2019-04-09 15:36:44 · 10243 阅读 · 4 评论 -
Batch Normalization 批标准化及其相关数学原理和推导
数据经过一层层网络之后,输出的数据分布会发生变化,此现象称为Internal Covariate Shift,会给下一层的网络学习带来困难。直接对每一层做归一化是不合理的如果将每一层的输出都归一化为标准正态分布,均值为0,方差为1,会导致网络完全学习不到输入数据的特征,因为所有的特征都被归一化了。Batch Normalization的步骤求出整个batch数据的均值:μb=1m∑i=...原创 2019-04-12 01:17:42 · 963 阅读 · 0 评论 -
理解 softmax 和 NLL 损失函数 (the negative log-likelihood) 以及求导过程
本文转载自 https://ljvmiranda921.github.io/notebook/2017/08/13/softmax-and-the-negative-log-likelihood/有空了再翻译一下吧。文章目录Softmax Activation FunctionIn this notebook I will explain the softmax function, its ...转载 2019-04-08 17:23:53 · 10003 阅读 · 0 评论 -
详解最大似然估计(MLE)、最大后验概率估计(MAP),以及对贝叶斯公式的理解
本文目录详解最大似然估计(MLE)、最大后验概率估计(MAP),以及对贝叶斯公式的理解概率和统计是一个东西吗?贝叶斯公式到底在说什么?贝叶斯公式就是在描述,你有多大把握能相信一件证据?(how much you can trust the evidence)似然函数最大似然估计(MLE)最大后验概率估计最大似然估计和最大后验概率估计的区别详解最大似然估计(MLE)、最大后验概率估计(MAP),以...转载 2019-04-08 17:12:55 · 252 阅读 · 0 评论 -
k折交叉验证 k-fold cross-validation
文章目录k折交叉验证k值的确定实例使用scikit-learn进行交叉验证交叉验证是用来评估机器学习方法的有效性的统计学方法,可以使用有限的样本数量来评估模型对于验证集或测试集数据的效果。k折交叉验证参数kkk表示,将给定的样本数据分割成kkk组。k=10k=10k=10时,称为10折交叉验证。流程如下:将数据集随机打乱。Shuffle the dataset randomly.将数...翻译 2019-06-15 16:32:03 · 9263 阅读 · 1 评论