Astroparticelle - schegge per lo sviluppo della conoscenza...

In realtà non conosciamo nulla, perché la verità sta nel profondo. (Democrito)

Homepage @-mail Login Risorse per la didattica
Ricerca argomento:
22/02/2018
Bookmark and Share
HomeAttivitàDa TerraDallo SpazioAppuntiNewsletterPartnersRecensioni
   
     

Astroparticelle e reti neurali - di Marco Illiano

 

Argomenti correlati:
Introduzione alle AstroParticelle
Rivelatore di muoni AMD5
Rivelatore di muoni AMD7
Software AstroRad
A.D.A Project

 

 

 

Marco Illiano lavora come informatico presso l'istituto bancario Deutsche Bank. Si definisce un hacker della fisica e dell’elettronica. I suoi momenti di gloria: “ho portato la fiamma Olimpica a Torino 2006”; “ho assemblato con successo un AMD5 e un AMD7”.

 

 

rivelatore di muoni

 

 

 

 

 


Raggi Cosmici sopra l'array di ADA

Immagine artistica di uno sciame di raggi cosmici sull'Italia.

 

 

 

Introduzione

Quando si devono analizzare molti dati da sorgenti diverse, per lo studio di un determinato fenomeno si può ricorrere a diversi sistemi di analisi matematici o statistici. Se però da questi dati si pretende anche di ottenere una previsione del comportamento di quel fenomeno, allora bisogna creare un 'modello', e a questo scopo un buon metodo è quello di utilizzare le reti neurali.

Le reti neurali in sostanza sono un potente sistema matematico, di interpolazione addestrabile e di auto apprendimento, per calcolare funzioni non lineari di qualsiasi complessità a partire da input noti.

Ad esempio per le previsioni meteo spaziali, il cosiddetto "spaceweather", si fa uso di complesse reti neurali che utilizzano i dati registrati dai vari satelliti in orbita.

Reti neuronali

Le reti neurali artificiali somigliano alle reti neurali biologiche sotto diversi aspetti. Le reti neurali biologiche sono costituite da miliardi di cellule nervose (neuroni) interconnesse tra loro. L’input di un neurone è costituito dai segnali provenienti da altri neuroni connessi. Quando i segnali di input superano una certa soglia il neurone si attiva generando un segnale bioelettrico che si propaga verso altri neuroni.

Le reti neurali artificiali offrono una risposta in termini di:

  • parallelismo dell’elaborazione come i neuroni biologici
  • distribuzione della conoscenza che permette di bypassare neuroni danneggiati
  • robustezza, per fornire una risposta coerente in output anche quando i dati di input sono parziali
  • apprendimento dall’esperienza che permette alla rete di adattarsi continuamente alle nuove informazioni
  • tipologia di modello non lineare

 

Struttura di una rete neurale

Le reti neurali artificiali sono costituite da unità computazionali elementari (neuroni). Generalmente i neuroni artificiali sono organizzati in strati:

  • Strato di INPUT di n neuroni pari al numero di input dei dati.
  • Uno o più strati nascosti/intermedi di m neuroni
  • Strato di output di p neuroni a seconda del numero di output voluti

In figura è possibile vedere una rete di tipo feedforward dove i segnali procedono soltanto dai neuroni di uno strato ai neuroni dello strato successivo.

Questa pagina è un'anteprima di un argomento piuttosto articolato, per una lettura approfondita si consiglia di scaricare il documento completo in fondo alla pagina.

Rete neurale e raggi cosmici

Questo documento descrive un percorso matematico – statistico - finalizzato alla ricerca di un modello basato sulle reti neurali artificiali. Tale modello può essere utilizzato per effettuare simulazioni sull’andamento della media dei rilevatori AMD, dati i valori di alcune variabili ad un tempo t-k (serie temporale ed eventuale ritardo). Il lavoro è stato diviso in quattro parti:

1. In prima battuta sono stati prodotti alcuni grafici di interpolazione per verificare la presenza di variabili palesemente ridondanti.

