zoukankan      html  css  js  c++  java
  • cFSMN和FSMN参数规模对比分析

    1. FSMN参数规模分析

           (1)分析前提

    1. 假设隐藏层单元规模都为n
    2. 只分析前向t个时刻的结构,即暂时不考虑双向的结构
    3. 只分析向量系数编码,即vFSMN,暂时不考虑sFSMN

           (2)结构图回顾

           (3)公式回顾

    [vec{ ilde{h}_t^l} = sum_{i=0}^{N}vec{a_i^l}odotvec{h_{t-i}^l},in...vFSMN ]

    [A^l ={ vec{a_0^l},vec{a_1^l},...,vec{a_N^l}},in...vFSMN ]

    [vec{h_t^{l+1}} =f(W^lvec{h_t^l}+ ilde{W}^lvec{ ilde{h}_t^l} +vec{b^l} ) ]

           (4)参数规模分析

    由第一个公式和第二个,可知这一部分的参数规模为:n × t

    由第三个公式,可知这一部分的参数规模为:n × n + n × n

    所以总的参数规模为:n × n + n × n + n × t



    2. cFSMN参数规模分析

           (1)分析前提

    1. 与FSMN的分析前提完全一致
    2. 假设投影层的投影矩阵是x × n维的

           (2)结构图回顾

           (3)公式回顾

    [vec{p_t^l} =V^lvec{h_t^l}+vec{b^l} ]

    [vec{ ilde{p}_t^l} = vec{p_t^l}+sum_{i=0}^{N}vec{a_i^l}odot vec{p_{t-i}^l} ]

    [vec{h_t^{l+1}} =f(U^lvec{ ilde{p}_t^l} +vec{b^l} ) ]

           (4)参数规模分析

    由第一个公式和假设,可知这一部分的参数规模为:x × n

    由第二个公式,可知这一部分的参数规模为:x × t

    由第三个公式,可知这一部分的参数规模为:x × n

    所以总的参数规模为:n × x + n × x+ x × t



    3. 对比

    FSMN的参数规模为:n × n + n × n + n × t

    cFSMN的参数规模为:n × x + n × x+ x × t

    所以:cFSMN相比于FSMN,减少的参数规模为: (2n+t) × (n-x)

    进一步的,实际上n很大,可以忽略t的影响,所以上式可以近似为:2n × (n-x)

    可以看到,如果取xn的一半,较少的参数规模就是n2

    近似分析的结果,就是参数规模可以减少的量级为:O(n2)

  • 相关阅读:
    hdu 2050 折线分割平面 递推
    hdu 2044 一只小蜜蜂 斐波那契数列 递推
    hdu 2018 母牛的故事 递推
    hdu 2084 数塔 dp 动态规划
    Linux 常用协议结构体及详解
    【ArcEngine入门与提高】Element(元素)、Annotation(注记)旋转
    AO总结10:MapControl控件
    esriControlsMousePointer 控制鼠标指针
    图解VS2010打包全过程(转)
    ArcEngine中打开各种数据源(WorkSpace)的连接(转)
  • 原文地址:https://www.cnblogs.com/machine-lyc/p/10672111.html
Copyright © 2011-2022 走看看