L’esistenza dell’informazione è condizionata dalla presenza di un soggetto “percipiente” o esiste a prescindere dall’uomo? Un testo conservatosi in una lingua non più decodificabile contiene ancora informazione?

Il concetto di informazione come messaggio prevede l’esistenza di un’entità trasmittente e di una ricevente. Shannon (1948) ha fornito una descrizione formale di questo processo dove concorrono un canale ed un processo di decodifica / decodifica.

Volendo filosofeggiare, qualora il percipiente scompaia, oppure il processo di codifica/decodifica non sia più disponibile, l’informazione stessa cessa di esistere per definizione.

Tuttavia, risultati estremamente interessanti (Yarowsky, 1992) nell’ambito della linguistica computazionale (NLP – Natural Language Processing) indicano che è possibile applicare un approccio di tipo probabilistico per estrarre informazione da un testo, purché questo sia sufficientemente esteso.

L’idea è di considerare il testo come sequenza di parole (termini) e di partire dall’assunto che, su un grande numero di termini, termini dalla semantica (significato) simile, tendono a raggrupparsi intorno a termini cosiddetti “prototipici”.

L’elenco seguente illustra la serie di categorie di significato, per i nomi, oggi adottata in NLP:

1 Tops

2 act

3 animal

4 artifact

5 attribute

6 body

7 cognition

8 communication

9 event

10 feeling

11 food

12 group

13 location

14 motive

15 object

16 person

17 phenomenon

18 plant

19 possession

20 process

21 quantity

22 relation

23 shape

24 state

25 substance

26 time

Determinare il significato di un testo vuol dire quindi assegnare una classe di appartenenza per ogni termine w in esso contenuto.

Un termine è detto prototipico se per una data classe può essere assunto come marcatore. Ad esempio “casa” è prototipico per la classe 4/Artifact e “cerchio” per la classe 23/Shape. La collezione di termini prototipici per una classe è detto kernel della classe.

L’assunto di Yarowsky prevede che termini appartenenti alla stessa classe tendono a raggrupparsi in aree di testo attigue, definendo quindi come contesto la finestra di termini che dista +/- n parole da un termine centrale, è possibile determinare la probabilità che un termine di significato sconosciuto appaia nei contesti di una classe C, come segue.

Si definisce mutua occorrenza, la quantità:

numero di occorrenze del termine v nei contesti del termine w

allora, il numero di occorrenze del termine v nei contesti di una classe C è definito come il numero di volte che il termine v appare nel contesto di termini appartenenti al kernel per quella classe:

Secondo Yarowsky :un termine è candidabile alla classificazione in classe C se appare di frequente nei contesti di termini salienti per quella classe”.

La definizione formale di termine saliente per una classe può essere costruita sulla base della mutua occorrenza: un termine è tanto più saliente per la classe C quanto più è alta la probabilità di vederlo nei contesti di termini appartenenti al kernel di quella classe, più formalmente:

[1]

ovvero il grado di importanza di un termine per una classe è dato dal numero di volte che questo termine appare nei contesti di quella classe diviso per il numero di volte complessivo che il termine appare nei contesti di tutte le classi.

Il lavoro di Yarowsky procede oltre e fornisce un metodo completo per riclassificare tutti i termini nel testo, ma il dettaglio è matematicamente troppo pesante per questa sede (chi volesse, può contattarmi per richiedere il materiale su cui ho svolto la mia tesi di Laurea, proprio in questo ambito).

Il problema iniziale è quello di identificare un numero di termini sufficienti per definire il kernel delle varie classi. Fatto ciò, si può procedere per iterazioni, semplificando:

  1. Si determina la collezione di termini salienti per la classe C, ovvero di termini per cui la probabilità [1] supera una certa soglia.
  2. Si opera un processo detto di disambiguazione, ovvero i termini salienti identificati sono caratterizzati da una distribuzione di probabilità lungo le classi. Applicando opportuni algoritmi di filtro è possibile stabilire un set di classi per cui questi termini sono particolarmente rappresentativi.
  3. Si aggiungono i termini nel kernel delle classi identificate nel passo precedente e si riparte dal punto 1, fino a che non si è classificato l’intero campione di termini.

Risultati successivi, tra cui il filone in cui si colloca la mia tesi di Laurea, mostrano che è possibile determinare un kernel per le classi utilizzando un dizionario che riporti i termini ad un elenco di candidati in una lingua nota, per cui la classificazione è disponibile.

Avendo a disposizione un’analogo della stele di Rosetta, è quindi possibile determinare una distribuzione di probabilità dei significati che i termini del linguaggio sconosciuto possono assumere.

In questo senso, la risposta è positiva: qualsiasi collezione di testo, purché sufficientemente esteso, contiene in sé un’informazione intrinseca, che può essere estratta in modo opportuno.