zoukankan      html  css  js  c++  java
  • 当下热门的神经网络是什么东西?

    一文告诉你, 当下热门的神经网络是什么东西?

    目录引索

    • 简单神经网络
      • 感知机
      • 神经网络特点
      • softmax
      • 交叉熵
    • 卷积神经网络
      • 卷积
      • 激活函数
      • 池化
      • 全连接
    • Tensorflow playground 演示

    简单神经网络

    神经网络就是模拟人的神经元进行信号(信息)收集、传递、处理的过程。

    以人体对于温度的感知为例:

    感知机

    1. 定义: 有n个输入数据,通过权重与个数据之间的计算和,比较激活函数结果,得出输出。
      • sum = w1x1+w2x2+w3x3+......
    2. 应用: 容易解决与、或问题, 分类问题。
    • 与问题: 所有输入为1,则为1
    • 或问题: 只要有一个为1,则为1
    • 亦或问题:相同为0,不同为1 (使用2条直线来划分,即2个感知机)
    1. 感知机与逻辑回归的对比
    • 感知机是求和以后进行一个简单的阈值判断,而逻辑回归是通过一个sigmoid激活函数函数转化为[0,1]的值。

    神经网络定义

    当一个感知机不能解决问题的时候,会用多个感知机来构成网络。
    感知机 --> 神经元
    多个神经元构成的网络 --> 神经网络
    神经网络是一个多分类问题,得出属于全部类别的每一个概率,谁的概率大,就是谁。

    神经网络特点

    • 由输入层(1个)、隐藏层(n个)、输出层组成(1个)
    • 输入向量的维度和输入神经元的个数相同 (不是个数)
    • 同一层的神经元之间没有连接
    • 每个连接都有权重 (类似于线性回归)
    • 第N层与N-1层的所有神经元全连接(最后一层全连接)

    神经网络结构

    1. 结构: 权重、神经元等
    2. 激活函数: 增强网络的非线性,简单理解,没有激活函数,只能画直线分割数据点;增加激活函数,可以用曲线来划分。
    • ReLu, Tanh, sigmoid等
    1. 学习规则: 网络中的权重,如何随着时间(或者说是迭代)来进行自我调整。 包括正向传播和反向传播。
    • 正向传播(前向传播): 输入经过一层层计算,(w1x1+w2x2+...) 得出输出结果
    • 反向传播:总误差是由不同的权重产生的,将误差按权重的比例进行分割,向后传递,例如某个节点的总误差是0.5,它是由上2个节点传播而来,对应的权重比例为1:4, 则这两个节点分摊误差为0.1和0.4,依次向前传递。最终通过误差值来调整各节点的权重。

    神经网络的判定 (softmax)

    1. 为什么需要softmax?
    • 神经网络是解决多分类问题,但是它的输出仅仅就是一个值,使用一个函数来划分出概率,对目标类别都会输出一个概率,而目标特征一般都使用one-hot编码,通过对比不同类别的概率得出结果。
    1. softmax表达式

    神经网络算法的优化

    【不同算法的对比】

    损失衡量策略:交叉熵损失(对数似然损失的推广)

    深度神经网络

    深度神经网络与单一隐藏层神经网络的区别在于深度,随着神经网络深度增加,节点所能识别的特征也越来越复杂。

    卷积神经网络

    什么是卷积神经网络

    1. 卷积神经网路是深度神经网络的一种类型,如AlexNex, VGG, GoogLeNet, ResNet, 它是为了解决全连接网络的一些缺点而存在:
    • 参数太多,计算量大
    • 没有利用像素之间的位置信息,(图片识别每个像素与周围像素关系紧密)
    • 层数限制
    1. 卷积神经网络的特点在于隐藏层分为卷积层和池化层(下采样层)
    • 卷积层:通过在原始图像上进行平移来提取特征(带着权重偏移,乘加运算)
    • 池化层:通过特征后稀疏参数来减少学习到的参数,降低网络的复杂度。(最大池化,平均池化)

    神经网络发展历史

    卷积层 (Convolutions)

    1. 过滤器(filter),是一个带有权重的观察窗口,通常为1* 1, 3* 3, 5 *5 的结构,权重与图片中的数值(RGB)做线性回归, (乘加运算),最终得出一个结果。
    2. 步长 (strides):过滤器在图片上每次平移的像素点数量
    3. 0填充 (padding): 当过滤器移动至图片边缘以外的处理方式
    • same: 越过边缘取样,取样面积与输入的图像像素相同
    • valid: 不越过边缘取样,取样的面积小于输入图像的像素宽度。

    单通道图片卷积操作(灰度图片)

    注: 当有多个过滤器进行观察时,过滤器携带的权重是不一样的,但是其步长和零填充方式一致。有多少个过滤器,最终的结果有多少个。

    多通道图片的卷积操作(RGB图片)

    激活函数

    1. 为什么要增加激活函数:
    • 增加网格的非线性分割能力
    • 在进行梯度求导时,没有非线性,多次求导后,梯度就消失了。
    1. 常见的激活函数
    • sigmoid = 1/(1+e^(-x)) , 多次求导运算量大, 对于深层次网络,反向传播时容易出现梯度爆炸。
    • relu: max(0, x)

    池化层(Pooling) 也称为下采样(Subsampling)

    Pooling层的主要作用是特征提取,通过去掉Feature map中不重要的样本,进一步减少参数数量。
    常见的Max Pooling 取 2*2 , 2步长, 也可以指定padding

    Dropout & Inception

    1. dropout : 随机丢弃一部分数据,防止过拟合,增强泛化能力 (一般用于大型网络)
    2. Inception: 一组特定的卷积结构,可以参考GoogLeNet

    全连接层 (Full Connected层)

    卷积池化可以理解为做特征工程,后面的全连接相当于做特征加权。
    全连接层在神经网络中起到了 “分类器”的作用。

    【拓展】对神经网络的直观认识

    使用tensorflow的playground演示
    http://playground.tensorflow.org

  • 相关阅读:
    java作业5
    《大道至简》第五章读后感
    java作业4
    《大道至简》第四章读后感
    java作业3
    《大道至简》第三章读后感
    java作业2
    Java课程作业1
    《大道至简》第二章读后感
    《大道至简》第一章读后感
  • 原文地址:https://www.cnblogs.com/hp-lake/p/12039996.html
Copyright © 2011-2022 走看看