深度学习基本概念

深度学习概念

激活函数(Activation Function)

就是在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端。

阶跃函数

输出0或1.优点:简单易用。缺点:函数不光滑,不连续,不可导。

线性函数

最简单的连续函数。优点:多个输出。缺点:无法使用梯度下降法来训练模型:倒数是常数,并且与输入x无关,不利于模型求解过程中对权重的确定;神经网络都是线性函数,无论有多少层,都变成了线性函数。

sigmoid函数

优点:平衡的渐变;输出介于0-1之间,对每个神经元的输出进行标准化;清晰的预测:大于2或小于-2,y趋于1或0,即很好的判断类别。缺点:梯度消失:x很大或很小,导数趋于零,网络拒绝进一步学习,无法完成准确的预测;输出y中心点不是0,是0.5
在这里插入图片描述

Tanh函数

优点:正负方向以原点对称,输出均值是0,使得收敛速度比sigmoid快,减少迭代次数。具有sigmoid函数优点。缺点:与sigmoid函数一样,也存在梯度消失问题。
在这里插入图片描述

Relu函数

优点:计算效率高,允许网络快速收敛;非线性,尽快看起来像线性函数,但它具有倒数函数并允许反向传播。缺点:神经元死亡问题:当输入接近0或为负时,函数的梯度变为0,网络无法执行反向传播,也无法学习。
在这里插入图片描述

Leaky Relu函数

接近了Relu的神经元死亡问题,及时输入负值,也能进行反向传播;具有relu函数的优点。缺点:结果不一致,无法为正负输入值提供一致的关系预测(不同区间函数不同)。在x>0的范围,导数更大,对输出结果有更大的结果。
在这里插入图片描述

Softmax函数

(应用于多分类问题)帮助输入结果映射到0-1的输出概率,他们之和为1。
在这里插入图片描述

没有最好的激活函数,场景决定哪个合适

sigmoid、tanh:二分类任务输出层(大于0.5类别1,小于0.5类别0);模型隐藏层(作为中间提取信息)
relu、leaky relu:回归任务(回归任务输出也是连续的数值);卷积神经网络隐藏层(卷积神经网络非常长,x很大的地方梯度消失)
softmax:多分类任务输出层。
激活函数参考:https://blog.csdn.net/dfly_zx/article/details/104493048

多层感知器正向传播(forward propagation)

从输入层到输出层正向的传播。

多层感知器反向传播

一开始告诉初始化的斯塔是多少,得到预测的y值,减去实际的y,得到偏差,反推,得到中间层的误差,再到更前一层的。即从后往前一次计算每层神经元的数值偏差,然后通过梯度下降法寻找到使偏差最小的参数西塔,完成模型的求解

损失函数

从逻辑回归到mlp:先类别和,再对所有样本进行求和,即与逻辑回归损失函数比,增加了类别数量 在这里插入图片描述

图像卷积(convolution)运算

即通过对图像矩阵与滤波器矩阵filters进行对应相乘再求和运算,课实现图像中特定轮廓特征的快速搜索。

卷积神经网络的核心:寻找合适的轮廓过滤器

彩色图的卷积运算,RGB图像的卷积

对R、G、B三通道分别求卷积再相加,得到一个通道

池化(pooling)

也称欠样本或下采样,指按一定的规则对图像矩阵进行处理,实现信息压缩与数据降维。作用:减少过拟合,同时提高模型容错性。即把对分类不需要的图片区域(背景)压缩。

最大法池化(Max-pooling),取最大值。stride为窗口滑动步长。

平均法池化(Avg-pooling),求平均值。

卷积神经网络(Convolutional Neural Network)

把卷积、池化、mlp先后连接在一起,组成一个能够高效提取图像重要信息的神经网络。
卷积之后、池化之前会增加激活函数以筛选保留重要信息。通常选用Relu函数,因为1、是部分神经元为0,过滤噪音信息,防止过拟合;2、迭代快,易于求解。

卷积神经网络两大特点

1、参数共享(Parameter sharing):同一个特征过滤器课用于整张图片
2、稀疏连接(sparsity of connections):生成的特征图片每个节点只与原图片中特定节点连接。(之和原图像素点的部分像素点相关,即不需要关联很远的点)

图像卷积的两个常见问题

1、边缘信息使用少,容易被忽略
2、图像被压缩,信息丢失

