美文网首页
【神经网络】表征

【神经网络】表征

作者: 阿瑟琴 | 来源:发表于2019-08-03 22:36 被阅读0次

    一、引子

    对于非线性的分类问题,当自变量较多的时候,用之前的回归的方法就会非常复杂,因为在我们要拟合的函数项的可能性会爆炸。
    例如,如果我们有100个自变量(x1、x2、x3...x100),如果只考虑最后是二阶的函数,那么特征就有:x1、x1^2、 x1x2、x1x3...x100、x100^2, 复杂度是O(n^2)

    那么这种输入很多的情况会怎么出现呢?

    计算机视觉!!
    随便一张可辨认内容的图片,像素都是几百几千朝上的。
    假如有一张50*50像素的图片,那么这张图片上一共就有2500个像素点,如果我们要构造二阶的拟合函数,那么特征数量就会是百万级的!!!

    二、神经元与大脑

    神经网络其实是个很早就被提出了,曾经因为受限于硬件水平而销声匿迹,近几年才重新热起来。

    相关的生物学原理与脑干切除手术有关,就不详述了。

    三、模型表示

    1.单个神经元

    真正的神经细胞由细胞体和突起组成。
    而突起又分为树突和轴突。树突接收多个其他神经细胞的冲动,而轴突向多个其他神经细胞传递冲动。

    因此,模仿生物细胞建立模型——Logistic unit(逻辑单元)。


    logistic unit

    在我们的神经网络模型中,逻辑单元包括输入和输出,决定如何输出的函数叫激活函数(g(z)),而决定x在z中系数的Θ又叫作权重。

    参考之前逻辑回归使,会有一个常数项。所以,在某个神经元之前的所有神经元中,有时会设置一个值永远固定为1的单元,叫做bias unit(偏置单元??)。

    2.神经网络

    由多层的神经元组成的网络。
    第一层被叫做输入层(input layer);输出最后值之前的最后一个网络叫作输出层(output layer),输出层只有一个神经元;中间的叫做隐藏层(hidden layer),因为这种层的结果我们不需要去理解。

    3. 参数表示

    • ai(j)→j层的第i个神经元的activation(激活??)
    • Θ(j)→由第j层到第j+1层的映射权重矩阵,这个矩阵的尺寸取决于j层和j+1层的单元数。
      若s(j)表示第j层的单元数,则Θ(j)的维度为:(s(j+1))*(s(j)+1)。s(j)+1,加的是偏置单元。

    前向传播

    其实与之前的回归差不多,但是之前是一次性把那么多特征纳入到一次训练中,而神经网络前向传播是把这个过程拆分给了多个层去完成,这样比较适合并行计算。

    四、应用

    1.非线性分类问题:XOR/XNOR

    XOR,异或
    XNOR<=>NOT(XOR)互斥反或
    都是非线性的


    XOR(红“x”为false,蓝“o”为true,如果图例反过来则表示XNOR)

    可以通过AND、OR、NAND、NOR这些线性的分类问题来构造

    AND

    令z=20x1+20x2-30
    h(z)=1/(1+e^(-z))
    注意!!这里我作图的时候把蓝色“x”当成false,红色“o”当成true,后面OR的图像又不一样了(懒得改了,意会即可)

    AND

    OR

    令z=20x1+20x2-10
    h(z)=1/1(e^(-z))
    蓝色“o”是true,红色“x”是false


    具体表格就不放了

    NOT x

    z=10-20x

    (NOT x1)AND(NOT x2)

    蓝色“o”是false,红色“x”是true

    终于,我们凑齐了XNOR的两种可能情况,一种是两个同为true(x1 AND x2),另一种是两个同为false((NOT x1)AND(NOT x2)),这是第一层到第二层;用OR将这两种情况(即两个节点)再关联起来,则会得到XNOR的结果,这是第二层到第三层。
    这样的XNOR的逻辑网络就总共有三层,包括bias unit,总共有7个节点

    xnor.PNG

    2.多分类

    one-vs-all
    之前在回归方法中就说过多分类,方法是一样的,最后输出的不是一个数字,而是一个向量,向量的模约等于1,为1的维度即对应着输入哪一类

    相关文章

      网友评论

          本文标题:【神经网络】表征

          本文链接:https://www.haomeiwen.com/subject/leqhdctx.html