• 004-神经网络


    神经网络公式与模型:

    神经网络在计算机中的样子:

    输入层和隐藏1层用w1链接,隐藏1和隐藏2层用w2链接,隐藏2层和输出层用w3链接。

    那么w1应该是一个3×4的矩阵,表示有3个样本,4个特征。

    线性很少能满足实际要求,于是非线性的函数出现了,max(0,w1x)称为激活函数

    例如用sigmoid当做激活函数,将任意值压缩至0~1的区间范围内。

    就好比在第一个隐藏层后加一个激活函数,在第二个隐藏层后加一个激活函数。。。。。。

    多层神经网络:

    单层的神经网络:

      

    双层神经网络:

      

    激活函数:

    在神经网络中,sigmoid函数会出现梯度消失的情况

    什么叫做梯度消失的情况?说白了就是在反向传播时,要对激活函数求偏导数,如果x的值很大,那么在sigmoid函数中偏导数就会接近于0,再进行偏导数的累乘,那么就会更接近于0,这就叫做梯度消失。

    解决的方法:

    通过relu函数

    当做激活函数。

    神经网络层数(神经元)选择:

    可以看到中间的隐藏层(以后叫做神经元)越多,分类的效果就越好,但是容易过拟合,这也是神经网络的最大缺点,神经元的提升泛化能力减弱,过拟合的风险提高。

    正则化项在神经网络中的重要作用:

    当在损失函数中添加正则化惩罚项,可以见得惩罚系数越高,过拟合的风险就越小。

    drop-out:

    左边的叫做全连接,更容易过拟合。

    所以用右图来解决,就是增加迭代次数,每次迭代减少神经元的个数。

    数据预处理:

    数据的归一化操作

    图一是原始数据

    图二是将原始数据减去了一个均值的操作,就会以0位中心。

    图三是将图二进行了除以标准差的操作,数据就会在纵轴上缩小。

    权重初始化:

    D-维数

    h-神经元个数

    b对最终结果影响一般很小。所以

    b=0或1

  • 相关阅读:
    python字符串,列表,字典的常用方法
    Python【第一课】 Python简介和基础
    python中index()与find()的差异
    tomcat学习笔记2
    tomcat学习笔记1
    haproxy学习笔记
    高可用工具keepalived学习笔记
    ngx_http_upstream_module模块学习笔记
    nginx的rewrite,gzip,反向代理学习笔记
    nginx学习笔记1
  • 原文地址:https://www.cnblogs.com/Mjerry/p/9788781.html
Copyright © 2020-2023  润新知