Macchine coscienti 13

Nelle reti a strati nascosti non vi è la possibilità di calcolare l'errore in base ad un input di insegnamento, ostacolo superato con la back propagation che offre un metodo per stimare quale sia il contributo di ogni unità nascosta agli errori delle unità di output connesse. L'apprendimento in una rete con unità nascoste e con la back propagation avviene così: si stabiliscono patterns di attivazione in ingresso e per ciascuno di questi si stabilisce un "target" di insegnamento. La rete processa questa serie di patterns un certo numero di volte (anche migliaia). Dopo ogni processamento si verifica un errore complessivo (la media dei quadrati dell'errore di ogni unità di output) che deve essere ridotto. La back propagation, con opportuni correttivi, evita che la rete cada in un "minimo locale" cioè in un assetto dei pesi da cui non riesce a spostarsi e che non corrisponde all'errore minimo globale ricercato. E' anche possibile variare il tasso di apprendimento della rete, cioè si può determinare quanto debba essere grande il cambiamento di peso, dato un certo errore. In genere si preferisce fare cambiamenti lievi. Altro fattore modificabile è il momento in cui introdurre il cambiamento necessario. La rete, in un certo senso, va oltre lo stimolo dato, fa inferenze. L'architettura di una rete può essere ulteriormente complicata, il solo limite è che sia sempre possibile l'applicazione della back propagation o del metodo di apprendimento utilizzato. Esistono anche metodi di apprendimento supervisionato (detti apprendimento per rinforzo, in cui ci si limita a dire alla macchina se il suo comportamento va bene oppure no, senza dirle esattamente come comportarsi) oppure apprendimento non supervisionato (in cui la macchina apprende perché scopre da sola regolarità nell'input, senza ricevere correzioni dall'esterno Nell'apprendimento per evoluzione genetica, invece, vi è un solo fattore che spinge l'evoluzione del sistema verso prestazioni più efficaci: la riproduzione selettiva e l'aggiunta sistematica di variabilità nel sistema. Marc Mèzard e Jean-Pierre Nadal hanno scoperto un metodo che consente un'architettura di rete minima capace di crescere fino a raggiungere le dimensioni adatte per svolgere un dato compito (tiling algorithm). Il connessionismo rende evidente perché la memoria dei calcolatori informatici sia una cosa molto diversa dalla memoria biologica. Un sistema connessionista recupera una informazione conservata in rete anche presentandone un'altra somigliante e la recupera ovunque essa sia. Infatti non è chiaro in che senso si possa parlare di un file di informazione in un sistema di questo tipo. E' anche possibile recuperare informazioni che non si sapeva fossero nella rete e a cui non occorre dare un nome o un qualsiasi altro tipo di classificazione (che poi sarebbe necessario ricordare). Le reti neurali si possono considerare come reti di memoria nella quale ogni singola esperienza lascia una traccia che influenza il modo in cui la rete reagirà successivamente ad esperienze più o meno simili, o collegate in qualche modo alle precedenti. Il passato incide però in blocco sul presente e non c'è differenza tra passato più o meno remoto a meno che nella rete non sia presente un secondo tipo di memoria sensibile al tempo inteso anche come dimensione e che abbia capacità limitata per cui più passa il tempo minore è l'influenza di un'esperienza, che può arrivare fino a scomparire per qualche motivo (nella mente umana comunque non si è sicuri che scompaia il ricordo, forse se ne perde solo la chiave d'accesso)...