Neural network 具有不同激活函数的神经网络层的向量运算 符号

Neural network 具有不同激活函数的神经网络层的向量运算 符号,neural-network,vectorization,Neural Network,Vectorization,在神经网络的前向传递中,任何一层的神经元都在做两个连续的操作 将所有权重与输入相乘,然后将结果累加[MAC阶段]并将结果放入定标器值net\u 应用F_act(net_)其中F_act是神经元激活功能。结果是定标器out\u v将被后继神经元消耗 神经元的方框图可以表示为下图 问题: 现在假设一个应用程序,确实需要一个每层具有不同激活函数的神经网络。这样,在每次向前传递时,每一层都将有一个该层所有神经元的净输出的向量,以及对该向量中的每个元素应用f_act 在所有层共享相同激活函数的情况下,

在神经网络的前向传递中,任何一层的神经元都在做两个连续的操作

  • 将所有权重与输入相乘,然后将结果累加[MAC阶段]并将结果放入定标器值
    net\u
  • 应用
    F_act(net_)
    其中
    F_act
    是神经元激活功能。结果是定标器
    out\u v
    将被后继神经元消耗
  • 神经元的方框图可以表示为下图

    问题: 现在假设一个应用程序,确实需要一个每层具有不同激活函数的神经网络。这样,在每次向前传递时,每一层都将有一个该层所有神经元的
    净输出的
    向量,以及对该向量中的每个元素应用
    f_act

    • 在所有层共享相同激活函数的情况下,应将激活函数映射到单个向量操作中
      SIMD
    • 但是,如果每个神经元(或一组神经元)都有自己的激活功能,那该怎么办;这种情况下的实现速度会比单一激活功能情况慢得多吗
    我相信它会更慢,因为无论何时应用
    f_-act
    我们都需要调用多个向量操作[每个
    f_-act
    ]调用一个向量操作]


    我说得对吗?或者为每个
    f_act
    调用向量操作的开销非常小,可以忽略?

    性能将类似。这取决于激活功能的复杂程度。这还取决于您将使用哪种编程语言或ANN框架。性能将相似。这取决于激活功能的复杂程度。它还取决于您将使用哪种编程语言或ANN框架。