2016-02-12 20 views
18

mi sono perso nel scikit imparare 0,18 manuale utente (http://scikit-learn.org/dev/modules/generated/sklearn.neural_network.MLPClassifier.html#sklearn.neural_network.MLPClassifier):Python scikit imparare MLPClassifier "hidden_layer_sizes"

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

Se Cerco solo 1 livello nascosto e 7 unità nascoste nel mio modello, dovrei mettere così? Grazie!

hidden_layer_sizes=(7, 1) 
+0

Un buon modo per essere certi è quello di verificare l'attributo 'coefs_' – user86895

risposta

23

hidden_layer_sizes=(7,) se si desidera solo 1 livello nascosto con 7 unità nascoste.

length = n_layers - 2 è perché si dispone di 1 livello di input e 1 livello di output.

+1

Grazie! Questa è la parte confusa. Cosa succede se sto cercando 3 livelli nascosti con 10 unità nascoste? hidden_layer_sizes = (10,1)? – Chubaka

+13

(10,10,10) se vuoi 3 livelli nascosti con 10 unità nascoste ciascuna. – Farseer

+0

Quindi la mia mancanza di informazioni è che il valore predefinito è di 1 livello nascosto con 100 unità nascoste ciascuna? Grazie! – Chubaka

0

So di essere in ritardo nel rispondere, ancora condividendo ...

Nel documento

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

significa: hidden_layer_sizes è una tupla di dimensioni (n_layers -2)

n_layers significa no dei livelli che vogliamo come per l'architettura.

Il valore 2 viene sottratto da n_layers perché due livelli (input & output) non fanno parte dei livelli nascosti, quindi non appartengono al conteggio.

predefinito (100,) significa che se non viene fornito alcun valore per hidden_layer_sizes, l'architettura predefinita avrà un livello di input, un livello nascosto con 100 unità e un livello di output.

Linea

L'esimo elemento rappresenta il numero di neuroni nello strato nascosto esimo.

significa che ogni voce in tupla appartiene al corrispondente livello nascosto.

Esempio:

  1. Per l'architettura 56: 25: 11: 7: 5: 3: 1 con l'ingresso 56 e 1 uscita livelli nascosti saranno (25: 11: 7: 5: 3) . Quindi tuple hidden_layer_sizes = (25,11,7,5,3,)

  2. Per architettura 3: 45: 2: 11: 2 con input 3 e 2 output i livelli nascosti saranno (45: 2: 11) . hidden_layer_sizes Così tuple = (45,2,11),

Spero che questo risponde la query in pieno ..

Problemi correlati