SOFT COMPUTING DANIELA MARINO Genomica funzionale & bioinformatica E-mail: [email protected] Introduzione Velocità e precisione nell’esecuzione di calcoli Il programmatore deve schematizzare la realtà che è invece vaga e imprecisa donare ai computer la capacità di ragionare … … utilizzando una conoscenza espressa in termini sfumati, vaghi, sfocati, nebulosi, imprecisi...(in inglese: fuzzy). Logica fuzzy L'idea di base nel 1965 (Lofti Zadeh ) teoria degli insiemi in cui non vi sono confini netti, ma graduali non si parla più di appartenenza o non di un elemento ad un insieme, ma di grado di appartenenza. Questa logica estende il suo interesse anche a ciò che non è completamente vero, al verosimile, all'incerto, cioè, in una parola, a tutto ciò che è fuzzy. LOGICA BINARIA Il MONDO FUZZY Metodologia fuzzy logica a più valori Uso di variabili linguistiche per descrivere le variabili del problema Rappresentare la conoscenza del problema in termini di regole fuzzy Elaborazione delle regole tramite INFERENZA FUZZY FUZZIFICAZIONE RAGIONAMENTO DEFUZZIFICAZIONE Fuzzificazione Raccolta dati Definizione insieme funzioni di appartenenza vale 0, quando l'elemento non appartiene del tutto all'insieme vale 1, quando vi appartiene del tutto assume un valore reale intermedio, quando vi appartiene parzialmente. Ragionamento Uso di variabili linguistiche: variabili che utilizzano parole ( aggettivi descritti da insiemi fuzzy) al posto dei numeri arrivare ad una conclusione espressa come evidenza Defuzzificazione trasformare le uscite del sistema di controllo fuzzy in valori numerici necessari a controllare i sistemi esterni. entra in gioco il concetto di: Inferenza di tipo fuzzy : metodo di ragionamento che modella la conoscenza umana tramite regole linguistiche del tipo Esempio: << se A è uguale a B, allora C è uguale a D >> dove C e D rappresentano delle variabili. La conoscenza : se l'acqua è molto calda, aggiungi molta acqua fredda. Il fatto : l'acqua è abbastanza calda. La conclusione : aggiungi un pò d'acqua fredda. Schematizzando … Esempio dell’acqua “Se l'acqua è molto calda allora aggiungi molta acqua fredda” l'elemento che lega questi due concetti è : <<SE ... ALLORA>>; <<IF(premessa)...THEN(conseguenza)>> premessa può avere anche una struttura molto più articolata rispetto a quella semplice riportata nell'esempio e coinvolgere gli operatori AND, OR e NOT Conseguenza: assegnare un valore fuzzy ad uno o più elementi della variabile di uscita. Operatori logici fuzzy: esempio l'operatore (mA)(x) [0,1] significa che il grado di appartenenza dell'elemento x nell'insieme fuzzy "A" varia tra zero e uno; (m) viene definito "valore vero"e rappresenta il grado di verità di una certa asserzione. (m)(A and B) = min((m)A,(m)B) cioè l'operazione di AND delle due variabili fuzzy A e B è il minimo valore vero (m)(A or B) = max((m)A,(m)B) cioè l'operazione di OR delle due variabili fuzzy A e B è il massimo valore vero (m)(not A) = 1 – (m)A rappresenta l'operazione di NOT della variabile fuzzy A Tutti gli operatori sopra definiti sono equivalenti alle loro controparti logiche per (m) limitato tra zero e uno. Soft computing sola logica di controllo fuzzy non sufficiente per realizzare sistemi di controllo realmente intelligenti soft computing (smart logic) reti neurali + logica fuzzy + algoritmi genetici + microelettronica Reti neurali -- Neuroni – Sinapsi -- Apprendimento: apprendimento con supervisore : sono noti l'ingresso e l'uscita corrispondente ed i pesi e le connessioni vengono modificati per produrre l'uscita migliore; apprendimento rinforzato : non é data l'uscita corretta, ma viene solamente detto se l'uscita prodotta é valida o meno; apprendimento senza supervisore : la rete sviluppa le proprie regole di classificazione mediante l'estrazione degli esempi presentati in ingresso Algoritmi genetici strategie di ricerca e ottimizzazione basate sul principio dell'evoluzione naturale tipica dei processi biologici generazione di nuovi individui da individui di generazioni precedenti e sopravvivenza degli individui migliori. affrontare in maniera agevole problematiche di spropositata difficoltà o addirittura non affrontabili utilizzando le metodologie tradizionali (es. metodi classici di ottimizzazione) Perché il soft computing? !! Difficoltà !! delle aziende che avevano puntato tutto sull'affermazione tecnologica delle reti neurali e della logica fuzzy separatamente. Logica fuzzy la capacità di modellizzazione, di controllo di sistemi incerti e complessi e di rappresentazione sintetica della conoscenza Reti neurali la capacità di apprendimento di relazioni funzionali molto complesse Algoritmi genetici la capacità di ottimizzazione, basata sulle leggi di mutazione e di selezione NEURO-FUZZY : L’IBRIDO PIU’ USATO IN BIOLOGIA -- Capire il modello appreso e integrarlo con conoscenze provenienti da un esperto -- Funzioni di appartenenza ed operatori fuzzy realizzati dalle funzioni di attivazione dei nodi -- Applicazione di tecniche neurali per apprendere e migliorare i parametri e la struttura del sistema fuzzy -- Creazione di neuroni fuzzy -- Controllo fuzzy dei parametri di apprendimento CLASSIFICAZIONE DI PROTEINE CON SISTEMI NEURO-FUZZY PER MIGLIORARE LA PREDIZIONE DI STRUTTURE SECONDARIE SPETTROSCOPIA AD INFRAROSSI SISTEMA DI RETI NEURALI (BACKPROPAGATION) combinato con SISTEMA NEURO FUZZY esempio PROTEINE TUTTE ALFA PROTEINE TUTTE BETA In base alla posizione dell’amide I nello spettro Approccio neuro-fuzzy per la classificazione di segnali ecg per la diagnosi di ischemie cardiache Fuzzy-Gaussian Neural Network (FGNN) Riconosce i segnali ECG che caratterizzano una ischemia cardiaca in soli due passi: -- Estrazione di caratteristiche QRST dal tracciato digitale -- Classificazione dei pattern Hanno usato ECG DB di 40 soggetti, di cui 20 erano malati e 20 sani. Il miglior risultato ottenuto è stato riconoscere il 100% dei soggetti malati con soli 5 tracciati per ognuno!! Con le tecniche standard il numero minimo di tracciati è in media 12!!! L’utilizzo dell’intelligenza artificiale per la predizione di tumori Sono stati studiati biomarker molecolari come p53 e proteine del mismatch repair, e dati clinicopatologici convenzionali appartenenti ad un gruppo di 109 pazienti malati di cancro Sono stati prodotti tre modelli per verificare la presenza e il rilascio nel tempo del tumore: -- analisi statistiche (accuratezza 71 - 77%) -- reti neurali (accuratezza 88 - 95%) -- neuro fuzzy (accuratezza 88 - 95%) Si preferisce allora usare il neurofuzzy perché anche se l’accuratezza è simile alle reti neurali, al posto dei cosiddetti black blox impenetrabili caratteristici delle reti neurali le sue regole sono trasparenti e gli input più manipolabili Estrazione di motivi proteici con ottimizzazione neuro-fuzzy Migliorare la velocità e la flessibilità nell’identificazione di motivi proteici L’algoritmo creato è in grado di identificare sia motivi rigidi che flessibili algoritmo Analisi statistiche Reti neurali Trovare piccoli pattern con alta frequenza Ottimizzare con precisione la classificazione finale Logica fuzzy Incrementare la flessibilità dei motivi Il test di validazione è stato effettuato con EGF Bibliografia 1) http://members.xoom.virgilio.it/ailab/biblio/cap7.htm 2) http://www.ce.unipr.it/people/cagnoni/didattica/intart/lucidi/ 3) http://www.intellisystem.it/download/fuzzylogic.pdf 4) Neuro-fuzzy structural classification of proteins for improved protein secondary structure prediction. Hering JA, Innocent PR, Haris PI. School of Molecular Sciences, De Montfort University, The Gateway, Leicester LE1 9BH, UK. 5)A Neuro-fuzzy Approach to Classification of ECG Signals for Ischemic Heart Disease Diagnosis. Neagoe VE, Iatan IF, Grunwald S. 6)Artificial intelligence in predicting bladder cancer outcome: a comparison of neuro-fuzzy modeling and artificial neural networks. Catto JW, Linkens DA, Abbod MF, Chen M, Burton JL, Feeley KM, Hamdy FC. The Academic Urology Unit, Department of Automatic Control and Systems Engineering, University of Sheffield, Sheffield S10 2JF, United Kingdom 7)Protein motif extraction with neuro-fuzzy optimization. Chang BC, Halgamuge SK. Mechatronics Research Group, Mechanical and Manufacturing Engineering, University of Melbourne, VIC 3010, Australia. [email protected]