Как определяется размер скрытого слоя для MLPRegressor в SciKitLearn? - PullRequest
0 голосов
/ 22 апреля 2019

Допустим, я создаю нейронную сеть, используя следующий код:

from sklearn.neural_network import MLPRegressor

model = MLPRegressor(
  hidden_layer_sizes=(100,),
  activation='identity'
)
model.fit(X_train, y_train)

Для hidden_layer_sizes я просто устанавливаю его по умолчанию.Однако я не очень понимаю, как это работает.Какое количество скрытых слоев в моем определении?Это 100?

1 Ответ

1 голос
/ 22 апреля 2019

Из документов :

hidden_layer_sizes: кортеж, длина = n_layers - 2, по умолчанию (100,)

i-й элемент представляет количество нейронов в i-м скрытом слое.

Это length = n_layers - 2, потому что количество ваших скрытых слоев - это общее количество слоев n_layers минус 1 для вашего входного слоя, минус 1 для вашего выходного слоя.

В вашем (по умолчанию) случае (100,) это означает один скрытый слой из 100 единиц (нейронов).

Для 3 скрытых слоев, скажем, 100, 50 и 25 единиц соответственно, это будет

hidden_layer_sizes = (100, 50, 25)

См. Пример в документации (это для MLPClassifier, но логика идентична).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...