SALOTTO FUZZY Scherzando seriamente: il cambiamento della ricerca Mario Gentili www.mariogentili.it [email protected] « Il mare è l’acqua più pura e più impura: per i pesci essa è potabile e conserva la vita, pper ggli uomini è imbevibile ed esiziale. » (Eraclito V sec. a.c.) « Finché le leggi della matematica si riferiscono alla realtà, non sono certe, e finché sono certe, non si riferiscono alla realtà. » (Albert Einstain, Sidelights on Relativity) IL PERCORSO Apprendimento umano Costruzioni di modelli matematici di apprendimento Applicazioni operative 2 IL CERVELLO L’esempio più poderoso di logica fuzzy è il nostro cervello. Le più complete enciclopedie ci ricordano che “…Il cervello è una complessa organizzazione di cellule nervose, con compiti di riconoscimento delle configurazioni g assunte dall'ambiente esterno, memorizzazione e reazione agli stimoli”. Al fine di compiere queste operazioni operazioni, la rete biologica cerebrale si serve di miliardi di semplici elementi computazionali (i neuroni) fittamente interconnessi in modo da variare la loro configurazione in risposta agli stimoli esterni: in questo senso può parlarsi di processi di evoluzione per apprendimento 3 IL NEURONE Il neurone è costituito da tre parti principali: il corpo cellulare, la linea di uscita del neurone (unica, ma che si dirama in migliaia di rami) e la linea di entrata del neurone, neurone che riceve segnali in ingresso dalle linee di uscita degli altri neuroni tramite le sinapsi. Il corpo cellulare esegue una valutazione dei segnali in ingresso: se il risultato supera un certo valore di soglia, allora il neurone si attiva. Se il risultato invece non supera il valore di soglia, il neurone rimane in uno stato di riposo. 4 IL PROCESSO DI RICERCA E APPRENDIMENTO Lo L studio t di dell’apprendimento d ll’ di t umano ha h nell tempo t costruito t it dei d i modelli d lli di riferimento per la filosofia, la logica, la chimica, la fisica, la psicologia, e la matematica, generando, di fatto, un modello del processo di ricerca che è comune all all’intelligenza intelligenza umana e e, come vedremo inseguito inseguito, a quella artificiale: 5 UNA BUONA RICERCA In verità, quando si effettua una ricerca già ci è nota la risposta. Non in termini di contenuti, ma sicuramente dobbiamo sapere cosa ci si aspetta per poter effettuare una valutazione di qualità su quanto trovato. In altre parole dobbiamo sapere già se la risposta che otterremo è coerente a quanto richiesto e se risponde ai nostri obiettivi di ricerca ricerca. Questo principio è alla base della nostra valutazione del risultato e ci consentirà di scartarlo, ovvero di archiviarlo per poi poterlo richiamare e riutilizzare. riutilizzare Solo in rari casi si “naviga senza mèta”: in ogni caso l’obiettivo finale è sempre quello di trovarne una. 6 … PLATONE Menone: E che tipo di domanda farete, Socrate, per sapere quello che non conoscete? Che cosa metterete come soggetto della richiesta? E se trovate che cosa volete, come saprete mai che questa è la cosa che non conoscevate? t ? Socrate: so, Menone, cosa vuoi dire; ma lasciami evidenziare la disputa noiosa che stai introducendo circa quello che l’uomo può richiedere in base alla sua conoscenza; se sa, non ha necessità di domandare; e se non sa, non può domandare. Non ha senso porci delle domande perché per poter riconoscere una risposta dovremmo conoscere quello che vorremmo esserci risposto … … eppure … 7 IL FUZZY MODELLO Gli G sviluppi nella logica fuzzy, f con la loro interpretazione della realtà, magnificamente sintetizzata dal detto popolare la verità sta nel mezzo, hanno contribuito all’istituzione di una nuova disciplina scientifica che ha consentito il rinnovamento del concetto di ricerca soprattutto nel settore dell’intelligenza artificiale: soft computing Le tecniche di soft computing si prefiggono di valutare, valutare calcolare calcolare, decidere e controllare lo scenario in un ambiente apparentemente impreciso, vago, fluido o soggetto a continui e repentini cambiamenti emulando e utilizzando la capacità degli esseri umani cambiamenti, di apprendimento, ovvero di eseguire le attività sulla base della loro esperienza passata per costruirne di uguali o di nuove. 8 IL SOFT COMPUTING Tre sono i capisaldi di questa disciplina: 1. la p possibilità di modellare e di controllare sistemi incerti e complessi, nonché di rappresentare la conoscenza in maniera efficiente attraverso le descrizioni tipiche della teoria degli insiemi fuzzy; 2. la capacità d’ottimizzazione degli algoritmi matematici, la cui computazione si ispira alle leggi di selezione e mutazione tipiche degli organismi viventi; 3. la capacità di apprendere complesse relazioni funzionali delle reti neurali, li iispirate i t a quelle ll proprie i d deii ttessutiti cerebrali. b li 9 IL SOFT COMPUTING Dice Zadeh, "…una tendenza crescente è costituita dall’uso della logica fuzzy in combinazione con il calcolo neurale e gli algoritmi genetici. genetici Più in generale generale, la fuzzy logic, logic le reti neurali e gli algoritmi genetici possono considerarsi i principali costituenti di ciò che potrebbe essere definito ‘calcolo soft’. A differenza dei metodi di calcolo tradizionali o ‘hard’,, il soft computing p g ha lo scopo p di adattarsi alla pervasiva imprecisione del mondo reale. Il suo principio guida può esprimersi così: sfruttare la tolleranza per l’imprecisione, p l’incertezza e le verità p parziali in modo da ottenere trattabilità, robustezza e soluzioni a basso costo. Nei prossimi anni, il soft computing è probabilmente destinato a giocare un ruolo sempre più rilevante in molti settori”. … la vita vera, insomma, nei confronti della quale la logica fuzzy rappresenta un vero e proprio “sistema adattativo” efficace. 10 LE RETI NEURALI ARTIFICIALI Tradizionalmente, T di i l t il termine t i rete t neurale l viene i utilizzato tili t come riferimento if i t ad una rete o ad un circuito di neuroni biologici, ma se ne è affermato l’uso anche in matematica, con riferimento ai modelli matematici delle reti neurali artificiali (ANN) (ANN), che rappresentano l'interconnessione l interconnessione tra elementi definiti neuroni artificiali, ossia costrutti matematici che in qualche misura imitano le proprietà dei neuroni viventi. Una rete neurale artificiale è un’interconnessione un interconnessione di un gruppo di nodi nodi, chiamati neuroni: è un sistema adattativo, uno strumento di modellazione che cambia la propria struttura sulla base delle informazioni che scorrono attraverso la rete durante la fase di apprendimento. 11 LE SCIENZE I principali campi di azione del soft computing sono: la cibernetica cibernetica, la teoria matematica delle informazioni. La traduzione informatica dei modelli e la realizzazione di simulatori e di strumenti per la previsione 12 LA CIBERNETICA Nasce asce co con Wiener e e (c (che e non o riuscì usc mai a ad imparare pa a e il pe percorso co so de dell’autobus autobus che lo portava a casa). Il concetto più importante che maggiormente ha lasciato traccia nello sviluppo dell’IA è quello di feedback, secondo il quale la discrepanza tra il modello costruito e quello effettivo effettivo, costituisce un importante nuovo segnale per il controllo del modello costruito affinché si modifichi … in qualche modo apprenda per correggere i suoi errori. Esempio: il termostato della caldaia: Obiettivo: mantenere costante una temperatura; Sistema di controllo: accensione/spegnimento della caldaia. La presenza di un sistema di controllo fa sì che sia nell’uomo, sia nella macchina, di p possa p parlare di scopo, p e di comportamento p diretto ad uno scopo. 13 LA CIBERNETICA L’aspetto che più ha attirato l'interesse dei ricercatori, è la possibilità di apprendimento del modello: dato un compito specifico da risolvere, apprendimento significa utilizzare l’osservazione del risultato al fine di trovare una funzione che risolva il problema in modo ottimale. La funzione di costo è un concetto importante nell'apprendimento: si tratta della misura di “quanto è lontana da noi” la soluzione ottimale del problema che vogliamo risolvere, e quindi qual è lo sforzo richiesto per raggiungerla. i l Gli algoritmi l it i di apprendimento di t ricercano i soluzioni l i i all fifine di trovare una funzione che abbia il minor “costo” possibile. 14 LA CIBERNETICA L addestramento di une rete neurale avviene sollecitando i nodi in L'addestramento ingresso con una propagazione in avanti dei segnali attraverso ciascun livello della rete, confrontando la risposta della rete con il risultato desiderato ottenendo un corrispondente segnale d'errore in caso di difformità, e propagando poi nella direzione inversa rispetto a quella delle connessioni sinaptiche il segnale di errore, “educando” educando così la rete a minimizzare la differenza tra l'uscita l uscita ottenuta e l'uscita desiderata. 15 LA TEORIA MATEMATICA DELL’INFORMAZIONE Si interessa del contenuto informativo presente in un messaggio (o in un segnale). Un messaggio contiene tanta più informazione quanto più è imprevedibile, tanto meno informazione quanto più è noto, scontato, prevedibile. Problema: Esiste un’equivalenza tra mente umana e computer in considerazione che entrambi sono dei sistemi di trasmissione e di ricezione di messaggi? Dimostrazione: test di Turing: se due sistemi danno le stesse risposte nella stessa situazione allora sono equivalenti situazione, equivalenti. Negazione: Searle: due sistemi possono dare la stessa risposta ma possono usare processi molto diversi per raggiungere quel risultato. In IA ll’apprendimento apprendimento è inteso come insieme di conoscenze e non come comportamento comportamento. Può essere: •di informazioni (di primo ordine), attraverso l’aggiunta di nuove conoscenze alla base dati precedente p •di procedure (di secondo ordine), attraverso l’apprendimento di strategie che permettono di ottimizzare le procedure note. 16 I PRINCIPALI CAMPI DI RICERCA MODELS & ALGORITHMS RESEARCH SOFTWARE ARTIFICIAL ADAPTIVE SYSTEMS EXPERIMENTAL RESEARCH Family of Software Systems Cognitive & Natural Systems SuperVised ANNs Artificial Neural Networks Associative Memories Evolutionary Programming Autopoietic ANNs Artificial Organisms Pre-Processing g Tools Active Connections Matrix Active Connections Matrix SW 17 I PRINCIPALI CAMPI DI APPLICAZIONE SOCIAL FIELD FINANCIAL FIELD INDUSTRIAL FIELD BIOMEDICAL FIELD Drugs & Alcohol Stock Market Prediction Process Control Clinical Trial Social Security Credit Scoring Ecology & Environment Diagnostic Imaging Urban Sustainability y Portfolio Optimization p Fraud aud & Defect e ec Recognition ecog g o Proteins Structure Jobs Optimization Trading Strategies Process Optimization Chemical Simulation 18 ALCUNI RISULTATI 19 ALCUNI RISULTATI 20 ALCUNI RISULTATI 21 SCOPRIRE LE COSE NASCOSTE 22 EVOLUZIONE DEL WEB 23 EVOLUZIONE DEL WEB FILTERING 1- All’inizio era solo per motivi di sicurezza. 2- Si passa ad un filtraggio delle informazioni per evitare il “rumore” delle stesse in base a filtri per: categoria, argomenti. Si passa alle prime pagine personalizzate in base ad un profilo dichiarato o richiesto all’utente (compare il concetto di “la mia home page”) 3- Registrazione delle abitudini dell 3 dell’utente utente e costruzione automatica del profilo con conseguente costruzione automatica della pagina utente. Primi siti “personalized store” (ie. Amazon store). L’utente non fa più query per tradurre la a sua esigenza es ge a in domanda, do a da, ma a gli g si s presentano p ese ta o già g à potenziali pote a risposte sposte alle a e sue abitudini di navigazione. Ma come produrre un profilo automatico? Bisogna conoscere chi naviga: diventa fondamentale sapere cosa legge nel web. web Si fanno strada l’analisi semantica dei testi e le ANN ai fini della probabilità che il prossimo argomento che verrà letto sia proprio quello da proporre. 24 TEXT MINING Cos Cos’è? è? La capacità di trovare regolarità di rilievo in grandi data-set testuali. Di rilievo significa: non-trivial, non trivial nascosti, sconosciuti prima, potenzialmente utili. Ancora una volta si fanno strada l’analisi semantica dei testi e le ANN ai fini della scoperta delle regolarità. 25 SEMANTIC WEB Quando si parla Q p di web semantico si intende p proporre p un web che p possieda delle strutture di collegamenti più espressive di quelle attuali, ovvero un web nel quale agiscano agenti intelligenti: applicazioni in grado di comprendere il significato dei testi presenti sulla rete e perciò in grado di guidare l'utente direttamente verso l'informazione ricercata, oppure di sostituirsi a lui nello svolgimento di alcune operazioni. Un agente intelligente dovrebbe essere una applicazione in grado di svolgere operazioni come la prenotazione di un aereo per Parigi con arrivo in centro città p prima delle 13.00. Il tutto spulciando p informazioni da siti che definiscono l'aeroporto di Parigi in modo diverso (Paris, Charles de Gaule, Orly) e deducendo, senza che sia specificato nella domanda, che un arrivo per le 13.00 in centro implichi un arrivo in aeroporto diverso a seconda dell'aeroporto effettivamente selezionato. 26