zoukankan      html  css  js  c++  java
  • 卷积神经网络的部分知识理解

    为什么要经过非线性化?因为没有激励函数的神经网络只能逼近线性的函数而不能逼近任意函数,
    神经网络的本质其实是一个参数待定的函数
    卷积神经网络参数共享:
    神经元用于连接数据窗的权重是固定的,这意味着,对同一个神经元而言,不论上一层数据窗口停留在哪个位置,
    连接两者之间的权重都是同一组数。那代表着,上面的例子中的卷积层,我们只需要
    神经元个数*数据窗口维度=96*11*11*3=34848个权重。

    最常见的卷积神经网结构为:
    [输入层] => [[ReLU卷积层]*N => [Pooling层]?]*M => [ReLU全连接层]*K => [全连接层]
    过滤器:
    这种图像某一部分与滤波器点乘后求和操作就是以后的卷积神经网络中的卷积操作,这样就得到了
    经过滤波器过滤后的图像
    如果图像的某一区域与过滤器检测的特征很相似,那么当过滤器经过该区域时,就会激活该过滤器,得到一个很高的值
    卷积层各种参数的计算:
    假设输入为:H1*W1*D1
    1,如何计算feature map(特征图,输出数据体)的神经元个数H2*W2*D2:
    原则:featur map的神经元个数是由滤波器尺寸F,个数K,步长S,是否补零决定的P!
    W/H=[(输入大小-卷积核大小+2*P)/步长]  +1. 
    H2=(H1-F+2P)/S +1
    W2=(W1-F+2P)/S + 1
    D2=K
    2,参数个数:需要被训练的参数:也就是滤波器的参数:F*F*d*K+K
    3,连接的个数:(F*F+1)*K*( H2*W2)

    通过CNN学习后,我们学习到的特征,是具有辨别性的特征,比如要我们区分人脸和狗头,
    那么通过CNN学习后,背景部位的激活度基本很少,我们通过可视化就可以看到我们提取
    到的特征忽视了背景,而是把关键的信息给提取出来了。从 layer 1、layer 2学习到的
    特征基本上是颜色、边缘等低层特征;layer 3则开始稍微变得复杂,学习到的是纹理特征,
    比如上面的一些网格纹理;layer 4学习到的则是比较有区别性的特征,比如狗头;
    layer 5学习到的则是完整的,具有辨别性关键特征
  • 相关阅读:
    linux基础命令笔记
    linux日常常用命令分析
    43.QQ聊天软件GUI窗口编写
    42.线程概念及线程池
    pycham中报:ModuleNotFoundError: No module named 'pymysql'
    python os模块
    python用类的方式创建线程---自创建类
    python server端并发聊天
    python文件上传
    python编码--解码
  • 原文地址:https://www.cnblogs.com/ywheunji/p/10154653.html
Copyright © 2011-2022 走看看