Strumenti Utente

Strumenti Sito


ccp:lezioni0607

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
ccp:lezioni0607 [21/05/2007 alle 00:34 (18 anni fa)] Massimo Coppolaccp:lezioni0607 [21/05/2007 alle 08:30 (18 anni fa)] (versione attuale) – aggiornamento lezione 16-5 Massimo Coppola
Linea 34: Linea 34:
 | [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/SpatialDM.invited.pdf|Articolo introduttivo al Data Mining Spaziale]] | | [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/SpatialDM.invited.pdf|Articolo introduttivo al Data Mining Spaziale]] |
 | [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/p322-beckmann.pdf|La struttura dati R*-tree]] | | [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/p322-beckmann.pdf|La struttura dati R*-tree]] |
-| [[http:|TODO]] |+| [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/kdd-96.pdf|Algoritmo DBSCAN]] |
 | [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/LNCS2150_21500326.pdf|Parallelizzazione a skeleton di DBSCAN]] | | [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/LNCS2150_21500326.pdf|Parallelizzazione a skeleton di DBSCAN]] |
 | [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/p25-chakrabarti.pdf|Gestione della concorrenza in metodi di accesso spaziale]] | | [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/p25-chakrabarti.pdf|Gestione della concorrenza in metodi di accesso spaziale]] |
  
