【问题标题】:Pytorch - how to extract features of an MLP network (weights, biases, number of nodes, hidden layers)? [closed]Pytorch - 如何提取 MLP 网络的特征(权重、偏差、节点数、隐藏层)? [关闭]
【发布时间】:2020-02-02 00:01:58
【问题描述】:

我有兴趣从 pytorch 中构建的 MLP/神经网络中提取权重、偏差、节点数和隐藏层数。我想知道是否有人能指出我正确的方向?

非常感谢,

最大

【问题讨论】:

  • 我已经发布了答案,请查看

标签: python machine-learning neural-network artificial-intelligence pytorch


【解决方案1】:

是的,我们可以通过首先创建一个简单的网络来满足您的需求:

input_dim = 400
hidden_dim = 512

net = nn.Sequential(nn.Linear(input_dim, hidden_dim),
                      nn.Sigmoid())

print(net)

当我们打印网络时,我们会了解层数、节点数(out_features)以及许多其他细节:

Sequential(
  (0): Linear(in_features=400, out_features=512, bias=True)
  (1): Sigmoid()
)

如果你想加载每个参数的具体值,你也可以打印出来

model = Net(400, 512,10)

bias = model.fc1.bias

print(bias)

输出是:

tensor([ 3.4078e-02,  3.1537e-02,  3.0819e-02,  2.6163e-03,  2.1002e-03,
         4.6842e-05, -1.6454e-02, -2.9456e-02,  2.0646e-02, -3.7626e-02,
         3.5531e-02,  4.7748e-02, -4.6566e-02, -1.3317e-02, -4.6593e-02,
        -8.9996e-03, -2.6568e-02, -2.8191e-02, -1.9806e-02,  4.9720e-02,
        ---------------------------------------------------------------
        -4.6214e-02, -3.2799e-02, -3.3605e-02, -4.9720e-02, -1.0293e-02,
         3.2559e-03, -6.6590e-03, -1.2456e-02, -4.4547e-02,  4.2101e-02,
        -2.4981e-02, -3.6840e-03], requires_grad=True)

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-01
    • 2012-03-15
    • 2019-07-31
    • 2020-04-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-29
    • 2021-07-15
    相关资源
    最近更新 更多