应对之法

图像填充(padding),通过在图像周边添加新的像素,使边缘位置图像信息得到更多的利用。
##步骤##图像填充》池化运算》卷积运算》多层感知器结构+输出预测

站在巨人的肩膀上成长:经典的CNN模型

1、参考经典的CNN结构,将其核心思想运用到新模型设计
2、使用经典的CNN模型结构提取图像重要轮廓,再建立MLP模型
经典的CNN模型:leNet-5、AlexNet、VGG

LeNet-5

是用来处理简单的灰度图像的。filter均为5*5(s=1);池化为avg pool(f=2,s=2),卷积与池化先后成对使用;随着网络越深,图像的高度和宽度在缩小,通道在增加
在这里插入图片描述

AlexNet

在这里插入图片描述

特点:
输入图像:2272273RGB图,3个通道
训练参数:约60000000个
引入图像填充,采用max pool;更为复杂的结构,能够提取出更丰富的特征;适用于识别较为复杂的彩色图,可识别1000种类别。正是AlexNet的诞生让很多研究者相信在计算机视觉应用中,深度学习可以很好的完成任务。
在这里插入图片描述

VGG-16

在这里插入图片描述

输入图像:2242243 RGB图,3个通道
训练参数:约138000000个
特点:
1、filter均为33,步长为1,卷积前均使用了图像填充padding(same convolution)
2、池化均为max pool,窗口尺寸均为2
2,步长都是2
3、使用更多的filter提取轮廓信息,进一步提高识别准确率
在这里插入图片描述

序列模型(Sequence Model)

任务:识别所说的话。在进行语音识别时,给定了一个输入音频片段X,并要求输出对应的文字记录Y。基于语音内容及其前后信息进行文字预测
任务:物体位置预测。T=5s的时候,车在什么位置?通过目标前一个时刻所处的位置、速度和方向,可以预测其下一时刻的位置。
#序列模型(Sequence Model):输入或者输出中包含有序列数据的模型叫做序列模型。
特点:1、输入(输出)元素之间是具有顺序关系。不同的序列,得到的结果应该是不同的,比如“不睡觉”和“睡觉不”这两个短语的意思是不同的2、输入输出不定长。不如聊天机器人,聊天之间的对话长度都是不定的。

循环神经网络(RNN)

一类以序列(sequence)数据为输入,在序列的演进方向进行递归(recursion)的神经网络。
#基本的RNN结构:一个输入样本对应一个输出结果。应用:特定信息查找
多输入多输出且输入输出样本数量相同的RNN结构
#基本的RNN结构:多对一。多输入单输出RNN结构。应用:情感识别
#基本的RNN结构:一对多。单输入多输出RNN结构。应用:序列数据生成器图像字幕、音乐生成、文章生成
#基本的RNN结构:多对多,多输入多输出。应用:机器翻译

RNN结构中的信息丢失问题

1、前部序列信息在传递到后部的同时,信息权重下降,导致重要信息丢失
2、反向传播算法进行模型求解时,梯度消失

长短期记忆网络(LSTM)***

通过ai传递前部序列信息,距离越远信息丢失越多;增加记忆细胞ci,可以传递前部远处重要信息
1、忘记门:选择性丢弃ai-1与xi中不重要的信息
2、更新门:确定给记忆细胞添加哪些信息
3、输出门:筛选需要输出的信息
特点:即使网络结构很深(很多层),前部的重要信息也能在后续预测中保留;减少了普通RNN在求解中梯度消失问题
在这里插入图片描述

双向循环神经网络(BRNN):后部序列信息也用于前部信息的预测

在这里插入图片描述

深度循环神经网络(DRNN):对于更难提取的复杂信息,可以把单层RNN叠起来或和mlp结构结合使用

在这里插入图片描述

迁移学习(transfer learning)

是一种机器学习方法,就是把任务A开发的模型作为初始点,给予其结构或权重系数实现任务B模型的快速搭建与学习。目的:运用已有的知识帮助发现信息中的规律,并将其应用到解决不同但相似领域的问题。
应用:小汽车识别模型应用到公交车识别美式英语翻译系统模型应用于英式英语翻译系统
#迁移学习通过任务A的数据,模型A学习了核心的模型结构、权重系数(weights);机器基于模型A与新的数据,实现了对模型A的部分结构或权重系数的更新,得到模型B。

