Estratto del documento

ORALE SISTEMI ESPERTI E SOFT COMPUTING

FONDAMENTI, SISTEMI ESPERTI (KBS) E KNOWLEDGE ENGINEERING – PRIMA MACRO AREA

INTELLIGENZA ARTIFICIALE E PARADIGMI DI CALCOLO

L'Intelligenza Artificiale (IA) è la disciplina informatica che si occupa di realizzare sistemi hardware e

software capaci di prestare prestazioni che, all'osservatore umano, sembrerebbero essere di pertinenza

dell'intelligenza umana.

All'interno dell'IA si distinguono due paradigmi fondamentali:

1. Hard Computing: Rappresenta l'informatica e il calcolo convenzionale. Si basa su modelli analitici

1)

precisi, sulla logica booleana classica (0 o e richiede dati perfetti, completi e privi di rumore. È

rigido e mira alla precisione assoluta.

2. Soft Computing: Si ispira ai sistemi biologici e accetta imprecisione, incertezza e verità parziale. Il

suo obiettivo non è l'esattezza analitica, ma la robustezza e la trattabilità computazionale, trovando

soluzioni "approssimativamente corrette" ed efficienti a bassi costi di calcolo per problemi del

mondo reale dove un modello esatto sarebbe impossibile da costruire.

DATI, INFORMAZIONE E CONOSCENZA

Nei sistemi intelligenti esiste una gerarchia fondamentale: 39).

