Python scikit 学习 MLPClassifier "hidden_layer_sizes"

Python scikit learn MLPClassifier "hidden_layer_sizes"

我迷失在 scikit learn 0.18 用户手册中 (http://scikit-learn.org/dev/modules/generated/sklearn.neural_network.MLPClassifier.html#sklearn.neural_network.MLPClassifier):

   hidden_layer_sizes : tuple, length = n_layers - 2, default (100,)
   The ith element represents the number of neurons in the ith hidden layer.

如果我在我的模型中只寻找 1 个隐藏层和 7 个隐藏单元,我应该这样放置吗?谢谢!

    hidden_layer_sizes=(7, 1)

hidden_layer_sizes=(7,) 如果你只想要 1 个隐藏层和 7 个隐藏单元。

length = n_layers - 2是因为你有1个输入层和1个输出层。

docs中:

hidden_layer_sizes : tuple, length = n_layers - 2, default (100,)

表示: hidden_layer_sizes 是一个大小为 (n_layers -2)

的元组

n_layers 表示没有我们想要的架构层。

值 2 从 n_layers 中减去,因为两层(输入和输出)不属于隐藏层,因此不属于计数。

default(100,) 表示如果没有为 hidden_layer_sizes 提供值,则默认架构将具有一个输入层、一个具有 100 个单元的隐藏层和一个输出层。

再次来自文档:

The ith element represents the number of neurons in the ith hidden layer.

表示元组中的每个条目都属于相应的隐藏层。

示例:

  1. 对于输入 56 和 1 输出的体系结构 56:25:11:7:5:3:1 隐藏层将是 (25:11:7:5:3)。所以元组 hidden_layer_sizes = (25,11,7,5,3,)

  2. 对于具有输入 3 和输出 2 的体系结构 3:45:2:11:2 隐藏层将是 (45:2:11)。所以元组 hidden_layer_sizes = (45,2,11,)