【问题标题】:Defining a seed value in Branscripts for CNTK sequential machine learning models在 Branscripts 中为 CNTK 顺序机器学习模型定义种子值
【发布时间】:2017-09-13 17:19:48
【问题描述】:

这是对 CNTK 大脑脚本的尊重。我通过 [1] 确定是否有指定随机种子值的选项,尽管我找不到任何(是的,有一个选项可以通过 ParameterTensor() 函数,但如果我遵循这种方法,我可能必须分别显式初始化所有 LSTM 权重(为输入层门、忘记层门等定义单独的权重),而不是使用如下的模型序列)。是否有任何其他选项可用于设置随机种子值,保留以下 RNN 分层序列。

nn_Train = {
  action = train
  BrainScriptNetworkBuilder = {
    model = Sequential (
      RecurrentLSTMLayer {$stateDim$, usePeepholes = true}:
      DenseLayer {$labelDim$, bias=false}                  
    )


    z = model (inputs)
    inputs=Input($inputDim$)  # features
    labels=Input($labelDim$)

    # loss and metric
    ce = SquareError(labels, z)

    # node assignment
    featureNodes    = (inputs)
    labelNodes      = (labels)
    criterionNodes  = (ce)
    evaluationNodes = (ce)
    outputNodes     = (z)
  }

[1]https://github.com/microsoft/cntk/wiki/Parameters-And-Constants#random-initialization

【问题讨论】:

    标签: deep-learning lstm cntk


    【解决方案1】:

    遗憾的是,参数没有全局随机种子选项。但是,您可以修改 cntk.exe 旁边的 cntk.core.bs 文件,其中定义了所有层以支持所需层的随机种子。

    【讨论】:

      猜你喜欢
      • 2021-09-21
      • 1970-01-01
      • 1970-01-01
      • 2020-09-29
      • 1970-01-01
      • 2016-10-27
      • 1970-01-01
      • 2022-12-10
      • 2018-05-27
      相关资源
      最近更新 更多