1. Dati: Fatti grezzi, privi di contesto e significato autonomo (es. il numero ∘

39

2. Informazione: Dati strutturati e contestualizzati che acquisiscono un significato (es. C misurati

come temperatura corporea).

3. Conoscenza: L'insieme di informazioni integrate con regole, esperienze ed euristiche che

permettono di interpretare i dati e prendere decisioni o generare nuova informazione (es. "se la

38.5

temperatura corporea supera i C, allora somministra un antipiretico").

SISTEMI ESPERTI

Un sistema esperto (o KBS – Knowledge-Based System) è un’applicazione di Intelligenza Artificiale

progettata per risolvere problemi complessi in un dominio specifico, raggiungendo prestazioni paragonabili

a quelle di un esperto umano. La sua caratteristica distintiva è l’architettura modulare, che si basa sulla

separazione netta tra la conoscenza e il meccanismo di ragionamento.

I componenti fondamentali sono:

1. Base di Conoscenza (KB): è il deposito della conoscenza specialistica. Contiene fatti (dati certi) e

regole (euristiche del tipo IF-THEN). A differenza di un database, la KB permette di rappresentare

relazioni logiche.

2. Motore Inferenziale: E’ il “cervello” del sistema. Non contiene conoscenza sul problema, ma

conosce le regole della logica per manipolare la KB. Agisce tramite due strategie principali:

• Forward Chaining (Ragionamento guidato dai dati): Si parte dai fatti noti e si applicano le

regole per vedere quali nuove conclusioni si possono trarre. E’ ideale per la pianificazione o

il monitoraggio.

• Backward Chaining (Ragionamento guidato dagli obiettivi): Si parte da un’ipotesi (es. “il

paziente ha l’influenza?”) e si va a ritroso per vedere si i fatti presenti nella KB supportano

questa ipotesi. E’ tipico dei sistemi di diagnosi.

3. Working Memory: Un’area temporale che contiene I dati specifici del corso corrente e le

conclusioni intermedie raggiunte durante il ragionamento.

4. Modulo di spiegazione (explanation Subsystem): E’ cruciale per l’accettazione del sistema. Permette

all’utente di chiedere “Perché?” (Why) o “Come?” (How), e il sistema risponde ricostruendo la

catena di regole attivate. Questo rende l’IA “trasparente” e non una black-box.

TECNICHE DI RICERCA NELLO SPAZIO DEGLI STATI

Trovare una soluzione a un problema nei sistemi esperti significa effettuare una ricerca all'interno

dello spazio degli stati (l'insieme di tutte le configurazioni possibili che il problema può assumere dal

punto di partenza all'obiettivo).

1. Backtracking: È la tecnica di ricerca fondamentale. Esplora sequenzialmente un cammino nello

spazio degli stati; quando incontra un vicolo cieco (uno stato da cui non si può proseguire verso

l'obiettivo), l'algoritmo torna indietro (backtrack) all'ultimo punto di scelta per esplorare un

percorso alternativo.

RAPPRESENTAZIONE E INGEGNERIA DELLA CONOSCENZA (KNOWLEDGE ENGINEERING)

La conoscenza all'interno di un KBS può essere formalizzata usando diversi paradigmi di

rappresentazione: Logica del Primo Ordine, Regole di Produzione (IF-THEN), Reti Semantiche (grafi con

nodi e archi orientati per rappresentare concetti e relazioni) o Frame (strutture a schede con attributi e

valori).

Il processo di acquisizione della conoscenza si articola in tre definizioni chiave:

1. Knowledge Elicitation (Elicitazione): L'acquisizione manuale della conoscenza direttamente

da esperti umani tramite interviste, questionari o l'osservazione diretta del protocollo di pensiero

(think-aloud). Presenta la grande sfida del "collo di bottiglia" causato dalla conoscenza tacita (ciò

che l'esperto sa fare per intuizione ma fatica a verbalizzare).

2. Knowledge Extraction (Estrazione): L'acquisizione di conoscenza da fonti passive non umane

(documenti, log di sistema, database grezzi) tramite tecniche automatizzate o semi-automatizzate di

Data Mining e analisi del testo.

3. Knowledge Engineering (Ingegneria della Conoscenza): L'intera disciplina metodologica che guida il

ciclo di vita di un KBS: dall'acquisizione della conoscenza (elicitazione/estrazione) alla sua

formalizzazione, scelta dell'architettura, programmazione, validazione e manutenzione nel tempo.

PROGETTO DI UN SISTEMA ESPERTO (CICLO DI VITA E SVILUPPO)

La progettazione di un sistema esperto segue una metodologia strutturata suddivisa in 6 fasi fondamentali:

1. Identificazione del Problema (Feasibility Study): Si definiscono i confini del dominio, gli obiettivi del

sistema, i costi, le risorse disponibili e si individua l'esperto umano di riferimento. Si verifica se il

problema è adatto a un KBS (deve richiedere competenza specialistica, non solo senso comune).

2. Acquisizione della Conoscenza (Conceptualization): Il Knowledge Engineer interagisce con l'esperto

umano ed esamina la documentazione per estrarre le regole euristiche e i concetti chiave del

dominio (fase di Elicitation ed Extraction).

3. Strutturazione e Formalizzazione (Formalization): Si mappa la conoscenza concettuale in una

struttura formale. Si sceglie il paradigma di rappresentazione più idoneo (es. Regole IF-THEN,

Frame, Reti Semantiche) e il meccanismo di inferenza (Forward o Backward Chaining).

4. Implementazione (Prototipazione rapida): Si sviluppa un prototipo iniziale del sistema utilizzando

linguaggi dedicati (es. Prolog, CLIPS) o motori a regole. La prototipazione è iterativa: si mostra il

prototipo all'esperto per affinare e correggere le regole.

5. Testing e Validazione (Validation & Verification): Si valuta la qualità del sistema.

1. Verifica: Accerta che il software sia privo di errori logici o ridondanze nelle regole.

2. Validazione: Confronta le decisioni prese dal sistema esperto con quelle dell'esperto umano

su casi reali per misurarne l'accuratezza.

6. Manutenzione e Integrazione: Il sistema viene integrato nell'ambiente operativo reale. La Base di

Conoscenza viene continuamente aggiornata con nuove regole per adattarsi all'evoluzione del

dominio.

DOMANDE IPOTETICHE

QUAL E’ IL VANTAGGIO PRINCIPALE DELLA SEPARAZIONE TRA BASE DI CONOSCENZA E MOTORE

INFERENZIALE?

La manutenibilità. Puoi aggiungere, togliere o modificare le regole nella KB senza dover riprogrammare o

ricompilare il codice del Motore Inferenziale.

COSA SI INTENDE PER “CONOSCENZA TACITA” E COME INFLUISCE SULLA CREAZIONE DI UN SISTEMA

ESPERTO?

E’ la conoscenza che l’esperto usa inconsciamente ma fatica a spiegare. Questo causa il collo di bottiglia

dell’acquisizione della conoscenza durante la fase di Krowledge Engineering.

MI PARLI DELLA DIFFERENZA TRA FOWARD E BLACKWARD CHAINING. QUANDO PREFERIREBBE L’UNO O

L’ALTRO?

Sceglierei il Foward se ho molti dati iniziali e voglio vedere cosa ne deriva (es. previsioni meteo). Sceglierei il

Blackward se ho un numero limitato di ipotesi finali da verificare (es. diagnosi di una specifica lista di

malattie).

CHE RUOLO HA LA WORKING MEMORY DURANTE UNA SESSIONE DI INTERFERENZA?

Serve a memorizzare i fatti forniti dall’utente per il caso specifico e i risultati parziali. Senza di essa, il motore

inferenziale non avrebbe una “lavagna” su cui annotare i passaggi del suo ragionamento.

PROCESSING DEI DATI E VALIDAZIONE DEI MODELLI – SECONDA MACRO AREA

Nel Data Mining e nel Machine Learning, i dati grezzi raccolti dal mondo reale sono quasi sempre

incompleti, rumorosi o incoerenti. La fase di Trattamento Preliminare dei Dati (Data Preprocessing) è

fondamentale per trasformare i dati grezzi in un formato pulito e idoneo agli algoritmi di apprendimento,

garantendo l'affidabilità del modello finale.

Il Preprocessing si articola in quattro fasi principali:

1. Data Cleaning

Si occupa di individuare e correggere gli errori e le incongruenze nei dati.

1. Gestione dei Missing Value (Valori Mancanti): Quando un dataset presenta dati mancanti, si

utilizzano tre strategie principali:

1. Eliminazione: Rimozione dei record (righe) o delle variabili (colonne) con valori mancanti. Si

applica solo se i dati mancanti sono pochi e casuali per non perdere troppa informazione.

2. Imputazione manuale o deterministica: Sostituzione dei valori mancanti con una costante

globale, con la media (per variabili continue con distribuzione normale), la mediana (se ci

sono outlier) o la moda (per variabili categoriali).

3. Imputazione basata su modelli: Utilizzo di algoritmi predittivi (es. KNN o regressione) per

stimare il valore mancante in base alle altre caratteristiche dell'individuo.

2. Gestione del Rumore (Noise) e Outlier: Il rumore è un errore casuale o una variazione indesiderata

in una variabile misurata. Si gestisce tramite tecniche di Binning (raggruppamento dei dati in

intervalli e livellamento con media o mediana), Regressione o Clustering per individuare e isolare

gli outlier (valori anomali).

2. Data Integration

Consiste nell'unire dati provenienti da più sorgenti eterogenee (database differenti, file flat, documenti

XML) in un'unica vista coerente.

1. Sfide principali: Risoluzione delle incongruenze negli schemi (es. lo stesso attributo chiamato

"ID_Cliente" in un DB e "Cod_Utente" in un altro), gestione delle ridondanze e identificazione dei

dati duplicati tramite l'Analisi di Correlazione (es. Indice di Pearson o test del Chi-Quadro).

3. Data Reduction (Riduzione dei Dati - Lezioni 16-18)

Mira a ridurre la quantità di dati da elaborare, mantenendo al contempo l'integrità dell'informazione

essenziale e riducendo il tempo computazionale.

1. Dimensionality Reduction (Riduzione della Dimensionalità): Riduzione del numero di attributi

(colonne). Si effettua tramite:

1. Feature Selection: Selezione di un sottoinsieme degli attributi originali più rilevanti (es.

eliminando variabili ridondanti o irrilevanti).

2. Feature Extraction: Trasformazione degli attributi originali in uno spazio a dimensione

inferiore. La tecnica principale è la PCA (Principal Component Analysis), che proietta i dati

su assi ortogonali (componenti principali) che massimizzano la varianza.

2. Numerosity Reduction (Riduzione della Numerosità): Riduzione del numero di record (righe). Si

applica tramite tecniche parametriche (modelli matematici come la regressione) o non

parametriche come il Campionamento (Sampling), l'Istituzione di Istogrammi e il Clustering.

3. Discretizzazione (Lezione 18): Conversione di variabili continue in intervalli discreti o categorie (es.

trasformare l'età

Anteprima
Vedrai una selezione di 5 pagine su 17
Sistemi esperti e Soft Computing - Appunti completi corso + Domande esame Orale e Guida Esercitazione Pag. 1 Sistemi esperti e Soft Computing - Appunti completi corso + Domande esame Orale e Guida Esercitazione Pag. 2
Anteprima di 5 pagg. su 17.
Scarica il documento per vederlo tutto.
Sistemi esperti e Soft Computing - Appunti completi corso + Domande esame Orale e Guida Esercitazione Pag. 6
Anteprima di 5 pagg. su 17.
Scarica il documento per vederlo tutto.
Sistemi esperti e Soft Computing - Appunti completi corso + Domande esame Orale e Guida Esercitazione Pag. 11
Anteprima di 5 pagg. su 17.
Scarica il documento per vederlo tutto.
Sistemi esperti e Soft Computing - Appunti completi corso + Domande esame Orale e Guida Esercitazione Pag. 16
1 su 17
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher ilariadefeo di informazioni apprese con la frequenza delle lezioni di Sistemi esperti e soft computing e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università telematica "e-Campus" di Novedrate (CO) o del prof Antonelli Michela.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community