Componente Rete neurale a due classi

Questo articolo descrive un componente nella finestra di progettazione di Azure Machine Learning.

Usare questo componente per creare un modello di rete neurale che può essere usato per stimare una destinazione con solo due valori.

La classificazione tramite reti neurali è un metodo di apprendimento supervisionato e pertanto richiede un set di dati con tag, che include una colonna etichetta. Ad esempio, è possibile usare questo modello di rete neurale per stimare i risultati binari, ad esempio se un paziente presenta una determinata malattia o se è probabile che un computer abbia esito negativo entro un intervallo di tempo specificato.

Dopo aver definito il modello, eseguirne il training specificando un set di dati con tag e il modello come input per il training del modello. Il modello sottoposto a training può quindi essere usato per stimare i valori per i nuovi input.

Altre informazioni sulle reti neurali

Una rete neurale è un set di livelli interconnessi. Gli input sono il primo livello e sono collegati a un livello di output da un grafico aciclico costituito da bordi e nodi ponderati.

Tra i livelli di input e output è possibile inserire più livelli nascosti. La maggior parte delle attività predittive può essere eseguita facilmente con uno o pochi livelli nascosti. Tuttavia, recenti ricerche hanno dimostrato che le reti neurali profonde (DNN) con molti livelli possono essere efficaci in attività complesse, ad esempio il riconoscimento di immagini o di riconoscimento vocale. I livelli successivi vengono usati per modellare livelli crescenti di profondità semantica.

La relazione tra input e output viene appresa dal training della rete neurale sui dati di input. La direzione del grafico procede dagli input attraverso il livello nascosto e al livello di output. Tutti i nodi di un livello sono collegati dai bordi ponderati ai nodi nel livello successivo.

Per calcolare l'output della rete per un determinato input, viene calcolato un valore in ogni nodo nei livelli nascosti e nel livello di output. Il valore viene impostato calcolando la somma ponderata dei valori dei nodi del livello precedente. A tale somma ponderata viene quindi applicata una funzione di attivazione.

Modalità di configurazione

  1. Aggiungere il componente Rete neurale a due classi alla pipeline. È possibile trovare questo componente in Machine Learning, Inizializza nella categoria Classificazione .

  2. Specificare la modalità di training del modello impostando l'opzione Crea modalità di training.

    • Singolo parametro: scegliere questa opzione se si conosce già come si vuole configurare il modello.

    • Intervallo di parametri: se non si è certi dei parametri migliori, è possibile trovare i parametri ottimali usando il componente Ottimizza iperparametri del modello. È possibile fornire un intervallo di valori e il formatore esegue l'iterazione su più combinazioni delle impostazioni per determinare la combinazione di valori che producono il risultato migliore.

  3. Per Specifica livello nascosto selezionare il tipo di architettura di rete da creare.

    • Caso completamente connesso: usa l'architettura di rete neurale predefinita, definita per le reti neurali a due classi come indicato di seguito:

      • Ha un livello nascosto.

      • Il livello di output è completamente connesso al livello nascosto e il livello nascosto è completamente connesso al livello di input.

      • Il numero di nodi nel livello di input è uguale al numero di funzionalità nei dati di training.

      • Il numero di nodi nel livello nascosto viene impostato dall'utente. Il valore predefinito è 100.

      • Il numero di nodi è uguale al numero di classi. Per una rete neurale a due classi, significa che tutti gli input devono essere mappati a uno dei due nodi nel livello di output.

  4. Per Frequenza di apprendimento, definire le dimensioni del passaggio eseguito in ogni iterazione, prima della correzione. Un valore maggiore per la frequenza di apprendimento può causare una convergenza più rapida del modello, ma può superare i minimi locali.

  5. Per Numero di iterazioni di apprendimento, specificare il numero massimo di volte in cui l'algoritmo deve elaborare i case di training.

  6. Per Il diametro dei pesi di apprendimento iniziale, specificare i pesi del nodo all'inizio del processo di apprendimento.

  7. Per Il momento specificare un peso da applicare durante l'apprendimento ai nodi delle iterazioni precedenti

  8. Selezionare l'opzione Shuffle examples (Esempi casuali) per ri shuffle case tra iterazioni. Se si deseleziona questa opzione, i case vengono elaborati esattamente nello stesso ordine ogni volta che si esegue la pipeline.

  9. Per Valore di inizializzazione numero casuale digitare un valore da usare come valore di inizializzazione.

    Specificare un valore di inizializzazione è utile quando si vuole garantire la ripetibilità tra le esecuzioni della stessa pipeline. In caso contrario, come valore di clock di sistema viene usato come valore di inizializzazione, che può causare risultati leggermente diversi ogni volta che si esegue la pipeline.

  10. Aggiungere un set di dati etichettato alla pipeline ed eseguire il training del modello:

    • Se si imposta Create trainer mode (Crea modalità trainer) su Single Parameter (Parametro singolo), connettere un set di dati con tag e il componente Train Model (Train Model ).

    • Se si imposta La modalità di training su Intervallo di parametri, connettere un set di dati con tag ed eseguire il training del modello usando Ottimizzazione degli iperparametri del modello.

    Nota

    Se si passa un intervallo di parametri a Train Model, viene usato solo il valore predefinito nell'elenco dei singoli parametri.

    Se si passa un singolo set di valori di parametro al componente Tune Model Hyperparameters , quando prevede un intervallo di impostazioni per ogni parametro, ignora i valori e usa i valori predefiniti per lo strumento di apprendimento.

    Se si seleziona l'opzione Intervallo di parametri e si immette un singolo valore per qualsiasi parametro, tale singolo valore specificato viene usato durante lo sweep, anche se altri parametri cambiano in un intervallo di valori.

  11. Inviare la pipeline.

Risultati

Al termine del training:

  • Per salvare uno snapshot del modello sottoposto a training, selezionare la scheda Output nel pannello destro del componente Train model (Esegui training modello). Selezionare l'icona Registra set di dati per salvare il modello come componente riutilizzabile.

  • Per usare il modello per l'assegnazione dei punteggi, aggiungere il componente Score Model a una pipeline.

Passaggi successivi

Vedere il set di componenti disponibili per Azure Machine Learning.