网络结构-组件-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)放大,奖励;这样就避免,其中某个孩子王的影响了,每一个娃都会是强者。

相关推荐
机智的叉烧13 分钟前
前沿重器[57] | sigir24:大模型推荐系统的文本ID对齐学习
人工智能·学习·机器学习
凳子花❀15 分钟前
强化学习与深度学习以及相关芯片之间的区别
人工智能·深度学习·神经网络·ai·强化学习
泰迪智能科技012 小时前
高校深度学习视觉应用平台产品介绍
人工智能·深度学习
盛派网络小助手3 小时前
微信 SDK 更新 Sample,NCF 文档和模板更新,更多更新日志,欢迎解锁
开发语言·人工智能·后端·架构·c#
Eric.Lee20213 小时前
Paddle OCR 中英文检测识别 - python 实现
人工智能·opencv·计算机视觉·ocr检测
cd_farsight3 小时前
nlp初学者怎么入门?需要学习哪些?
人工智能·自然语言处理
AI明说3 小时前
评估大语言模型在药物基因组学问答任务中的表现:PGxQA
人工智能·语言模型·自然语言处理·数智药师·数智药学
Focus_Liu3 小时前
NLP-UIE(Universal Information Extraction)
人工智能·自然语言处理
PowerBI学谦3 小时前
使用copilot轻松将电子邮件转为高效会议
人工智能·copilot