【问题标题】:gluon Sequential model: params return empty collection胶子顺序模型:参数返回空集合
【发布时间】:2019-04-21 18:18:30
【问题描述】:

我正在使用下面的代码来创建序列胶子模型。由于某种原因,属性参数返回一个空集合。

def build_net():
    net = gluon.nn.Sequential()
    with net.name_scope():
        net.add(gluon.nn.Dense(32, activation='relu'))
        net.add(gluon.nn.Dense(32, activation='relu'))
        net.add(gluon.nn.Dense(1))

    net.collect_params().initialize(mx.init.Normal(sigma=.1))
    return net

net_1 = build_net() 
print(net_1.params)

输出:

sequential0_ (

)

【问题讨论】:

    标签: python mxnet


    【解决方案1】:

    使用Sequential.collect_params(),它不仅收集这个Block参数,还收集所有子节点(例如图层)。

    【讨论】:

      【解决方案2】:

      使用collect_params() 返回一个包含此块及其所有子参数的ParameterDict

      def build_net():
          net = gluon.nn.Sequential()
          with net.name_scope():
              net.add(gluon.nn.Dense(32, activation='relu'))
              net.add(gluon.nn.Dense(32, activation='relu'))
              net.add(gluon.nn.Dense(1))
      
          net.initialize(mx.init.Normal(sigma=.1))
          return net
      
      net_1 = build_net() 
      print(net_1.collect_params())
      

      【讨论】:

        猜你喜欢
        • 2021-08-16
        • 1970-01-01
        • 1970-01-01
        • 2010-09-25
        • 1970-01-01
        • 2021-10-01
        • 1970-01-01
        • 2020-11-14
        • 2023-04-03
        相关资源
        最近更新 更多