2. E’ stata poi applicata una tipologia di analisi fattoriale che va sotto il nome di Analisi delle Componenti Principali (ACP) per individuare quelle variabili esplicative che non danno un valido apporto informativo. L’ACP ha messo in evidenza anche i principali collegamenti e le correlazioni tra le variabili osservate (analisi conoscitiva del fenomeno)

3. Sono stati messi in evidenza i ritardi temporali nella correlazione tra le variabili con alcuni strumenti propri dell’analisi delle serie storiche

4. Infine è stato adottato un modello predittivo basato sulle reti neurali artificiali. Il codice MATLAB del modello neurale, richiamabile anche da altri linguaggi di programmazione, genera un valore di riferimento che rappresenta la media teorica di un dato rilevatore AMD. Le variabili esplicative prese in considerazione riguardano principalmente l’attività solare, le condizioni meteo e l’attività sismica del luogo in cui la macchina è stata installata.

E' possibile sperimentare questa rete neurale adattandola al proprio rivelatore AMD e ai parametri ambientali preferiti, per l'utilizzo è necessaria la conoscenza di MATLAB o altri codici compatibili come C++.

Il codice MATLAB, che è accompagnato step-by-step da codice di commento, è scaricabile, insieme ai dati di studio, dal link seguente, il codice è diviso in tre programmi per migliorarne la comprensione: analisi delle componenti principali; analisi ritardi serie storica; rete neurale.

 

Importazione Dati in MATLAB da foglio Excel e grafici di interpolazione tra le variabili

Il Data-set utilizzato è contenuto all’interno del file A_DATA_ANALYSIS.xls. Per la “legenda” delle variabili rimando all’appendice del documento pdf. Con il grafico a matrice di MATLAB è possibile individuare a colpo d’occhio le relazioni più evidenti tra le variabili prese a due a due:

 

Di seguito un grafico con la proiezione su una delle componenti principali, qui risulta evidente la contrapposizione tra le variabili meteorologiche (AVTEMP, HUM) e la MEDIA dei raggi cosmici per cui possiamo assegnare questa componente alle condizioni meteorologiche: all’aumentare di temperature e umidità la MEDIA dei raggi cosmici diminuisce.

 

MATLAB mette a disposizione un tool chiamato Neural Network Toolbox che include molte funzioni per il disegno e l’addestramento di reti neurali. La tipologia di rete che più si adatta alle serie storiche si chiama in MATLAB NARX network.

Questa struttura ha uno strato nascosto con 10 neuroni che svolgono una funzione di trasferimento sigmoide (andamento a "s") e uno strato di output con un neurone che svolge una funzione lineare.

In seguito (e in breve), dopo aver impostato la rete neurale si possono ottenere i vari gradi di "affidabilità" e i risultati dell'andamento di apprendimento, di convalida e di uscita:

 

Dopo la costruzione della rete neurale e il suo addestramento, le previsioni avvengono con la funzione: [Y,Xf,Af] = rete_Neurale_FCN(X,Xi,~) dove se si inseriscono nella matrice "X" i dati degli ultimi "k" giorni delle variabili esplicative e della variabile da prevedere, si ottiene in "Y" il valore previsto della media giornaliera nel giorno "k+1".

Conclusione

Il percorso seguito in queste pagine ha messo in evidenza le potenzialità del programma MATLAB applicato ai modelli matematico-statistici per l’analisi dei dati. In particolare il modello neurale è un valido strumento per la simulazione dei dati raccolti dal rilevatore AMD ma potrebbe anche essere utilizzato per mettere in evidenza quei valori anomali che non risultano prevedibili in base alle condizioni meteo, alla situazione dell’attività solare e al livello delle radiazioni ambientali.

Su questi valori si potrebbe concentrare lo studio per l’individuazione dei tanto ricercati UHECR. Il limite, per adesso, è costituito dal numero basso di osservazioni registrate dal rilevatore di Pozzuoli ma ogni anno il modello verrà perfezionato sperando di poter contare anche su un incremento dell’attività solare.

Per la lettura completa scaricare il documento seguente

Marco Illiano

 

 

 

 

Powered by: www.arcarth.com

 

Collabora con noi ׀ Segnala evento

© 2010 - 2018 astroparticelle.it