Inferenza temporale

L'inferenza temporale è il ragionamento artificiale probabilistico nel tempo. E' un insieme di metodi e tecniche per prendere decisioni razionali in base alla situazione corrente e passata dell'ambiente circostante.

A cosa serve? L'inferenza temporale è utilizzata nell'intelligenza artificiale per progettare agenti razionali e delle macchine intelligenti.

Agli occhi di un agente razionale l'ambiente è un sistema di variabili matematiche.

Come funziona il ragionamento artificiale nel tempo

In un modello statico ogni aspetto della realtà è associato a una variabile casuale.

un esempio di modello statico

Nota. Ovviamente sono presi in considerazione soltanto alcuni aspetti della realtà, quelli considerati più importanti per la decisione da prendere. Sarebbe impossibile elaborare ogni informazione esterna.

In un modello dinamico, invece, per ogni variabile casuale esiste una variabile dello stato corrente e una o più variabili degli stati passati.

il modello dinamico inferenziale

Questo permette all'agente razionale di analizzare l'evoluzione della situazione nel corso del tempo.

L'elaborazione delle informazioni dello stato corrente e dello stato passato dell'ambiente, consente all'agente razionale di giungere a una decisione.

Le variabili del sistema

Qualsiasi sistema di ragionamento probabilistico opera in un ambiente caratterizzato da incertezza.

Pertanto, alcune variabili del sistema sono direttamente osservabili mentre altre no.

la differenza tra le variabili di prova e incognite

Le variabili osservabili sono dette variabili di prova. A queste variabili si può assegnare un valore certo perché l'agente lo rileva direttamente dai sensori.

Perché sono dette variabili di prova? Sono chiamate così perché aiutano l'agente a costruire un ipotesi sulla parte non osservabile della realtà.

Le variabili non osservabili sono invece dette variabili incognite. A queste altre variabili non si può assegnare nessun valore perché non sono rilevabili dai sensori.

In genere, l'insieme delle variabili incognite è associato alla lettera X.

Esempio. Mi trovo in ufficio con l'aria condizionata e la temperatura interna è sempre la stessa in ogni mese dell'anno. Non posso aprire la finestra dell'ufficio, né uscire. Dalla mia finestra posso soltanto vedere la strada e la gente che cammina. In questo caso, la Pioggia è una variabile di prova perché posso vedere se piove oppure no. La Temperatura e l'Umidità sono invece variabili incognite perché non ho modo di capire se fa caldo o freddo, se l'aria è umida o secca.
la vista dalla finestra dell'ufficio
Potrei però dedurre la temperatura esterna in modo indiretto, osservando l'abbigliamento delle persone che camminano in strada. Per fare questo devo aggiungere al sistema un'altra variabile di prova ( AbbigliamentoPersone ). Quest'ultima variabile mi consente di stimare un valore da assegnare alle variabili Temperatura e Umidità.

La time slice delle variabili del sistema

Per ogni variabile causale si può costruire una time slice ( catena o sequenza temporale ).

La time slice è la rappresentazione della serie degli stati della variabile nel corso del tempo.

la time slice delle variabili del sistema

Nella precedente time-slice sono rappresentati l'insieme delle variabili di prova (O) e delle incognite (X).

In genere la sequenza degli stati comincia sempre da un istante iniziale (t=0)

Nota. L'intervallo di tempo tra due stati temporali della variabile dipende dal problema. In alcuni problemi l'intervallo temporale ( t-1, t ) è di pochi secondi, in altri è di settimane, mesi o anni. Dipende dal problema.

Nella time-slice gli stati di un istante t sono la fotografia ( o frame ) dello stato dell'ambiente in quel momento.

L'insieme dei frame su diversi istanti temporali compone il film della variabile o del sistema.

lo stato del sistema in un istante temporale

In questo modo, l'agente razionale può trasformare un fenomeno continuo in un fenomeno discreto.

La discretizzazione delle variabili rende più rapida l'elaborazione dei dati.

Esempio. La variabile pioggia varia in ogni secondo. Tuttavia, è inutile avere una variabile che mi dica se piove ogni secondo. Per analizzare un'ora mi servirebbero 3600 variabili temporali ( 60 secondi x 60 minuti ). Per studiare il problema è sufficiente rilevare la variabile che mi indica la presenza della pioggia ogni 10 minuti. In questo modo, la serie temporale della variabile è composta soltanto da 6 livelli in un'ora. Si riduce la memoria e il tempo di elaborazione ( complessità spaziale e temporale ).

