ALGORITMI PER LA CLASSIFICAZIONE DI DATI STRUTTURATI Renzo Perfetti, Elisa Ricci Dipartimento di Ingegneria Elettronica e dell’Informazione Università di Perugia via G. Duranti, 93 – 06125 Perugia Sempre più frequentemente in numerose applicazioni emerge la necessità di trattare dati complessi senza prescindere dalla loro struttura. Esempi di dati di questo tipo si trovano in numerosi problemi, come l’analisi di testi, il riconoscimento del parlato, la segmentazione di immagini, l’allineamento di sequenze di geni o proteine. La maggior parte di questi problemi presenta dati che coinvolgono dipendenze sequenziali, temporali e strutturali tra variabili descrivibili tramite sequenze o grafi. Gli algoritmi tradizionali di classificazione, applicati a tali problemi, raggiungono prestazioni spesso insoddisfacenti perché le etichette sono assegnate ai vettori di ingresso separatamente, spesso ignorando la struttura del problema. Per questo, negli ultimi anni, sono stati proposti numerosi algoritmi [1-5] sviluppati ‘ad hoc’ per la classificazione di dati strutturati. Tali metodi rappresentano una naturale estensione dei tradizionali algoritmi supervisionati di classificazione. Infatti, se nella classificazione binaria la predizione è realizzata assegnando uno scalare in corrispondenza a ciascun vettore di ingresso, nella classificazione di dati strutturati la predizione restituisce come uscita dei vettori. L’idea principale dietro questi approcci è di produrre rappresentazioni dei dati efficaci e flessibili, esplorando le dipendenze tra vettori di ingresso ed etichette. A tal fine essi si avvalgono della capacità espressiva dei probabilistic graphical models (PGM) [6]. In pratica la classificazione di dati strutturati può essere vista come una naturale estensione dei tradizionali algoritmi di classificazione multiclasse, con un numero di classi molto elevato, esponenziale nella dimensione dello spazio di uscita. Tuttavia l’idea chiave di questi metodi è la definizione di vettori di features che dipendono da variabili di ingresso ed etichette in modo tale che la predizione possa essere eseguita con algoritmi efficienti (come la programmazione dinamica). Recenti pubblicazioni hanno mostrato che in numerose applicazioni tali algoritmi consentono di ottenere prestazioni migliori rispetto ai metodi che non descrivono esplicitamente le relazioni ingresso-uscita [4-5]. Nonostante i promettenti risultati ottenuti in questi ultimi anni, numerosi sono i problemi ancora aperti in questo ambito di ricerca. La sfida principale coinvolge soprattutto aspetti computazionali. Più specificatamente, la definizione di vettori di features a partire congiuntamente da variabili di ingresso e di uscita comporta, in numerose applicazioni, un elevato numero di parametri da determinare e richiede pertanto algoritmi efficaci, in cui regolarizzazione e sparsità giocano un ruolo determinante. In questa memoria si illustra brevemente l’attività svolta in tale ambito presso l’unità di Perugia nel corso di questo ultimo anno. Un nuovo algoritmo, basato sul concetto statistico di Z-score, è stato sviluppato e applicato a vari problemi. Un primo problema affrontato è il cosiddetto Inverse Parametric Sequence Alignment Problem (IPSAP) [7], noto nell’ambito dell’allineamento di sequenze di DNA in bioinformatica: dato un training set di allineamenti corretti, l’obiettivo è quello di determinare i parametri in modo tale che nuove sequenze risultino allineate in modo biologicamente significativo. Metodi precedenti [5] modellano il problema come problema di ottimizzazione (lineare o quadratica) soggetto a vincoli, in modo da imporre che lo score degli allineamenti corretti sia maggiore dello score di tutti gli altri possibili allineamenti. Sfortunatamente il numero di vincoli necessari è spesso molto elevato, specie per sequenze lunghe e, nonostante l’utilizzo di algoritmi iterativi, il costo computazionale è considerevole. Pertanto è stato sviluppato un approccio differente al problema: anziché considerare tutti gli allineamenti non ottimi separatamente, il metodo proposto considera la distribuzione degli score (in particolare la media e la deviazione standard) in funzione dei parametri da determinare. Media e deviazione standard possono essere calcolate efficientemente tramite programmazione dinamica, con un algoritmo simile a quello di Needleman-Wunsch. I parametri ottimi sono poi ottenuti imponendo che lo score degli allineamenti corretti dati sia il più distante possibile dalla media della distribuzione, misurata in unità di deviazione standard. Tale distanza normalizzata è nota in statistica come `Z-score'. La massimizzazione dello Zscore può essere realizzata semplicemente risolvendo un sistema di equazioni lineari. Un algoritmo simile [8] è stato sviluppato anche per due ulteriori applicazioni nell’ambito dell’ analisi di testi e per il problema della predizione della struttura secondaria di RNA. Riferimenti [1] Collins, M. (2002). Discriminative training methods for hidden Markov models: Theory and experiments with perceptron algorithms. Proc. of Empirical Methods in Natural Language Processing (EMNLP-02), 1-8. [2] Lafferty, J., McCallum, A. and Pereira, F. (2001). Conditional random fields: Probabilistic models for segmenting and labeling sequence data. Proc. of the 18th International Conference on Machine Learning, 282–289. [3] Altun, Y., Hofmann, T. and Smola, A. J. (2004). Gaussian process classification for segmenting and annotating sequences. Proc. of 21st International Conference on Machine Learning (ICML-04), 1-8. [4] Taskar, B., Guestrin, C. and Koller, D. (2004). Max-margin Markov networks. Adv. Neural Inform. Process. Syst. (NIPS) 16, 25-32. In S. Thrun, L. K. Saul and B. Schölkopf (Eds.). Cambridge, MA: MIT Press. [5] Tsochantaridis, I., Joachims, T., Hofmann, T. and Altun, Y. (2005). Large margin methods for structured and interdependent output variables. J. Mach. Learn. Res. 6, 1453– 1484. [6] Jordan, M. I. (2004). Graphical models. Statistical Science (Special Issue on Bayesian Statistics), 19, 140-155. [7] E. Ricci, T. De Bie, N. Cristianini, Learning to align: a statistical approach, the 7th International Symposium on Intelligent Data Analysis (IDA 2007). (accettato) [8] E. Ricci, T. De Bie, N. Cristianini, Discriminative sequence labeling by Z-score optimization, the 18th European Conference on Machine Learning (ECML). (sottomesso)