-  * **14/05** __Problemi dividi e conquista__ \\ I problemi dividi e conquista (D&C) in parallelo, ipotesi generali (cardinalità arbitraria e/o variabile di divisione, alberi non bilanciati, peso computazionale non omogeneo). N-body, algoritmo esatto, O(N²) per passo; quad-tree e oct-tree, decomposizione spaziale dei dati; algoritmo Barnes-Hut, approssimazione con centro di massa, informazioni riassuntive nell'oct-tree; ricostruzione dell'albero ad ogni passo, costo computazionale O(N log N) per passo. \\ Classificazione come problema di data mining (supervised learning), modello di riferimento dei dati (casi/attributi nominali e continui), il modello di classificazione ad albero; C4.5; test su singolo attributo, esplorazione esaustiva dei test nell'intorno della soluzione parziale, ricerca greedy, formulazione D&C; espressione formale del criterio di split (information gain), algoritmo sequenziale per attributi nominali O(N) e continui O(N log N). Conseguenze del sorting per l'applicazione sequenziale e il caso parallelo. Possibili strategie di parallelizzazione di problemi D&C e loro problemi nel caso di D&C irregolare. +  * **14/05** __Problemi dividi e conquista__ \\ I problemi dividi e conquista (D&C) in parallelo, ipotesi generali (cardinalità arbitraria e/o variabile di divisione, alberi non bilanciati, peso computazionale non omogeneo). N-body, algoritmo esatto, O(N²) per passo; quad-tree e oct-tree, decomposizione spaziale dei dati; algoritmo Barnes-Hut, approssimazione con centro di massa, informazioni riassuntive nell'oct-tree; ricostruzione dell'albero ad ogni passo, costo computazionale O(N log N) per passo. \\ Classificazione come problema di data mining (supervised learning), modello di riferimento dei dati (casi/attributi nominali e continui), il modello di classificazione ad albero; C4.5; test su singolo attributo, esplorazione esaustiva dei test nell'intorno della soluzione parziale, ricerca greedy, formulazione D&C; espressione formale del criterio di split (information gain), algoritmo sequenziale per attributi nominali O(N) e continui O(N log N). Conseguenze del sorting per l'applicazione sequenziale e il caso parallelo. Possibili strategie di parallelizzazione di problemi D&C e loro problemi nel caso di D&C irregolare. \\ Alcuni riferimenti: 
-  * **16/05** __Problemi dividi conquista__ \\ Analisi dell'algoritmo C4.5 e delle implementazioni in  parallelo (SLIQ, SPRINT, ScalParC). Criterio di costo e necessità di calcolare gli istogrami delle classi sulle partizioni. Strategie di espansione in parallelo per task, per sottoalberi, per livelli; vantaggi e svantaggi, rispetto al massimo parallelismo esplicitabile, alla maggiore o minore sincronizzazione tra i nodi di calcolo, alla quantità di comunicazioni necessarie. Partizionamento del database verticale (sugli attributi) e orizzontale (sui casi), conseguenze sulle comunicazioni necessarie al calcolo degli istogrammi. + 
 +| [[http://www.di.unipi.it/~coppola/didattica/ccp0506/papers/ML_1.1.81_Quinlan.pdf|Introduzione alla classificazione]] | 
 + 
 +  * **16/05** __C 4.5 parallelo, DM parallelo gestione dei dati__ \\ Analisi dell'algoritmo C4.5 e delle implementazioni in  parallelo (SLIQ, SPRINT, ScalParC). Criterio di costo e necessità di calcolare gli istogrami delle classi sulle partizioni. Strategie di espansione in parallelo per task, per sottoalberi, per livelli; vantaggi e svantaggi, rispetto al massimo parallelismo esplicitabile, alla maggiore o minore sincronizzazione tra i nodi di calcolo, alla quantità di comunicazioni necessarie. Partizionamento del database verticale (sugli attributi) e orizzontale (sui casi), conseguenze sulle comunicazioni necessarie al calcolo degli istogrammi. \\ Meccanismi di gestione dei dati nel Data Mining: flat files, sistemi di DBMS, introduzione di primitive dedicate nei due casi; vantaggi e svantaggi delle diverse scelte tecnologiche e pratiche (complessità di implementazione degli algoritmi, delle primitive di accesso ai dati, overhead di accesso). Meccanismi di Parallel data management, cenni alle scelte fatte nel prototipo Parallel Data Repository (portabilità inter applicazione ma non inter-architetturale, orientamento ai blocchi, primitive di accesso type-aware ottimizzate per il DM). \\ Riferimenti: 
 + 
 +| //TO DO// |  
   * **18/05** __Architetture Multicore__ \\ Introduzione ai multicore, richiami alle motivazioni tecnologiche. Multicore simmetrici e asimmetrici. Core multipli, hypertreading, cenni ad approcci differenti (architettura Tera, Transputer). Architetture multicore asimmetriche: IBM CELL, Intel IXP2400; descrizione (in particolare la differene struttura di interconnessione nelle due CPU), discussione delle scelte di progettazione determinanti nelle due architetture (elavata banda di calcolo vs bassa potenza di calcolo rispetto alla banda di trasferimento). Cenni alle problematiche di programmazione a basso livello, e framework di programmazione più astratti. Architetture multicore simmetriche ad elevato parallelismo: Sun Niagara, Azul Vega 2; utilizzo prevalente per applicazioni multithread, database, supporto a macchine virtuali (Java, .Net) senza modifiche al modello di programmazione.   * **18/05** __Architetture Multicore__ \\ Introduzione ai multicore, richiami alle motivazioni tecnologiche. Multicore simmetrici e asimmetrici. Core multipli, hypertreading, cenni ad approcci differenti (architettura Tera, Transputer). Architetture multicore asimmetriche: IBM CELL, Intel IXP2400; descrizione (in particolare la differene struttura di interconnessione nelle due CPU), discussione delle scelte di progettazione determinanti nelle due architetture (elavata banda di calcolo vs bassa potenza di calcolo rispetto alla banda di trasferimento). Cenni alle problematiche di programmazione a basso livello, e framework di programmazione più astratti. Architetture multicore simmetriche ad elevato parallelismo: Sun Niagara, Azul Vega 2; utilizzo prevalente per applicazioni multithread, database, supporto a macchine virtuali (Java, .Net) senza modifiche al modello di programmazione.
   * **21/05** __ __   * **21/05** __ __
   * **23/05** __ __   * **23/05** __ __
   * **25/05** __ __   * **25/05** __ __
ccp/lezioni0607.1179707672.txt.gz · Ultima modifica: 27/06/2007 alle 12:16 (18 anni fa) (modifica esterna)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki