| STATISTICA Reti Neurali Automatizzate STATISTICA Automated Neural Networks (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:
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.
|
|
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.
|
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.
|
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:
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.
|
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?
|
|
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).
|
|
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.
|
|
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.
|
|
Riepilogo su Algoritmi di Addestramento
|
|
STATISTICA Requisiti minimi di sistema:
|
|
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.
|
|
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.
|
|
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.
| |
|
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.
|
![]()
Via Parenzo 3 - 35010 Vigonza (Padova)
Tel: 0498934654; Fax: 0498932897
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.