深度学习课程
文章平均质量分 82
jianafeng
这个作者很懒,什么都没留下…
展开
-
注意力机制的理解笔记
序言经常会听到注意力机制,在很多应用都能落地。跟CNN,RNN(LSTM)等深度学习都是热点。而且Attention机制在机器翻译,图片描述,语音识别和文本摘要中取到很大的成功。那么Attention机制到底是怎样子的一个存在呢?现在举一个简单例子。假设输入X = [0.1, 1, 0.1, 0.2, 0.2, 0.3 0.1, 0.1, 0.1, 0.2] 而该分类的Y是1。则其实 在X的第二个特征1就很好的决定了分类Y,表明第二个特征跟Y关系大。所以我们想着能不能把第二个特征的权重提高。使用的方原创 2021-04-14 16:02:56 · 385 阅读 · 0 评论 -
深度学习课程--CNN--feature maps的visualization
序一直很好奇,CNN的N个feature maps出来的图像是怎样的图像;是怎么提取原始图像的特征。虽然知道 features map,也就是特征图,理应是跟原始图像的某一部分相似,才能有效地提取出原始图像的特征,也就是之前CNN理解文章里面关于老鼠的介绍,要提取老鼠的某一个身体形状,对应的特征图,必定是跟老鼠形状相似的特征图,才能提取处出来。即当filter和我们的原始图像的对应部分越像,它们卷积的结果就会越大,因此输出的像素点就越亮所以这次将会试着把原始图的几个layers的所有特征图可视化。看看C原创 2020-12-11 00:09:45 · 848 阅读 · 2 评论 -
深度学习课程--理解残差神经网路ResNet如何运作
这文章是理解ResNet神经网络,并且使用简单使用python实战ResNet的残差块以及其他部分。ResNet残差神经网络正如之前文章所提到,普通的神经网络,如果超过很多层,比如超过25层之后,模型的accuracy将会下降,按理说,神经网络越深,模型的效果应该越好,但是现实却是相反的情况。这可能是因为梯度消失问题所导致的。 于是有人提出残差块,在某一层中间插入多个残差块,便可以训练超过2000层的神经网络,而且效果越来越好。ResNet网络的提出,使得我们可以训练很深的神经网络,并取得不错的效果。原创 2020-12-03 03:32:14 · 428 阅读 · 0 评论 -
深度学习课程--assign3--LSTM结构的理解
LSTM(Long Short Term Memory networks)特殊的RNN的一种因为RNN能吸收前一个神经元的大部分信息,而对于远一点的神经元的信息却利用的少。这就导致了预测的不准确,比如语言文字的预测,‘我生活在中国,喜欢去旅游,而且我喜欢说。。。 ’,如果要预测喜欢说的下一个词语,那么‘中国’这个词就很重要,但这个词离预测的太远了,导致传递信息的误差大。这个问题称为 长期依赖问题。LSTM主要的特点是它可以将先前的网络信息传递至当前神经元,能够很好地解决这个问题。这是LSTM的结构图,原创 2020-12-02 01:36:00 · 347 阅读 · 0 评论 -
深度学习课程--ResNet 模型 + Inception模型的简单介绍
这里将会介绍近年来最火的模型ResNet 模型-残差神经网络(2014)ResNet 是因为对神经网络深度的观察,而提出的一个模型。之前人们观察到,为什么非常深度的网络在增加更多层的时候,表现会变差? 按直觉,越深的网络理应效果更好,或者至少不变差。假设我们已经构建了一个N层的网络,实现了一定的精度,那么在这个基础上,再建立一层,即N+1层的网络模型,按理说,应该也会有差不多的精度,但是实际上,表现会更差。所以有人提出,这是因为直接映射是难以学习的,即x–>H(x)中会损失很多信息。于是有人提出原创 2020-11-28 18:56:34 · 1272 阅读 · 0 评论 -
深度学习课程--assign3--RNN简单理解
Recurrent Neural Network - RNN为了更好地理解RNN的框架,我们将会用numpy手写RNN的各种layers。之后再用tensorflow 的keras来直接用函数定义layers。所以首先要理解RNN,RNN的简单结构我们是知道的,如下图所示,可以注意到对于多次隐层的循环,用的权值是一样的。下面将会参考这个网站提供的例子来理解 RNN的网络结构:http://iamtrask.github.io/2015/11/15/anyone-can-code-lstm/我们将会原创 2020-11-27 12:37:28 · 243 阅读 · 2 评论 -
深度学习课程--assign2--正则化
这篇文章将会简单的解释两个正则化-Dropout和Batch NormalizationDropoutDropout通常在forward函数中进行, 意思是按照一定的概率随机挑选 某些神经元作为0,也就是抛弃来一些参数,以提高效率。准确性也不怎么收到影响。概率P通常设为0.5下面Dropout的具体例子p=0.5def train_step(x): #第一层layer h h1 = np.maximum(0,np,dot(w1,x)+b1) #mask这里的意思是 随机产生h1形状的数值原创 2020-11-16 17:40:40 · 270 阅读 · 0 评论 -
深度学习课程--assign2--optimizer优化器
梯度更新的算法SGD梯度更新知识点:随机梯度算法是基于梯度下降算法产生的假设在regression problem中:hθ(x)=θ0+θ1x1+θ2x2+...+θnxnh_{\theta}(x) = \theta _0 + \theta _1 x_1 + \theta _2 x_2 + ... + \theta _n x_n hθ(x)=θ0+θ1x1+θ2x2+...+θnxn计算函数的损失函数cost- J(θ)J(\theta)J(θ)J(θ)=12∑i=1n(hθ(x原创 2020-11-16 16:08:14 · 212 阅读 · 0 评论 -
深度学习课程-assign2-CNN作业与理解
知识点理解知识点部分参考网上资料来源 - 他们解释的简单易懂,生动形象。https://zhuanlan.zhihu.com/p/42559190https://www.shuzhiduo.com/A/A7zge6ek54/还有官网CNN的介绍:https://adeshpande3.github.io/adeshpande3.github.io/A-Beginner%27s-Guide-To-Understanding-Convolutional-Neural-Networks/图片与滤波器f原创 2020-11-15 17:56:33 · 414 阅读 · 1 评论