STATISTICA







STATISTICA Reti Neurali Automatizzate
STATISTICA Automated Neural Networks (SANN)



Migrazione da STATISTICA Reti Neurali (SNN) Versione 7 a STATISTICA Reti Neurali Automatizzate Versione 8 (SANN)

Negli ultimi vent'anni vi è stata un'esplosione d'interesse nei confronti delle reti neurali. Tutto è iniziato con l'applicazione di questa potente tecnica in una grande varietà di problematiche, in aree tanto diverse quali la finanza, la medicina, l'ingegneria, la geologia e la fisica (si vedano le Applicazioni d'Esempio). STATISTICA Reti Neurali Automatizzate (SANN) è una delle più avanzate e meglio funzionanti applicazioni a reti neurali disponibili sul mercato. Questo strumento offre un numero di vantaggi unici e sarà di estrema utilità non solo per gli utenti esperti nel calcolo neurale (grazie alla grande selezione di tipi di rete e di algoritmi di addestramento disponibili), ma anche per gli utenti totalmente privi di conoscenze di calcolo con reti neurali (esiste Ricerca Automatica di Reti, uno strumento che guida l'utente attraverso le procedure necessarie per la creazione di reti neurali).


STATISTICA Reti Neurali Automatizzate - descrizione tecnica



STATISTICA Reti Neurali Automatizzate è un pacchetto d'analisi di reti neurali completo, allo stato dell'arte, potente, ed estremamente rapido, comprendente di:

  • Pre e Post Elaborazione Integrate, incluso selezione di dati, decodifica di valori nominali, scala, normalizzazione, e sostituzione di dati mancanti, con interpretazione di problemi di classificazione, di regressione e di serie storiche.
  • Eccezionale facilità d'uso accoppiata con potenza analitica senza eguali; ad esempio Ricerca Automatica di Reti (ANS) guida l'utente passo-per-passo lungo tutta la procedura per la creazione di una varietà di reti differenti caratterizzate dalla migliore performance (approccio che potrebbe essere considerato di "prova-e-controlla" basato su un solito background teorico).
  • Algoritmi di addestramento altamente ottimizzati (Conjugate Gradient Descent e BFGS); controllo completo su tutti gli aspetti che influenzano la prestazione di rete quali le funzioni di attivazione, le funzioni d'errore od il livello di complessità della rete.
  • Supporto per combinazioni di reti ed architetture di reti di dimensioni praticamente illimitate in insiemi di reti per la formazione di ensemble.
  • Feedback completo da un punto di vista grafico e statistico che facilita le analisi esplorative interattive.
  • Integrazione completa con il sistema STATISTICA; tutti i risultati, grafici, report, ecc., possono venire ulteriormente modificati attraverso i potenti strumenti grafici e analitici di STATISTICA (ad esempio, per l'esecuzione di ulteriori analisi dei residui di previsione, per la generazione di report riassuntivi, e così via).
  • Integrazione completa con gli strumenti di automazione di STATISTICA; registrazione di macro complete per tutte le analisi; analisi personalizzate e applicazioni di reti neurali sviluppate in STATISTICA Visual Basic; chiamate di STATISTICA Reti Neurali Automatizzate da qualsiasi applicazione che supporta Component Object Model (COM; ad es., esecuzione automatica di analisi di reti neurali in fogli di lavoro di Microsoft Excel, o incorporazione di procedure di reti neurali nelle proprie applicazioni personalizzate sviluppate in C, C++, C#, Java, ecc.).

STATISTICA Reti Neurali Automatizzate - Principali Aspetti da affrontare nel Calcolo Neurale

L’utilizzo di reti neurali comporta più della semplice specificazione dei dati da sottoporre alla rete neurale.

STATISTICA Reti Neurali Automatizzate (SANN) dispone di funzionalità che assistono l’utente nella definizione delle fasi critiche della progettazione, incluse non solo complesse Architetture di Reti Neurali ed Algoritmi di Addestramento, ma anche nuovi approcci innovativi alla progettazione delle architetture di reti quali ad esempio la possibilità di definire specifiche funzioni d’errore che consentano l’interpretazione dei risultati di output. Inoltre, gli sviluppatori e gli utenti che sono soliti eseguire esperimenti con applicazioni personalizzate apprezzeranno la possibilità, una volta terminate le proprie sperimentazioni con l’uso della semplice interfaccia utente di STATISTICA Reti Neurali Automatizzate, di incorporare le analisi con reti neurali in applicazioni personalizzate attraverso l’uso della libreria di funzioni COM integrata in STATISTICA (che espone tutte le funzionalità del programma) oppure usando il codice C/C++ generato dal programma in vista del deployment di reti addestrate.

Torna al Principio


Dati di Input

STATISTICA Reti Neurali Automatizzate è completamente integrato con il sistema STATISTICA, quindi in questo modo sarà disponibile per l’analisi una grande selezione di strumenti per la modifica (preparazione) dei dati (trasformazioni, condizioni di selezione dei casi, strumenti di verifica dei dati, ecc.). Come tutte le analisi di STATISTICA, il programma può essere “connesso” a database remoti attraverso gli strumenti specializzati nell’elaborazione in-loco di database, oppure potrà essere collegato ai dati attivi in modo che i modelli possano venire riaddestrati od eventualmente applicati (ad esempio, per il calcolo di valori previsti o di classificazioni) automaticamente ogni volta che i dati cambiano.

Torna al Principio


Scala dei Dati e Preparazione dei Valori Nominali

In generale, i dati devono venire specificamente preparati per essere sottoposti come input alle reti neurali, ed è inoltre importante che l’output di rete possa essere interpretato correttamente. STATISTICA Reti Neurali Automatizzate (SANN) include funzionalità automatiche di scala sia per gli input che per gli output; sono inoltre disponibile funzioni di ricodifica automatica delle variabili contenenti valori Nominali (ad es., Sesso = [Maschio, Femmina]), quali ad esempio la ricodifica uno-di-N. SANN presenta inoltre funzionalità per la gestione dei dati mancanti. Sono inoltre disponibili speciali funzionalità per la preparazione e l’interpretazione dei dati per l’uso di Serie Storiche.

Per i problemi di classificazione, SANN assegna casi alle appartenenze di classe ed interpreta gli output della rete come probabilità reali. In combinazione con la funzione specializzata di attivazione Softmax e con le funzioni d’errore ad entropia incrociata, questo modulo supporta per la classificazione un approccio probabilistico.

Torna al Principio


Selezione di un Modello di Rete Neurale, Ensemble di Reti Neurali

La varietà di modelli di reti neurali e di parametri tra le quali scegliere (inclusi la dimensione della rete ed i parametri di controllo degli algoritmi di addestramento) può sembrare sconcertante [Ricerca Automatica di Reti (ANS) consente una ricerca automatica attraverso numerose architetture di rete caratterizzate da diversi livelli di complessità; si veda sotto]. STATISTICA Reti Neurali Automatizzate (SANN) supporta le classi più importanti di reti neurali per la soluzione di problemi reali:

  • Percettroni Multistrato
  • Funzioni a Base Radiale
  • Mappe Autorganizzanti
  • Reti Lineari

Le architetture sopra indicate possono essere applicate in problemi di regressione, di classificazione, di regressione con serie storiche, di classificazione con serie storiche, e nell’analisi dei gruppi.

Inoltre, ANS supporta Ensemble di reti basate sulla combinazione arbitraria dei tipi di rete elencati sopra. La combinazione di reti per la formazione di previsioni di Ensemble è particolarmente facile da ottenere in SANN, specialmente per dataset piccoli o rumorosi.

SANN contiene numerose funzionalità che aiutano l’utente a selezionare un’appropriata architettura di rete. Il feedback statistico e grafico di SANN include istogrammi, matrici e grafici di singoli errori di caso, riepiloghi sulla performance di classificazione/errata classificazione, e statistiche vitali quali la correlazione nella regressione – tutto ciò viene calcolato automaticamente.

Per obiettivi di visualizzazione dei dati , SANN può anche produrre scatterplot e superfici di risposta 3D, per favorire una comprensione del “comportamento” reale della rete da parte dell’utente.

Ovviamente, per ulteriori analisi è possibile usare le informazioni fornite da ognuna di queste sorgenti attraverso altri strumenti di STATISTICA per l’inclusione di report, analisi, o personalizzazioni.

SANN conserva automaticamente copie delle reti migliori trovate durante la sperimentazione seguita sullo specifico problema, e da poter recuperare in qualsiasi momento. L’utilità e la validità predittiva della rete possono essere automaticamente assicurate includendo campioni di test e di validazione e valutando la dimensione e l’efficacia della rete così come il costo dell’errata classificazione.

Per ottenere performance migliori, STATISTICA Reti Neurali Automatizzate supporta un numero di opzioni per la personalizzazione delle reti. È possibile specificare uno strato di output lineare per le reti usate nei problemi di regressione (e non solo) o funzioni di attivazione softmax per stime probabilistiche da applicare nei problemi di classificazione. Sono inoltre incluse funzioni d’errore ad entropia incrociata così come un’ampia gamma di funzioni di attivazione specializzate, incluse le funzioni Esponenziali, Iperboliche Tangenti, Sigmoidee Logistiche, e Seno sia per i neuroni nascosti che per i neuroni di output.

Torna al Principio


Ricerca Automatica di Reti (valutazione e selezione automatiche di più architetture di rete)

In STATISTICA Reti Neurali Automatizzate (SANN) è incluso uno strumento che consente la valutazione automatica di un grande numero di differenti architetture di reti neurali di diverso livello di complessità, e la selezione del migliore insieme di specifiche architetture per lo specifico problema incorso. Questo strumento è noto come Ricerca Automatica di Reti (ANS).

Durante la progettazione di una rete neurale, una quantità significativa di tempo viene spesa per la selezione delle variabili appropriate, e successivamente per l’ottimizzazione dell’architettura di rete attraverso ricerche di natura euristica. SANN risolve questo problema conducendo una ricerca euristica in automatico. Tale ricerca riguarda i tipi di rete, le dimensioni e le architetture, le funzioni di attivazione, ed anche le funzioni d’errore quando appropriato.

Ricerca Automatica di Reti è uno strumento estremamente efficace basato su sofisticate tecniche per la ricerca automatica di architetture ottimali di rete. Perché, quindi, lavorare ad un terminale per ore, quando è possibile lasciare che STATISTICA Reti Neurali Automatizzate lavori per te?

Torna al Principio


Addestramento di una Rete Neurale

Quando si sperimenta l’uso delle diverse architetture e tipi di rete, sarà possibile fare affidamento sulla qualità e la rapidità degli algoritmi di addestramento disponibili. STATISTICA Reti Neurali Automatizzate supporta i più noti algoritmi d’addestramento disponibili allo stato dell’arte.

SANN include ovviamente i più rapidi algoritmi d’addestramento di secondo ordine: Conjugate Gradient Descent e BSFGS. Vi è inoltre una versione “memory-less” dell’algoritmo BSFGS sul quale SANN si basa automaticamente ogni qualvolta la quantità di memoria disponibile sul proprio computer ha raggiunto livelli critici. Questi algoritmi in genere convergono molto più rapidamente rispetto ad algoritmi di primo ordine quali il Gradient Descent.

Le procedure ad algoritmi iterativi di STATISTICA Reti Neurali Automatizzate vengono implementate attraverso la tracciatura automatica dell’errore di addestramento così come dell’errore indipendente di test registrati durante il corso dell’addestramento. L’addestramento può essere interrotto in qualsiasi istante attraverso il semplice clic di un pulsante, ed è inoltre possibile specificare le Condizioni di Stop che determinano l’interruzione anticipata dell’addestramento, per esempio, in corrispondenza del momento in cui viene superato un livello target d’errore, oppure quando l’errore di selezione inizia a deteriorare oltre un numero dato di epoche. Nel caso in cui si verifichi sovra-apprendimento, sarà necessario preoccuparsi: SANN conserva automaticamente una copia della migliore rete scoperta, da poter recuperare ed usare automaticamente come soluzione migliore. Quando l’addestramento è terminato, sarà possibile eseguire una verifica finale della performance rispetto ai campioni di addestramento, di test, e di validazione.

STATISTICA Reti Neurali Automatizzate include inoltre un'ampia gamma di algoritmi di addestramento per l'Analisi dei Gruppi, basati sul ben noto algoritmo di Kohonen per mappe autorganizzanti (self organizing feature maps).

Torna al Principio


Verifica e Test di una Rete Neurale

Una volta addestrata una rete, si desidererà testare la sua performance ed esplorare le sue caratteristiche. STATISTICA Reti Neurali Automatizzate (SANN) usa un’ampia gamma di funzionalità statistiche e grafiche.

È possibile selezionare più modelli (ed ensemble); in questo caso, se possibile, SANN visualizzerà qualsiasi risultato generato in modo comparativo (ad esempio, tracciando le curve di risposta per diversi modelli su singolo grafico, oppure presentando le previsioni di molti modelli in un singolo spreadsheet). Questa caratteristica è particolarmente utile per confrontare diversi modelli addestrati sul medesimo data set.

Tutte le statistiche sono generate indipendentemente per i campioni di addestramento, di test, e di validazione o per qualsiasi loro combinazione.

Le statistiche generali calcolate includono l’errore medio di rete, la così detta matrice di confusione per i problemi di classificazione (che fornisce un riepilogo delle classificazioni corrette e non corrente lungo tutte le classi), così come la correlazione per i problemi di regressione – tutte calcolate automaticamente.

Torna al Principio


Soluzioni Integrate (applicazioni personalizzate basate sul motore di calcolo di STATISTICA Reti Neurali Automatizzate)

La semplice ed efficace interfaccia utente di STATISTICA Reti Neurali consente all’utente di creare rapidamente prototipi di reti neurali da usare per risolvere i propri problemi.

In alcune applicazioni, si potrebbe voler integrare queste soluzioni nei propri sistemi e, per esempio, implementarle in ambienti computerizzati più grandi (si pensi alle procedure “pre-confezionate” disponibili nei sistemi aziendali di analisi).

Le reti neurali addestrate possono essere applicate a nuovi dati (per scopi predittivi) in molti modi: è possibile salvare le reti neurali addestrate, e successivamente recuperarle per applicarle ai nuovi dati (per obiettivi di previsione, di classificazione prevista, ecc.). È inoltre possibile usare il generatore opzionale di codice per salvare modelli a reti neurali completamente addestrati in un linguaggio di programmazione in C, pronto da compilare e da poter richiamare da applicazioni ed ambienti esterni (come visual basic) in vista di un eventuale deployment o della previsione su nuovi dati. Infine, tutte le funzionalità di STATISTICA, incluso STATISTICA Reti Neurali Automatizzate sono accessibili come funzioni COM (Component Object Model) da parte di altre applicazioni (ad es., da Java, Microsoft Excel, C#, VB.NET, ecc.). Per esempio, è possibile integrare analisi automatiche create con STATISTICA Reti Neurali Automatizzate all’interno dei fogli di lavoro di Microsoft Excel.

Torna al Principio


Riepilogo su Algoritmi di Addestramento

  • Gradient Descent
  • Conjugate Gradient Descent
  • BFGS
  • Kohonen
  • Assegnazione k-Means dei Centri per Reti a Base Radiale
Torna al Principio


STATISTICA Requisiti minimi di sistema:

  • Sistema Operativo: Windows 2000 o superiore
  • RAM: 256 MB
  • Velocità Processore: 500 MHz
    Raccomandati:
  • Sistema Operativo: Windows XP o superiore
  • RAM: 512 MB
  • Velocità Processore: 2.0 GHz
Torna al Principio


Limiti dimensionali

Le reti possono essere praticamente di dimensione illimitata (ovvero sia, possono essere molto più grandi di quanto ci si possa aspettare). Per tutti i problemi pratici, l'unico limite a cui è soggetto il programma è dato dall'hardware della macchina.

Torna al Principio


Manuale Elettronico

STATISTICA Reti Neurali Automatizzate include un manuale ben illustrato, contenente un introduzione completa e teorica sule Reti Neurali, e contenuti estesi ed accessi da ogni finestra di dialogo.

Torna al Principio


Examples of Real-life Applications

Le reti neurali possono essere virtualmente usate in qualsiasi situazione in cui l’obiettivo è determinare il valore di una variabile o attributo noti sulla base di osservazioni o misurazioni registrate (si pensi, cioè, a diverse forme di regressione, classificazione, e di serie storiche), in cui è presente una quantità sufficiente di dati storici, e lì dove esiste realmente una relazione sottostante tracciabile o un insieme di relazioni (le reti sono relativamente tolleranti al rumore). Inoltre, le reti neurali possono essere usate per l’analisi esplorativa qualora si stia svolgendo un’operazione di raggruppamento dei dati (reti di Kohonen).

È possibile trovare una discussione completa sulle considerazioni teoriche su quando l’applicazione delle reti neurali ha più probabilità di successo sul capitolo dedicato alle reti neurali del Manuale Elettronico di StatSoft (disponibile sul sito web di StatSoft). La lista include una selezione di esempi rappresentativi sulle diverse opportunità di applicazione di tali strumenti.

  • Riconoscimento Ottico, inclusi sistemi di riconoscimento delle firme (ad esempio, una compagnia può essere interessata a sviluppare uno strumento che identifica le firme sulla base non solo dell’aspetto ma anche della velocità di esecuzione delle firma, al fine di identificare più facilmente un possibile comportamento fraudolento).
  • Elaborazione delle Immagini (si pensi ad esempio ad un sistema sviluppato per la scannerizzazione delle immagini registrate nelle stazioni metropolitane di Londra, e che potrebbero suggerire in modo istantaneo se le stazioni sono Piene, Vuote, ecc. Questi sistemi dovranno funzionare ugualmente bene indipendentemente dalle condizioni di luce, dalla presenza o assenza di treni in corsa, ecc.).
  • Previsione di Serie Storiche Finanziaria (ad es., una nota trading company ha annunciato di aver significativamente migliorato le sua prestazione di trading tramite l'applicazione di Percettroni Multistrato alla previsione di prezzi di mercato).
  • Analisi del Rischio di Credito (stima del rischio di credito; un problema classico - stabilire se ad un soggetto è associato un buon rischio di credito, sulla base della compilazione di un modulo di richiesta).
  • Marketing con cataloghi inviati via posta (identificazione dei clienti che potrebbero più verosimilmente rispondere in maniera positiva ad una campagna di marketing via posta, sulla base di un insieme d'informazioni archiviate in database).
  • Individuazione e valutazione di fenomeni medici (previsione di attacchi epilettici, stima della dimensione di un tumore alla prostata).
  • Monitoraggio delle condizioni di un macchinario (ad esempio, possibilità di stabilire quando c'è qualcosa che non va sulla base di una particolare vibrazione o segnale acustico emesso dal macchinario, in modo da poter avviare un processo di manutenzione preventivo).
  • Sintesi delle conversazioni a partire dal testo (si pensi ad esempio al famoso esperimento Nettalk, attraverso il quale apprendere come produrre fenomeni sulla base di testi scritti).
  • Previsione su Serie Storiche Caotiche (un numero di ricercatori hanno dimostrato una buona capacità di previsione sulla base di dati caotici di serie storiche).
  • Controllo di Processo (ad esempio, per il monitoraggio di macchinari usati nei processi industriali e per l’aggiustamento continuo di parametri di controllo).
  • Sistema di gestione dei motori (stima della composizione dei carburanti sulla base delle misurazioni di appositi sensori e determinazione di un controllo di processo).
  • Analisi dei linguaggi (ad esempio, uso di tecniche non supervisionate per l’identificazione di frasi chiave, parole, ecc., in linguaggi nativi).
Torna al Principio


 

Generatore Add-on Opzionale di Codice Sorgente

Il generatore di codice sorgente C è uno strumento add-on che consente agli utenti di costruire in modo flessibile applicazioni personalizzate basate su soluzioni presenti in STATISTICA Reti Neurali Automatizzate (SANN). Tale soluzione add-on generare una versione di codice sorgente di rete neurale in C (disponibile anche in PMML), da poter successivamente compilare ed integrare nei propri programmi. Il prodotto è progettato per essere utilizzato da sviluppatori di sistemi aziendali, e dagli altri utenti che hanno bisogno di convertire le soluzioni altamente ottimizzate generate dalle procedure di SANN in applicazioni fisse e predefinite che risolveranno problemi analitici di routine. Nota: il generatore di codice in C di SANN è una funzionalità add-on che richiede una licenza separata.

Torna al Principio



[StatSoft]
Via Parenzo 3 - 35010 Vigonza (Padova)
Tel: 0498934654; Fax: 0498932897

[StatSoft]e-mail: info@statsoft.it

©Copyright StatSoft Italia srl, 1984-2007.
StatSoft, StatSoft logo, STATISTICA, STATISTICA Enterprise/QC, STATISTICA Enterprise, Data Miner, SEPATH and GTrees are trademarks of StatSoft, Inc.