Main Content

La traduzione di questa pagina non è aggiornata. Fai clic qui per vedere l'ultima versione in inglese.

patternnet

Genera una rete di pattern recognition

Descrizione

esempio

net = patternnet(hiddenSizes,trainFcn,performFcn) restituisce una rete neurale di pattern recognition con una dimensione del livello nascosto di hiddenSizes, una funzione di addestramento, specificata da trainFcn e una funzione di performance specificata da performFcn.

Le reti di pattern recognition sono reti feed-forward che possono essere addestrate per classificare gli input in base a classi target. I dati target per le reti di pattern recognition dovrebbero essere costituiti da vettori con tutti valori nulli, eccetto per 1 elemento i, dove i è la classe che devono rappresentare.

Esempi

comprimi tutto

Questo esempio mostra come progettare una rete pattern recognition per classificare i fiori di iris.

Caricare i dati di addestramento.

[x,t] = iris_dataset;

Costruire una rete di pattern con un livello nascosto di dimensione 10.

net = patternnet(10);

Addestrare la rete net utilizzando i dati di addestramento.

net = train(net,x,t);

Figure Neural Network Training (23-Mar-2023 10:42:05) contains an object of type uigridlayout.

Visualizzare la rete addestrata.

view(net)

Stimare i target utilizzando la rete addestrata.

y = net(x);

Valutare la performance della rete addestrata. La funzione di performance predefinita è l'errore quadratico medio.

perf = perform(net,t,y)
perf = 0.0302
classes = vec2ind(y);

Argomenti di input

comprimi tutto

Dimensione dei livelli nascosti nella rete, specificata come un vettore di riga. La lunghezza del vettore determina il numero di livelli nascosti nella rete.

Esempio Ad esempio, è possibile specificare una rete con 3 livelli nascosti, dove la dimensione del primo livello nascosto è 10, del secondo è 8 e del terzo è 5, come segue: [10,8,5]

Le dimensioni di input e di output sono impostate su zero. Il software regola le dimensioni di quest’ultime durante l’addestramento, in base ai dati di addestramento.

Tipi di dati: single | double

Nome della funzione di addestramento, specificato come uno dei seguenti.

Funzione di addestramentoAlgoritmo
'trainlm'

Levenberg-Marquardt

'trainbr'

Regolarizzazione bayesiana

'trainbfg'

Quasi-Newton BFGS

'trainrp'

Retropropagazione resiliente

'trainscg'

Gradiente coniugato scalato

'traincgb'

Gradiente coniugato con ripartenze Powell/Beale

'traincgf'

Gradiente coniugato di Fletcher-Powell

'traincgp'

Gradiente coniugato di Polak-Ribiére

'trainoss'

Secante a un passaggio

'traingdx'

Velocità di apprendimento variabile a discesa del gradiente

'traingdm'

Discesa del gradiente con momento

'traingd'

Discesa del gradiente

Esempio Ad esempio, è possibile specificare l'algoritmo di discesa del gradiente della velocità di apprendimento variabile come algoritmo di addestramento, come segue: 'traingdx'

Per ulteriori informazioni sulle funzioni di addestramento, vedere Train and Apply Multilayer Shallow Neural Networks e Choose a Multilayer Neural Network Training Function.

Tipi di dati: char

Funzione di performance. Il valore predefinito è 'crossentropy'.

Questo argomento definisce la funzione utilizzata per misurare la performance della rete. La funzione di performance viene utilizzata per calcolare la performance della rete durante l'addestramento.

Per un elenco delle funzioni, nella finestra di comando MATLAB, digitare help nnperformance.

Argomenti di output

comprimi tutto

Rete neurale di pattern recognition, restituita come un oggetto network.

Cronologia versioni

Introdotto in R2010b