La relazione tra le variabili

Una volta stabilito l'insieme delle variabili di stato, bisogna definire le relazioni logiche tra le variabili.

Una parte delle variabili del sistema sono determinate da altre variabili.

la relazione tra due variabili

In questa fase si costruisce il modello previsionale e decisionale dell'agente razionale.

Nota. Si tratta di una fase molto delicata della progettazione, perché da questo dipende l'efficacia previsionale del modello. Se le relazioni tra le variabili sono sbagliate, le decisioni dell'agenti saranno sbagliate.

Per modellare le relazioni si seguono alcune ipotesi di semplificazione.

  • Ipotesi della relazione stazionaria. Si ipotizza che ogni relazione tra le variabili sia stazionaria, ossia non cambi nel corso del tempo.
  • Ipotesi di Markov. Si ipotizza che ogni variabile Ot ( figlia ) sia determinata dallo stato precedente Ot-1 ( genitore ).
    L'ipotesi di Markov di primo livello

    Per rappresentare questa ipotesi sono molto utili le catene di Markov di primo, secondo o terzo grado a seconda che la relazione sia soltanto con lo stato precedente ( t-1 ) o con gli ultimi due ( t-2 ) o tre stati ( t-3 ).

    Eccezione. In genere l'ipotesi di Markov si applica soltanto alle variabili incognite ( X ). Si presume, invece, che le variabili osservabili nel presente ( Ot ) siano già ben evidenti di per sé e dipendano soltanto da altre variabili incognite dello stato corrente ( Xt ).
    le variabili osservabili dipendono soltanto dallo stato corrente

Il modello transazionale e sensoriale

Il sistema è essenzialmente composto da due modelli:

  1. Il modello transazionale è formato dalle variabili che dipendono dagli stati passati. Nel modello transazionale sono incluse sia le variabili osservabili (O) che incognite (X).
  2. Il modello sensoriale è formato dalle variabili che dipendono dallo stato corrente. In particolar modo le variabili osservabili (O) perché sono rilevabili dai sensori in tempo reale. Da questo deriva l'aggettivo "sensoriale".

un esempio di modello sensoriale e transazionale

Esempio. Se all'istante t1 vedo passare in strada delle persone in t-shirt (A1) è evidente che la temperatura esterna (T1) sia alta. Io sto guardando la scena dall'ufficio e la finestra è chiusa, quindi non posso rilevare la temperatura ( incognita ) in modo diretto. La variabile osservabile (A1) dipende dalla mia vista ed è certa ( modello sensoriale ). Una volta dedotto che fa caldo (T1) posso usare il modello transazionale per stimare la temperatura di ieri ( T0 ). Ad esempio, se ipotizzo che al 70% una giornata è calda se anche la giornata precedente lo è stata ( Tt-1 ), posso dedurre che al 70% di probabilità anche ieri ( T0 ) la temperatura è stata alta ( modello transazionale ).

Pertanto, la distribuzione probabilistica completa di qualsiasi variabile del sistema è la seguente:

la distribuzione probabilistica della variabile

Una volta costruito il modello si può definire la tecnica inferenziale che l'agente razionale dovrà usare.

Le principali tecniche di inferenza temporale sono le seguenti:

  1. Il filtraggio
  2. La predizione
  3. La regolarizzazione
  4. La sequenza più probabile
 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

  1. Come migliorare la capacità previsionale dell'algoritmo?
    Si possono seguire le seguenti strade:
    1. Si aumenta il grado del modello. Ad esempio, si passa dalla catena di Markov di 1° a quella di 2° per ogni variabile.
    2. Si aumenta il numero delle variabile. Si prendono in considerazione altre variabili di prova per migliorare la stima sulle variabile incognite. E' un approccio di tipo estensivo.
    3. Si cambiano le relazioni. Le relazioni tra le variabili potrebbero essere sbagliate o poco affidabili. In questo caso, la formula va sostituita con un'altra più affidabile.
FacebookTwitterLinkedinLinkedin
knowledge base

Libri di approfondimento

Il ragionamento artificiale