Значение атрибута n_layers_ в sklearn.neural_network.MLPClassifier - PullRequest
0 голосов
/ 17 сентября 2018

Я обучил модель, используя sklearn.neural_network.MLPClassifier, и я хочу знать, сколько слоев в моем классификаторе. Результат показывает:

>>from sklearn.neural_network import MLPClassifier
>>clf = MLPClassifier()  
>>clf = clf.fit(train_matrix,train_label)
>>clf.n_layers_
>>3

В документе указан атрибут n_layers_ означает:

Количество слоев

Доза означает, что это скрытый слой или есть три скрытых слоя?

1 Ответ

0 голосов
/ 17 сентября 2018

n_layers_ обозначает все слои в нейронной сети, которые включают

  1. Входной слой = 1
  2. Все скрытые слои = len(hidden_layer_sizes)
  3. Выходной слой= 1

Таким образом, если вы инициализировали классификатор как

clf = MLPClassifier()

По умолчанию hidden_layer_sizes param = (100,), поэтому количество скрытых слоев = 1.

Таким образом, общее количество слоев = 1 + 1 + 1 = 3 по мере получения.

Если вместо этого вы инициализировали его как:

clf = MLPClassifier(hidden_layer_sizes=(100,100,))

Теперь количество скрытых слоев = 2, так чтовсего слоев = 4

...