迁移学习的三种实现方法

1、特征提取:使用模型A,对原数据进行特征信息提取(通常会移除模型A的预测输出层)
2、结构引用:直接使用模型A的结构,利用新的数据对其重新/二次训练,实现权重系数的更新
3、部分训练:直接使用模型A的结构,利用新数据重新/二次训练,更新其指定的部分权重系数。

如何选择:根据新样本数和任务相似度;没有固定的方法,可以根据情况灵活应用

如果新数据多、任务相似度高,可基于原有结构,重新训练:结构引用,保留结构、更新系数。
如果新数据少、任务相似度高,保留原模型大部分结构与权重系数。特征提取,替换输出层。
如果新数据少、任务相似度低,可尝试更新部分系数。部分训练,更新部分系数。
如果新数据多、任务相似度低,原有模型可能不适用,尝试全新结构。全新模型,新结构、系数。
在这里插入图片描述

迁移学习的价值

数据,对样本数量需求相对较小;时间,待更新参数少,训练速度快;表现,通常会必很多新的模型有更好的表现。

在线学习(Online learning)

即将新数据输入给已经训练好的模型,实现模型更新,发现新的价值信息。
价值:对于新数据,不需要对全数据集进行再次训练,但能高效地发现新规律。
要求:需要有连续的数据流输入模型
特点:模型结构保持,权重系数更新
在这里插入图片描述
#案例:针对物流快递价格,不同时期,如何进行定价。
方案一:专家模型:考虑距离、运输量、天气、同期其他公司价格、历史参考价格等等,建立一个专家模型
方案二:根据客户的实时下单情况,预测客户对不同价格的购买意愿,根据意愿调整价格
在这里插入图片描述

混合学习

#半监督学习:是监督学习与无监督学习相结合的一种学习方法。半监督学习使用大量的未标记数据,以及同时使用标记数据,来进行模型识别工作。

伪标签学习(pseudo-labelling)

用有标签数据训练一个分类器,然后用这个分类器对无标签数据进行分类,这样就会产生伪标签(pseudo label)或软标签(soft label),挑选你认为分类正确的无标签样本(预先设定一个挑选准则),把选出来的无标签样本用来训练分类器。
在这里插入图片描述
伪标签学习的局限性:
1、标签数据可能都是同一个类别,无法训练出有效的分类器
2、可能无法寻找到合适的筛选准则
半监督的核心:尽可能将数据中正确信息利用起来
伪标签学习的局限性:
1、标签数据可能都是同一个类别,无法训练出有效的分类器
2、可能无法寻找到合适的筛选准则
半监督的核心:尽可能将数据中正确信息利用起来:1、相似样本的共同特性2、标签样本的监督信息

半监督学习:聚类分析+结果矫正,利用有标签的部分数据,对聚类模型结果进行结果矫正

半监督学习没有特定的训练方式,多尝试,实现监督学习+无监督学习的灵活运用:有标签数据提取特征的半监督学习:用有标签数据训练网络;通过训练好的模型的提取无标签数据特征,帮助简历模型完成任务。有标签数据并不局限于自己收集到的数据,还可以利用别人使用的相似的数据或者模型,比如:利用VGG16提取图像特征
#奇特草莓检测:
普通草莓:监督学习(有标签数据实现结果矫正、VGG16)、无监督学习(很多样本没有标签,聚类算法)
奇特草莓:深度学习(CNN图像特征提取)+机器学习(聚类分析)

深度学习+机器学习

数据预处理:数据标准化、异常检测、数据降维等
输出预测:聚类(Kmeans、Meanshift等)、分类(逻辑回归、决策树)、回归(线性、非线性等)
+复杂特征提取:多层感知器MLP、卷积神经网络CNN、循环神经网络RNN

均值漂移聚类Meanshift:一种基于密度梯度上升的聚类算法(沿着密度上升方向寻找聚类均值点)

算法流程:
1、随机选择未分类点作为中心点
2、找出离中心点距离带宽之内的点,记作集合S
3、计算从中心点到集合S中每个元素的漂移向量M
4、中心点以向量M移动
5、重复2-4,直到收敛
6、重复1-5直到所有的点都被归类
7、分类:根据每个类,对每个点的访问频率,取访问频率最大的那个分类,作为当前点的集合

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值