网络结构-组件-AI(九)

深度学习网络组件

RNN

循环神经网络(recurrent neural network)
主要思想: 即将整个序列划分成多个时间步,将每一个时间步的信息依次输入模型,同时将模型输出的结果传给下一个时间步。

说人话: 将一句话,划分为一个个的字或者词;然后将这句话拆分的字,一个个的按照顺序输入进行计,从第一个字开始计算的结果加入到第二个字的计算中,依次类推,最后一个字计算完成时,我们认为它包含了前面所有字的特征信息。

举例: "你个扑该!" 就会拆分成五份,先将"你"进行计算,得到结果,然后加入"个",进行计算;最后计算完成"!"时,得到的值,我们认为已经包含前面整句话的特征语义了。

公式讲解

RNN的计算公式如下图:

释义:

1.tanh是激活函数

2.其中x是输入的值,t代表次数或者步数

3.h代表计算值,t-1代表前一次,即代表前一个输入的字符的计算值

4.所以公式中可以进行计算的权重参数即为:b、W、U

计算示意图讲解


如果输入的256维,要求输出为128维,我们分析各个部分的维度情况

1.由于将句子进行拆分了,所以每一个X肯定是:1x256

2.因为输出要求128维,所以U肯定是:256x128

3.h要能够和计算值相加,所以是:1x128

4.w要和h能够相乘得到128维结果,所以w:128x128

5.b要能够相加,则b: 1x128

通过上述的逻辑,我们就能够清楚的知道,模型的内部有多少可训练的权重参数

CNN

卷积神经网络(Convolutional Neural Network)
主要思想: 和CNN类似,对于图片或是视频类的数据,更多的是像素点,我们通过设定卷积核的大小,作为一个特征提取词,每次通过上下移动一步,将范围内的像素特征进行提取。

计算示意

如图:第一步

第二步:

释义

1.上面的图片中,黄色部分就是我们的卷积核

2.绿色就是我们的图片像素点位,转为数字表达的信息

3.红色就是我们提取处理的特征,池化的结果

4.其中黄色部分,每个点位相乘的下标数据,就是我们模型需要计算的权重,这个权重和图谱的对应点位进行相乘,结果相加就是我们提取的值
注意:上面介绍的是一种普通的卷积方法,卷积还要膨胀卷积等
注意2:卷积同样可以用于NLP,再NLP中卷积的移动方向只有上下两个

Normalization(归一化层)

释义: 对于神经网络模型,我们需要经过多层的计算,那么某一层的某个参数过大或者过小都会导致梯度的膨胀和消失;为了避免这个问题,我们使用Normalization将某一层的神经网络输出,给收缩到一个范围内,避免上述的问题

公式:

释义:

1.公式1表示对任意一层的输出进行求平均

2.公式2求该输出的方差

3.公式3通过方差、均值,可以将输出值分布收缩到一个小的范围

4.公式4中:β和γ需要学习的参数,Y才是归一化层的输出;目的是为了减少归一化所造成的数据中特征的损失

Normalization常见两种方式

如图:

释义:

1.左右两种normalization主要是对输出的向量的求平均和方差的方向不同,一个是batch样本之间;一个是样本内进行

2.batch normalization主要用于CV任务中,因为是归一化在样本间,图像我们考虑两张类似的图片存在一些相似性和关系

3.layer normalization主要是用于NLP任务中,求的是样本间的,因为我们认为,语言的差异较大,两句话间相似性小
注意:归一化层不是只有上述的操作,还有其他的类型,目的都一致,约束

Dropout层

作用: 减少过拟合
逻辑: 按照指定的概率,随机丢弃一些神经元,每一个神经元都按照这个概率去判断一下,要不要丢弃,即将对应位置值设为0;其余元素乘以1/(1-p)进行放大

案例说明: 有一个向量[1,2,3,4,5,6],经过p=0.5的dropout层,得到的结果可能为:[0,4,0,0,0,12]。

理解说明

1.强迫一个神经单元,和随机挑选出来的其他神经单元共同工作,消除减弱了神经元节点间的联合适应性,增强了泛化能力

2.可以看做是一种模型平均,由于每次随机忽略的隐层节点都不同,这样就使每次训练的网络都是不一样的,每次训练都可以单做一个"新"的模型

类比说明: 养了一群娃;目的是能够在社会上叱咤风云,为了避免在训练阶段,即读书阶段成为书呆子,让他们每个人都去跳崖,这个跳崖的死亡率(p)我们可以设置;嘎掉的娃,我们就把他们的高考成绩打0分;没有噶掉的就把分数进行1/(1-p)放大,奖励;这样就避免,其中某个孩子王的影响了,每一个娃都会是强者。

相关推荐
wangyue415 分钟前
c# 深度模型入门
深度学习
川石课堂软件测试29 分钟前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
985小水博一枚呀37 分钟前
【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法
人工智能·深度学习·神经网络·cnn·transformer
AltmanChan38 分钟前
大语言模型安全威胁
人工智能·安全·语言模型
985小水博一枚呀42 分钟前
【深度学习滑坡制图|论文解读2】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法
人工智能·深度学习·神经网络·cnn·transformer·迁移学习
数据与后端架构提升之路1 小时前
从神经元到神经网络:深度学习的进化之旅
人工智能·神经网络·学习
爱技术的小伙子1 小时前
【ChatGPT】如何通过逐步提示提高ChatGPT的细节描写
人工智能·chatgpt
深度学习实战训练营2 小时前
基于CNN-RNN的影像报告生成
人工智能·深度学习
昨日之日20064 小时前
Moonshine - 新型开源ASR(语音识别)模型,体积小,速度快,比OpenAI Whisper快五倍 本地一键整合包下载
人工智能·whisper·语音识别
浮生如梦_4 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测