Universit`a degli Studi di Perugia Applicazione degli
Transcript
Universit`a degli Studi di Perugia Applicazione degli
Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Università degli Studi di Perugia Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di laurea specialistica in INFORMATICA Basi di Dati Avanzate e Tecniche di Data Mining Prof. G. Cecconi, Prof. G. Busanello - A.A. 2008/2009 Applicazione degli Automi Cellulari alle Basi di Dati Avanzate Davide Petturiti Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia 1 2 3 4 5 6 Introduzione Definizione di Automa Cellulare Scelte implementative Un esempio famoso Automi Cellulari nell’Image Processing Introduzione Problema della riduzione del rumore Problema del border detection Data mining con Automi Cellulari Introduzione Problema dell’apprendimento per classificazione Automi Cellulari e GIS Introduzione Conclusioni Bibliografia e Sitografia Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Definizione Matematica Definizione Un automa cellulare k-dimensionale ( CA) è una terna A = (S, N, δ), dove S è un insieme non vuoto detto insieme degli stati, N ⊆ Zk è detto vicinato, e δ : S N → S è la funzione di transizione locale (o regola). I casi maggiormente studiati in letteratura sono quelli con k = 1 o k = 2 indicati, rispettivamente, come CA monodimensionali o bidimensionli. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Definizione Informale Meno formalmente, possiamo pensare ad un CA come un insieme di celle organizzate in una griglia: la griglia è uniforme e k-dimensionale, ed ogni cella può assumere uno stato in S; il tempo avanza a passi discreti; la regola dice come cambia (ad ogni passo) lo stato di ogni cella a seconda dello stato delle celle nel vicinato N; il cambiamento di stato avviene in modo sincrono su tutte le celle. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Struttura di un CA bidimensionale La griglia è supposta infinita nelle due dimensioni. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Caratteristiche essenziali 1 Spazio, tempo e stati sono discreti; 2 la regola è uniforme, cioè uguale per tutte le celle; 3 la regola è locale, cioè dipende solo dalle celle vicine; 4 il tempo avanza simultaneamente per ogni cella. Nonostante la sua notevole semplicità, un CA può risultare in un comportamento globale molto complesso adatto a rappresentare molti fenomeni dinamici. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Nascita degli Automi Cellulari Gli Automi Cellulari sono stati introdotti negli anni ’50 da J. von Neumann e S. Ulam come modello di calcolo universale. Teorema Un Automa Cellulare universale può calcolare ogni funzione computabile. Il CA universale di von Neuman prevede 29 stati per ogni cella e non è stato mai implementato. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Problema del contorno Per definizione, la griglia di un CA è infinita ma ciò non è realizzabile nelle applicazioni pratiche in cui si considerano griglie finite, adottando i seguenti accorgimenti: considerare le celle fuori dalla griglia finita in uno stato fisso (ghost area); considerare le k dimensioni come periodiche (griglie toroidali). Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Scelta del vicinato La funzione di transizione locale è strettamente legata al vicinato N scelto. In letteratura i vicinati più utilizzati nel caso bidimensionale sono quello di von Neumann (con 4 celle) e quello di Moore (con 8 celle). Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Il “problema inverso” Il comportamento globale di un CA è determinato dalla sua regola locale e, partendo da questa, viene evidenziato tramite simulazioni. Definizione Si dice problema inverso, il problema di individuare l’insieme di regole locali che complessivamente realizzano il comportamento voluto dal CA. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Il gioco Life Un esempio molto famoso di CA inventato dal matematico John Conway nel 1970 è il gioco Life, dove: la griglia è bidimensionale quadrata e periodica nelle due dimensioni; gli stati sono due: vivo o morto (nero o bianco); il vicinato è costituito dalle otto celle vicine (vicinato di Moore); la regola è: una cella viva resta viva solo se ha 2 o 3 celle vive vicine, una cella morta diventa viva se ha esattamente 3 celle vive vicine. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Implementazione C++ del gioco Life Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Osservazioni ⇒Una regola locale estremamente semplice genera un comportamento globale estremamente complesso. ⇒Si possono modellare processi complessi con poche e semplici regole locali (la difficoltà è trovarle). ⇒Il modello di calcolo incorpora “naturalmente” il parallelismo. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Definizione di Automa Cellulare Scelte implementative Un esempio famoso Applicazioni dei CA Gli automi cellulari si prestano per definizione a modellare processi dinamici e discreti. In questa sede ci concentriamo sulla loro applicazione a: processing di immagini digitali; Data Mining; simulazioni su dati spaziali. Molto spesso il modello di calcolo CA è “incorporato” in sistemi informativi avanzati come basi di dati multimediali; Data Warehouse; basi di dati spaziali (GIS). Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema della riduzione del rumore Problema del border detection Immagini digitali Semplicisticamente, un’immagine digitale è un array bidimensionale di n × n pixel, dove ogni pixel può essere caratterizzato come una terna (i, j, k) dove la coppia (i, j) indica la posizione del pixel nell’immagine e k il relativo colore. Osservazione L’immagine può essere considerata come una particolare configurazione di un CA, le cui celle sono gli n × n pixel dell’immagine. Utilizzi del modello CA: miglioramento delle immagini (image enhancement); individuazione dei bordi (border detection). Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema della riduzione del rumore Problema del border detection Image Enhancement Definizione Si dice image enhancement, il processo con il quale si migliora la qualità di un’immagine digitale destinata ad un osservatore non necessariamente umano. L’applicazione più famosa di image enhancement è, sicuramente, la riduzione del rumore, affrontata classicamente con tecniche come le maschere di convoluzione e i filtri di Wiener. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema della riduzione del rumore Problema del border detection CA per la rimozione del rumore Consideriamo un CA bidimensionale e simmetrico (l’ordine dei vicini non conta) A = (S, N, δ) con: S = {?, 0, 1, · · · , n − 1} dove gli stati da 0 a n − 1 indicano il colore di un pixel, mentre lo stato ? è usato come stato di quiescenza per le celle della ghost area fuori dall’immagine; N è il vicinato di von Neumann; δ : S 5 → S confronta lo stato della cella centrale con quello delle quattro che la circondano nel modo seguente n−1 j se s3 6= ? e |{i|si = j}| = maxc=0 |si = c| δ((si )i=1,··· ,5 ) = ? se s3 = ? Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema della riduzione del rumore Problema del border detection Osservazioni 1 Una cella (ovvero un pixel) non nello stato di quiescenza ? cambia il suo stato a quello della maggior parte delle celle nel suo vicinato. 2 Le celle fuori dal reticolo degli n × n pixel sono nello stato di quiescenza ? e la regola è definita in modo da assicurare che rimangano in questo stato. 3 La complessità del metodo è comparabile con quella di altri algoritmi “classici”, con il vantaggio di essere intrinsecamente parallelo. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema della riduzione del rumore Problema del border detection Esempio Prima Dopo Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema della riduzione del rumore Problema del border detection Border Detection Definizione Si dice bordo una regione di una immagine digitale in cui si ha un cambiamento significativo di caratteristiche dell’immagine come intensità, colore o grana. Il cambiamento può o no essere interpretato come un bordo a seconda della particolare immagine. Vogliamo che il metodo di individuazione dei bordi sia indipendente dalla natura dell’immagine. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema della riduzione del rumore Problema del border detection CA per il border detection Consideriamo un CA bidimensionale e simmetrico (l’ordine dei vicini non conta) A = (S, N, δ) con: S = {0, 1, · · · , n − 1} dove gli stati da 0 a n − 1 indicano il colore di un pixel; N è il vicinato di von Neumann; δ : S 5 → S confronta lo stato della cella centrale con quello delle quattro che la circondano nel modo seguente 0 se |s3 − si | < con i = 1, 2, 4, 5 δ((si )i=1,··· ,5 ) = s3 altrimenti Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema della riduzione del rumore Problema del border detection Osservazioni 1 Data una immagine come configurazione iniziale, richiediamo che il CA raggiunga una configurazione finale in cui le sole celle “attive” sono quelle in corrispondenza dei bordi. 2 indica un parametro di threshold dipendente dall’applicazione. 3 Tutte le celle nella ghost area sono nello stato 0. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema della riduzione del rumore Problema del border detection Esempio Prima Dopo Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema dell’apprendimento per classificazione Definizione di Data Mining Definizione Si dice Data Mining l’attività di individuazione di relazioni “nascoste” tra attributi e di apprendimento di pattern (modelli) svolta su una grossa mole di dati (tipicamente organizzati in un Data Warehouse). Un aspetto particolare del Data Mining è rappresentato dal Machine Learning ⇒ la macchina apprende come comportarsi al fine di migliorare la sua misura di performance. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema dell’apprendimento per classificazione Apprendimento per classificazione Definizione Si dice apprendimento per classificazione uno schema di apprendimento automatico usato nel data mining, basato su esempi di classificazione per casi noti, dai quali ci si aspetta di dedurre un modo per classificare casi non noti. 1 Lo schema di apprendimento opera sotto la supervisione fornita dagli esempi di classificazione per i casi noti ed è per questo detto supervisionato. 2 Gli esempi vengono detti istanze di training. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema dell’apprendimento per classificazione Apprendimento per classificazione In modo meno formale: considerando k attributi si definisce uno spazio di istanze k-dimensionale; vogliamo suddividere i punti dello spazio in m classi; le istanze di training fanno capire alla macchina quali regioni dello spazio sono relative a ciascuna classe. ⇒ Ci restringiamo al caso bidimensionale (k = 2) con 2 sole classi. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema dell’apprendimento per classificazione CA nell’apprendimento per classificazione Consideriamo un CA bidimensionale e simmetrico (l’ordine dei vicini non conta) A = (S, N, δ) con: S = {0, 1, 2}, dove lo stato 0 indica non classificato, 1 classe 1 e 2 classe 2; N è il vicinato di von Neumann; δ : S 5 → S è la regola della maggioranza di voto, definita come 0 se classe 1 + classe 2 = 0 1 se classe 1 > classe 2 δ((si )i=1,··· ,5 ) = 2 se classe 1 < classe 2 rand{1, 2} se classe 1 = classe 2 Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema dell’apprendimento per classificazione Osservazioni 1 L’istanza di training consiste nella configurazione iniziale dell’automa. 2 La convergenza dell’automa è stabilita tramite un valore di threshold. 3 Con una semplice regola locale si ottengono risultati comparabili a metodi “complessi” come gli alberi di decisione e le support vector machines. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Problema dell’apprendimento per classificazione Esempio Ideale Istanza di Training Risultato con CA Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Definizione di GIS Definizione Un Sistema Informativo Territoriale (o GIS) è una raccolta di informazioni spaziali suddivise in: geometriche: relative alla rappresentazione cartografica degli oggetti rappresentati; topologiche: riferite alle relazioni reciproche tra gli oggetti; informative: riguardanti i dati associati ad ogni oggetto. Un GIS prevede la gestione di queste informazioni in un database relazionale. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Attività possibili con un GIS I dati spaziali contenuti in un GIS, oltre che dare una visione statica della realtà geografica rappresentata possono essere usati per le due seguenti attività: 1 Simulazioni di carattere socio-economico; 2 Data Mining Spaziale (affrontato con una specializzazione delle tecniche viste prima). ⇒ attività che coinvolgono grosse moli di dati e con una notevole complessità intrinseca. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Introduzione Simulazioni di carattere socio-economico I CA consentono di relazionare i dati spaziali con la variabile tempo (discreta), consentendo di eseguire delle simulazioni dell’evoluzione di un attributo nel tempo. I problemi che sorgono sono: generalizzare i CA per trattare situazioni complesse come quelle geografiche; determinare una regola locale che rispecchi l’evoluzione dell’attributo sotto osservazione ⇒ MOLTO DIFFICILE. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Generalizzazione Introduzione Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Generalizzazione (2) Introduzione Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia Conclusioni 1 I CA realizzano comportamenti globali complessi basandosi su una regola locale. 2 Nonostante siano costituiti da un insieme di entità “poco intelligenti”, complessivamente manifestano un comportamento auto-organizzativo. 3 Essi si adattano a tutti gli scenari dinamici e discreti fornendo performance paragonabili a metodi complessi. 4 Sono sempre più integrati in sistemi informativi avanzati come i multimediali e i GIS. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia T. Faucett, Data mining with cellular automata. Centre for the Study of Language and Information, Stanford University, USA. N. Ganguly, B. K. Sikdar, A. Deutsch, G. Canright, P. P. Chaudhuri, A Survey on Cellular Automata. Centre for High Performance Computing, Dresden University of Technology, Germany; Department of Computer Science and Technology, Bengal Engineering College, India. N. P. Hedge, I. V. Murali Krishna, K. V. Chalapati Rao, Integration of cellular automata and GIS for simulating land use changes. Osmania University, India. Indice Introduzione Automi Cellulari nell’Image Processing Data mining con Automi Cellulari Automi Cellulari e GIS Conclusioni Bibliografia e Sitografia A. Popovici, D. Popovici, Cellular Automata in Image Processing. Departments of Computer Science and Mathematics, University of the West Timişoara, Romania.