zoukankan      html  css  js  c++  java
  • Kaldi的nnet2 Component

    FixedAffineComponent:类 LDA-like 的非相关转换,由标准的 weight matrix plus bias 组成(即Wx+b),通过标准的 stochastic gradient descent(非minibatch SGD?) 训练而来,使用 global learning rate

    AffineComponentPreconditionedOnline:为 FixedAffineComponent 的一种提炼,训练过程中不仅使用global learning rate,还使用 matrix-valued learning rate(矩阵形式的学习率)来预处理梯度下降。参见 dnn2_preconditioning

    PnormComponent:为非线性,传统的神经网络模型中使用 TanhComponent

    NormalizeComponent:用于稳定训练 p-norm 网络,它是固定的,非可训练,非线性的。它不是在个别 individual activations(即个别结点的激活) 上起作用,而是对单帧的整个 vector 起作用,重新使它们单位标准化。

    SoftmaxComponent:为最终的非线性特征,便于输出标准概率

       

    SpliceComponent: 定义了完成 feature-frame-splicing 的窗口尺寸

    FixedAffineComponent:类 LDA-like 的非相关转换,由标准的 weight matrix plus bias 组成(即Wx+b),通过标准的 stochastic gradient descent(非minibatch SGD?) 训练而来,使用 global learning rate

    AffineComponentPreconditionedOnline:为 FixedAffineComponent 的一种提炼,训练过程中不仅使用global learning rate,还使用 matrix-valued learning rate(矩阵形式的学习率)来预处理梯度下降。参见 dnn2_preconditioning

    PnormComponent:为非线性,传统的神经网络模型中使用 TanhComponent

    NormalizeComponent:用于稳定训练 p-norm 网络,它是固定的,非可训练,非线性的。它不是在个别 individual activations(即个别结点的激活) 上起作用,而是对单帧的整个 vector 起作用,重新使它们单位标准化。

    SoftmaxComponent:为最终的非线性特征,便于输出标准概率

       

    • SigmoidComponent
      • dim
    • TanhComponent
      • dim
    • PowerComponent
      • power
      • dim
      • input-dim
    • SoftmaxComponent
      • 与目标训练集无关
      • dim
    • LogSoftmaxComponent
      • dim
    • RectifiedLinearComponent
      • dim
    • NormalizeComponent
      • 归一化层,对输入进行归一化。网络训练过程中,输入特征是一个mini-batch,即包含多个特征向量的矩阵。归一化层会对这个mini-batch进行归一化。该组员只有一个参数,与目标训练集无关
      • 用于稳定训练 p-norm 网络,它是固定的,非可训练,非线性的。它不是在个别 individual activations(即个别结点的激活) 上起作用,而是对单帧的整个 vector 起作用,重新使它们单位标准化。
      • dim
        • 输入特征维度
    • SoftHingeComponent
      • dim
    • PnormComponent
      • 该组员只有3个参数,输入输出位数依赖于上下层,参数p是固定的,与目标训练集无关
      • 为非线性,传统的神经网络模型中使用 TanhComponent
      • output-dim
        • 输出维数一般是输入维数是十分之一,如:

          pnorm_input_dim=3000

          pnorm_output_dim=300

      • input-dim
      • p
    • MaxoutComponent
      • output-dim
      • input-dim
    • ScaleComponent
      • dim
      • scale
    • AffineComponent
      • learning-rate // optional.
      • 如果指定了matrix,则从matrix中读取仿射变换
        • matrix
        • input-dim // optional.必须与matrix匹配
        • output-dim // optional.必须与matrix匹配
      • 如果没有指定matrix,则新建一个仿射变换
        • param-stddev
          • parameter standard deviation,权值的标准差
          • 将参数的标注差限制在一个范围内,防止参数变化过大,该方法有利于防止over-fitting
        • bias-stddev
          • bias standard deviation,偏置的标准差
          • 将偏置的标准差限制在一个范围内,防止偏置变化过大,该方法有利于防止over-fitting
        • input-dim
        • output-dim
    • AffineComponentPreconditioned
      • learning-rate // optional.
      • alpha //Precondition
      • max-change //Precondition
      • 如果指定了matrix,则从matrix中读取仿射变换
        • matrix
        • input-dim // optional.必须与matrix匹配
        • output-dim // optional.必须与matrix匹配
      • 如果没有指定matrix,则新建一个仿射变换
        • param-stddev
          • parameter standard deviation,权值的标准差
          • 将参数的标注差限制在一个范围内,防止参数变化过大,该方法有利于防止over-fitting
        • bias-stddev
          • bias standard deviation,偏置的标准差
          • 将偏置的标准差限制在一个范围内,防止偏置变化过大,该方法有利于防止over-fitting
        • input-dim
        • output-dim
    • AffineComponentPreconditionedOnline
      • 全连接层的权重参数层,在kaldi的表示中,一层网络被拆分成权重层和后面的非线性变换层,其中权重层保存了网络的连接参数W,这些参数是可以改变的,而后面的非线性变换层(如下面的SoftmaxComponent)是固定的。
      • FixedAffineComponent 的一种提炼,训练过程中不仅使用global learning rate,还使用 matrix-valued learning rate(矩阵形式的学习率)来预处理梯度下降。参见 dnn2_preconditioning
      • learning-rate // optional.
      • num-samples-history
      • alpha //Precondition
      • max-change-per-sample //Precondition
      • rank-in //Online
      • rank-out //Online
      • update-period //Online
      • 如果指定了matrix,则从matrix中读取仿射变换
        • matrix
        • input-dim // optional.必须与matrix匹配
        • output-dim // optional.必须与matrix匹配
      • 如果没有指定matrix,则新建一个仿射变换
        • param-stddev
          • parameter standard deviation,权值的标准差
          • 将参数的标注差限制在一个范围内,防止参数变化过大,该方法有利于防止over-fitting
        • bias-stddev
          • bias standard deviation,偏置的标准差
          • 将偏置的标准差限制在一个范围内,防止偏置变化过大,该方法有利于防止over-fitting
        • input-dim
        • output-dim
    • SumGroupComponent
      • sizes
    • BlockAffineComponent
      • learning-rate // optional.
      • input-dim
      • output-dim
      • num-blocks
      • param-stddev
        • parameter standard deviation,权值的标准差
        • 将参数的标注差限制在一个范围内,防止参数变化过大,该方法有利于防止over-fitting
      • bias-stddev
        • bias standard deviation,偏置的标准差
        • 将偏置的标准差限制在一个范围内,防止偏置变化过大,该方法有利于防止over-fitting
    • BlockAffineComponentPreconditioned
      • learning-rate // optional.
      • alpha //Precondition
      • input-dim
      • output-dim
      • num-blocks
      • param-stddev
        • parameter standard deviation,权值的标准差
        • 将参数的标注差限制在一个范围内,防止参数变化过大,该方法有利于防止over-fitting
      • bias-stddev
        • bias standard deviation,偏置的标准差
        • 将偏置的标准差限制在一个范围内,防止偏置变化过大,该方法有利于防止over-fitting
    • PermuteComponent
      • dim
    • DctComponent
      • dim
      • dct-dim
      • reorder
      • dct-keep-dim
    • FixedLinearComponent
      • matrix
    • FixedAffineComponent
      • LDA-like 的非相关转换,由标准的 weight matrix plus bias 组成(即Wx+b),通过标准的 stochastic gradient descent(非minibatch SGD?) 训练而来,使用 global learning rate
      • matrix
    • FixedScaleComponent
      • 固定激活重调组员
      • 该组员位于SoftmaxComponent之前,维数与SoftmaxComponent相同,都是Senone的个数,该组员的参数是一个先验概率向量,其中第i个元素是第i个Senone在所有对齐($alidir/ali.*.gz)中出现的概率(Senone i出现次数/所有Senone所有出现次数)
      • scales,先验概率参数,需要从对齐($alidir/ali.*.gz)和模型($alidir/final.mdl)中获取
    • FixedBiasComponent
      • bias
    • SpliceComponent
      • 对输入特征进行左右展开,目的是为了让网络能够获取到帧间特征的关联性。例如我要识别当前帧是哪个triphone,我可以将当前帧之前5帧和当前帧以后5帧一起构成一个由11个帧组成的特征作为网络输入。
      • 定义了完成 feature-frame-splicing 的窗口尺寸
      • input-dim
      • context
      • left-context
      • right-context
      • const-component-dim = 0
    • SpliceMaxComponent
      • dim
      • context
      • left-context
      • right-context
    • DropoutComponent
      • dim
      • dropout-proportion
      • dropout-scale
    • AdditiveNoiseComponent
      • dim
      • stddev
    • Convolutional1dComponent
      • learning-rate
      • appended-conv
      • patch-dim
        • 卷积核的大小(维度)
      • patch-step = 1
        • 卷积核的每次步进大小,若大于patch-dim,则卷积运算没有重叠部分。
      • patch-stride
        • 卷积层会将输入向量特征转换成二维矩阵(类似于图像)进行卷积,该值确定了二维矩阵的行数,同时,卷积核也受该值的影响。
        • 以kaldi提供核心代码为例:
        • 第一个卷积层输入是一个36*3*11的一维特征向量,令该值等于fbank不包含差分特征的维度(即36),则输入特征向量可转换成一个36*33的特征矩阵,再利用卷积核(7*33)进行卷积。
        • 第二个卷积层的输入是池化层的输出,令该值等于输入的维度,则转换成的特征矩阵仍然是原来的向量。
      • 如果指定了matrix,则从matrix中读取仿射变换
        • matrix
        • input-dim
          • optional.必须与matrix匹配
        • output-dim
          • optional.必须与matrix匹配
      • 如果没有指定matrix,则新建一个仿射变换
        • param-stddev
          • parameter standard deviation,权值的标准差
          • 将参数的标注差限制在一个范围内,防止参数变化过大,该方法有利于防止over-fitting
        • bias-stddev
          • bias standard deviation,偏置的标准差
          • 将偏置的标准差限制在一个范围内,防止偏置变化过大,该方法有利于防止over-fitting
        • input-dim
        • output-dim
      • // propagation function
      • /*
      • In Convolution1dComponent, filter is defined $num-filters x $filter-dim,
      • and bias vector B is defined by length $num-filters. The propatation is
      • Y = X o A' + B
      • where "o" is executing matrix-matrix convolution, which consists of a group
      • of vector-matrix convolutions.
      • For instance, the convolution of X(t) and the i-th filter A(i) is
      • Y(t,i) = X(t) o A'(i) + B(i)
      • The convolution used here is valid convolution. Meaning that the
      • output of M o N is of dim |M| - |N| + 1, assuming M is not shorter then N.
      • By default, input is arranged by
      • x (time), y (channel), z(frequency)
      • and output is arranged by
      • x (time), y (frequency), z(channel).
      • When appending convolutional1dcomponent, appended_conv_ should be
      • set ture for the appended convolutional1dcomponent.
      • */
    • MaxpoolingComponent
      • 池化层Component,该层会对卷积的特征进行最大化池化,即在一个范围内(池化面积)从同一个卷积核的输出选取最大的一个作为下一层的输入,池化核不重叠。池化的好处除了能够降维以外,更重要的一点是能够去除输入特征中的一些扰动。
      • input-dim
      • output-dim
      • pool-size
        • 池化面积
      • pool-stride
        • 池化范围,此处与卷积层相同,会将向量转换成矩阵进行处理。
      • /*
      • Input and output of maxpooling component is arranged as
      • x (time), y (frequency), z (channel)
      • for efficient pooling.
      • */

       

  • 相关阅读:
    MySql不允许对同一张表同时进行查询和更新
    MysSql 显示不了中文、乱码问题
    SpringBoot参数访问
    那些年我看过的好文
    关于远程调试
    算法题
    Spring Boot 注解学习
    linux 设置ssh免密登录
    ORA各种错误
    listener.ora tnsnames.ora
  • 原文地址:https://www.cnblogs.com/JarvanWang/p/7499600.html
Copyright © 2011-2022 走看看