• umich cv-3-1


    UMICH CV Neural Network

    对于传统的线性分类器,分类效果并不好,所以这节引入了一个两层的神经网络,来帮助我们进行图像分类
    img
    可以看出它的结构十分简单,x作为输入层,经过max(0,W1*x)到达h隐藏层,再经过W2到达s输出层
    如果我们对隐藏层的结果进行可视化,我们可以看到如下的图像:
    img
    相对于之前线性分类器每类提供的单一的模板,显然神经网络能够为我们提供更多的选择,这也是为什么它能帮助进行分类的一个重要原因
    如果我们想要扩展网络层数,也可以这样做:
    img
    这样就得到了一个更复杂的神经网络
    注意到上述表达式均包含一个max表达式,它的作用是什么?
    实际上这个函数通常被称为ReLu函数,作为激活函数,目的就是改变函数的线性结构,常用的其它激活函数如下:
    img
    但是它的作用还不止于此
    我们知道目前线性分类器最大的缺陷就是,在对分类空间进行划分时,经常不是线性可分的,即使经过矩阵乘法经过空间的变换:
    img
    再加入Relu激活函数之后让我们再来看看:
    img
    除了第一象限的点,第二象限的点被压缩到了y轴正半轴上,第三象限被压缩到原点,第四象限被压缩到了x轴正半轴上:
    img
    这样我们就得到了一个线性可分的空间

    上述讨论在我们已经可以看出神经网络的一些优点,其实还有一个重要的优点就是神经网络在某种程度上是universal approximation的
    举个例子:
    img
    我们可以用隐藏层单元去拟合一个上图所示的这样一个函数,而很多个类似的函数可以去帮助我们拟合任意复杂的函数关系:
    img

    神经网络的优点就介绍到这里,下一篇会讲讲具体的运作原理

  • 相关阅读:
    jenkins流水线(jenkinsfile)详解,保姆式教程
    高效技巧揭秘:Java轻松批量插入或删除Excel行列操作
    轻量化网络 Mobilenet V1/V2/V3 学习记录
    数据结构之堆
    Linux文件系统
    从零开始写一个APM监控程序(一)协议
    算法打卡day52|单调栈篇03| 84.柱状图中最大的矩形
    Gradle简单配置
    Ansible---playbook 剧本
    白话强化学习(理论+代码)
  • 原文地址:https://www.cnblogs.com/dyccyber/p/17763785.html