• 深度学习5 神经网络


            生物神经网络是指人的大脑,这是人工神经网络的技术原型。根据生物神经网络的原理,人们用计算机复现了简化的神经网络。当然,人工神经网络是机器学习的一大分支。

    1.基本组成

    1.1神  

            神经元是神经网络的基本组成。激活函数又称作激励函数、传输函数。

     1.2   

            层其实就是由多个上面的神经元模型构建起来的模型。 一层可以有多个神经元,多个层就构成一个神经网络。

            这是一个含有3个神经元的单层网络,每一个输入都跟每一个神经元有连接,每一个连接的权重都不一样;输入的数量和神经元的数量不用相等;每一个神经元都可以使用不同的传输函数,每一个的输出都是不同的。也可以把激活函数和偏置理解成神经元的内部属性,毕竟每一个神经元只 有一个激活函数和一个偏置。

    2.反向传播(BP)

            BP 算法是神经网络的核心所在,模型有权重和偏置,通过反向,输入通过权重和偏置得到最终的输出,但是输出的结果肯定与想要的结果有偏差。通过 BP 算法来更新模型的权重和偏置,以使得改变后的模型的输出值与想要的结果更为相近。

            向模型中传入数据,数据经过每一层的偏置和层与层之间的权重矩阵,最后会得到一个预测值。这个预测值与真实值之间存在损失函数(Cost    Function)

    3.反向传播神经网络

            广义的BP 神经网络,是指一种反向传播的思想,这个思想贯穿整个深度学 习当中,不管是卷积神经网络(Convolutional Neural Networks,CNN)还是循环神经网络 (Recurrent    Neural  Network,RNN),都继承了这样的思想。至于狭义的 BP 神经网络,其实就是全连接网络,每一层都是FC(Full-Connected)层, 从输入层到隐含层再到输出层。至于全连接层,就是之前讲的“层”概念。使用反向传播不断更新参数,就是训练神经网 络的本质。经常听到的多层感知机(Multi Layer Perceptron,MLP)其实就是狭义的BP 神经网络,也就是全连接网络。

    4.卷积运算

            卷积只是一个为了方便计算而定义的概念,是一个符号,是一个像加减乘除的运算。原图像的数字被卷积核挡住了。被卷积核盖住的原图的那一部分就称为卷积核的视野域。当卷积核的尺寸越大,那么卷积核的视野域也就越大。

    5.卷积层

            此处引入相关定义:步长(Stride) 、填充(Padding) 通道(Channel) 和特征图(Feature    Map)。

            一个5×5的图片被3×3卷积核卷积之后就是3×3的图像,如果想让卷积前后的图像具有相同尺寸,就要用到Padding,如图所示。

    填充的输入并不都是0,有很多不同的模填充式,例如“根据原图边缘进行填充”等。把经过卷积层卷积的图片称为特征图。

    6.池化层

            池化层(Pool)比较简单, 一般夹在卷积层中间,用于压缩数据和参数的量,也可减少过拟合现象。有时,也把池化层称为下采样层。池化层也有卷积核,但是这个卷积核只是取视野域内的最大值或者平均值,所以分为最大池化层和平均池化层。因为并没有参数需要调整,所以池化层不参与反向传播。池化层具有特征不变性(Invariance) 通俗地讲,就是假设有一个100×100的“狗”图片,假设池化之后变成50×50的图片,依然看得出来这是一只狗。池化层保留了图片中最重要的特征,去掉的是无关紧要的信息。但是这个过程使图片的尺寸改变了,所以可以认为:留下来的特征具有“尺度不变性”,是最能表达图像特征的特征图。

    7.循环神经网络

            前面讲解了全连接网络,也讲解了CNN,  现在又出现了RNN  CNN  已经可以处理图像分类、图像检测、图像生成的问题了,为何还要RNN  呢?

            RNN 的特点就是具有一定的记忆。卷积网络可以识别一个图片的内容,但是对于一个 每一帧之间都具有某种联系的视频呢,卷积网络就不能很好地处理其间的时间关系。而RNN可以考虑前一个时刻的影响,还可以对这个时刻之前的所有时刻都具有一定的记忆性。  RNN 是基于“人的认知是基于过往经验和记忆”的观点提出的。

            RNN用途

            卷积网络可以当作一个图像的特征提取器,通过提取图像的特征对图像进行分类。RNN 可以对“之前的信息”进行记忆并用于当前的计算中,所以RNN  的应用领域是非常广阔的:

    (1)自然语言处理(Nature Language Process,NLP)基本是与RNN  绑定最为紧密的一 个应用领域。其目的是实现有效自然语言通信的计算机系统,简单说就是计算机可以像人 一样跟人进行沟通交流。包括文本生成、语言模型、机器翻译、文本相似度等内容;

    (2)视频处理、语音识别、图像描述生成等;

    (3)音乐推荐、商品推荐等推荐系统。

    从一句话中提取信息来填空的查询方式,被称为槽填充(Slot Filling)。RNN的反向传播  —BPTT(Back   Propagation   Through    Time)

    总结:

    (1)神经网络的基本组成:神经元与层。

    (2)神经网络的反向传播算法的铺垫与推导,这里给出四个最重要的概念:

    首先定义神经元的损失:

    其次计算所有层的神经元的损失:

    通过神经元的损失,计算偏置的梯度:

    以及权重的梯度:

    (3)卷积网络的基本概念。后续的实战对卷积的了解有质的飞跃。

    (4)循环神经网络的基本概念。

            

            

  • 相关阅读:
    创建线程池的方法
    在树莓派上安装编译的vim——开启python3支持
    机械设备行业数字化供应链集采平台解决方案:优化资源配置,实现降本增效
    wxWidgets(1):在Ubuntu 环境中搭建wxWidgets 库环境,安装库和CodeBlocks的IDE,可以运行demo界面了,继续学习中
    TX Text Control.NET 32.0 For WPF
    【深度学习】如果我年少有为,会垃圾分类
    学自动化测试可以用这几个练手项目
    quick3-hydra
    哨兵(Sentinel-1、2)数据下载
    来测测你的智力——智力题
  • 原文地址:https://blog.csdn.net/m0_63860007/article/details/140397312