From bdadb2e07373e6998284a017ac49eda9caf1f84e Mon Sep 17 00:00:00 2001 From: Stefano Pigozzi Date: Mon, 16 Nov 2020 17:33:52 +0100 Subject: [PATCH] Reorganize Gestione dell'Informazione --- .../01_InformationRetrival.js | 74 ---------------- .../GestioneDellInformazione/02_Similarity.js | 81 +++++++++++++++++ .../GestioneDellInformazione/03_Queries.js | 88 +++++++++++++++++++ ...Processing.js => 04_DocumentProcessing.js} | 19 +--- .../GestioneDellInformazione/05_Thesaurus.js | 27 ++++++ .../06_InformationContent.js | 33 +++++++ .../07_AnalisiLessicale.js | 22 +++++ src/routes/GestioneDellInformazione/index.js | 12 ++- 8 files changed, 266 insertions(+), 90 deletions(-) create mode 100644 src/routes/GestioneDellInformazione/02_Similarity.js create mode 100644 src/routes/GestioneDellInformazione/03_Queries.js rename src/routes/GestioneDellInformazione/{02_DocumentProcessing.js => 04_DocumentProcessing.js} (80%) create mode 100644 src/routes/GestioneDellInformazione/05_Thesaurus.js create mode 100644 src/routes/GestioneDellInformazione/06_InformationContent.js create mode 100644 src/routes/GestioneDellInformazione/07_AnalisiLessicale.js diff --git a/src/routes/GestioneDellInformazione/01_InformationRetrival.js b/src/routes/GestioneDellInformazione/01_InformationRetrival.js index 3aca93d..94da98f 100644 --- a/src/routes/GestioneDellInformazione/01_InformationRetrival.js +++ b/src/routes/GestioneDellInformazione/01_InformationRetrival.js @@ -22,80 +22,6 @@ export default function (props) {

-
- -

- La richiesta di informazioni effettuata da un utente in linguaggio naturale. -

-
- -

- La traduzione dell'UIN in un linguaggio specifico al motore di ricerca. -

-

- La complessità di questo linguaggio dipende dall'utilizzatore del motore di ricerca: il suo livello di esperienza, il suo background di conoscenze e il livello di approfondimento desiderato. -

-
-
-
- - - Wikipedia e la ricerca di Telegram usano un linguaggio di query keyword-based. - -

- Definisce parole chiave da cercare all'interno dei documenti. -

-

- In esse, è possibile cercare molteplici parole chiave, concatenarle per formare una frase oppure cercare parole a una data prossimità l'una dall'altra. -

-

- Spesso processa il linguaggio naturale per trasformarne le parole specifiche in parole chiave più generiche. -

- - Cercando su Telegram un plurale inglese, verranno restituiti anche i messaggi che riportano la stessa parola ma al singolare. - -
- - - Le regex e i glob sono due dei pattern-based query languages più comuni. - -

- Definisce parti di testo da cercare all'interno dei documenti. -

-

- Permettono dunque la ricerca di prefissi, suffissi, sottostringhe e intervalli. -

-
-
-
- - - Google, DuckDuckGo, Ecosia usano tutti un linguaggio di query keyword-based booleano. - -

- Estendono gli altri tipi di query permettendo l'inserimento di operatori booleani (AND, OR e NOT) tra le parole chiave. -

- - Per esempi sulla sintassi per effettuare ricerche booleane su Google, visita Google Advanced Search. - -
- - - Google Books permette di sfruttare la struttura fissa delle informazioni sui libri (titolo, autore, editore...) per ottenere risultati più precisi., - -

- Permettono di effettuare i precedenti tipi di query su specifiche parti della struttura dei documenti. -

-
- - - MeSH cataloga i paper di medicina caricati su PubMed organizzandoli in una gerarchia di categorie. - -

- Limitano le keyword a un vocabolario predefinito utilizzato anche dai documenti. -

-
-
) } diff --git a/src/routes/GestioneDellInformazione/02_Similarity.js b/src/routes/GestioneDellInformazione/02_Similarity.js new file mode 100644 index 0000000..7678186 --- /dev/null +++ b/src/routes/GestioneDellInformazione/02_Similarity.js @@ -0,0 +1,81 @@ +import {Fragment} from "preact"; +import {Section, Panel, ILatex, BLatex, PLatex} from "bluelib"; +import ToBeContinued from "../../components/ToBeContinued"; + +const r = String.raw; + + +export default function () { + return ( + +
+ +
+ synonymy +
+

+ Due parole sono sinonimi quando hanno lo stesso identico significato. +

+
+ +
+ similarity +
+

+ Due parole sono simili rappresentano concetti con caratteristiche in comune. +

+
+ +
+ relatedness +
+

+ Due parole sono correlate quando rappresentano concetti vengono usati insieme spesso. +

+
+
+
+ +

+ Un modo per misurare la somiglianza tra due parole confrontando solo la loro posizione nel thesaurus. +

+
+
+
+ +

+ Calcola la somiglianza basandosi sull'inverso della distanza tra le due parole {r`c_1`} e {r`c_2`} nell'albero: +

+ {r` + sim\_pd(c_1, c_2) = \frac{1}{dist(c_1, c_2) + 1} + `} +
+ +

+ Calcola la somiglianza basandosi sulla profondità dei due nodi e sulla profondità del minimo antenato comune {r`mac`}: +

+ {r` + sim\_wp(c_1, c_2) = \frac{2 \cdot depth(mac(c_1, c_2))}{depth(c_1) + depth(c_2)} + `} +
+
+
+ +

+ Un modo per misurare la somiglianza tra due parole attraverso i loro valori di information content. +

+
+
+
+ +

+ Calcola la somiglianza basandosi sull'information content del minimo antenato comune {r`mac`} tra i due termini. +

+ {r` + sim\_rs(c_1, c_2) = - \log P( mac(c_1, c_2) ) + `} +
+
+
+ ) +} diff --git a/src/routes/GestioneDellInformazione/03_Queries.js b/src/routes/GestioneDellInformazione/03_Queries.js new file mode 100644 index 0000000..aaf5a85 --- /dev/null +++ b/src/routes/GestioneDellInformazione/03_Queries.js @@ -0,0 +1,88 @@ +import {Fragment} from "preact"; +import {Section, Panel, ILatex, BLatex, PLatex} from "bluelib"; +import Example from "../../components/Example"; +import Link from "../../components/Link"; + +const r = String.raw; + + +export default function () { + return ( + +
+ +

+ La richiesta di informazioni effettuata da un utente in linguaggio naturale. +

+
+ +

+ La traduzione dell'UIN in un linguaggio specifico al motore di ricerca. +

+

+ La complessità di questo linguaggio dipende dall'utilizzatore del motore di ricerca: il suo livello di esperienza, il suo background di conoscenze e il livello di approfondimento desiderato. +

+
+
+
+ + + Wikipedia e la ricerca di Telegram usano un linguaggio di query keyword-based. + +

+ Definisce parole chiave da cercare all'interno dei documenti. +

+

+ In esse, è possibile cercare molteplici parole chiave, concatenarle per formare una frase oppure cercare parole a una data prossimità l'una dall'altra. +

+

+ Spesso processa il linguaggio naturale per trasformarne le parole specifiche in parole chiave più generiche. +

+ + Cercando su Telegram un plurale inglese, verranno restituiti anche i messaggi che riportano la stessa parola ma al singolare. + +
+ + + Le regex e i glob sono due dei pattern-based query languages più comuni. + +

+ Definisce parti di testo da cercare all'interno dei documenti. +

+

+ Permettono dunque la ricerca di prefissi, suffissi, sottostringhe e intervalli. +

+
+
+
+ + + Google, DuckDuckGo, Ecosia usano tutti un linguaggio di query keyword-based booleano. + +

+ Estendono gli altri tipi di query permettendo l'inserimento di operatori booleani (AND, OR e NOT) tra le parole chiave. +

+ + Per esempi sulla sintassi per effettuare ricerche booleane su Google, visita Google Advanced Search. + +
+ + + Google Books permette di sfruttare la struttura fissa delle informazioni sui libri (titolo, autore, editore...) per ottenere risultati più precisi., + +

+ Permettono di effettuare i precedenti tipi di query su specifiche parti della struttura dei documenti. +

+
+ + + MeSH cataloga i paper di medicina caricati su PubMed organizzandoli in una gerarchia di categorie. + +

+ Limitano le keyword a un vocabolario predefinito utilizzato anche dai documenti. +

+
+
+
+ ) +} diff --git a/src/routes/GestioneDellInformazione/02_DocumentProcessing.js b/src/routes/GestioneDellInformazione/04_DocumentProcessing.js similarity index 80% rename from src/routes/GestioneDellInformazione/02_DocumentProcessing.js rename to src/routes/GestioneDellInformazione/04_DocumentProcessing.js index 3c204fc..b197084 100644 --- a/src/routes/GestioneDellInformazione/02_DocumentProcessing.js +++ b/src/routes/GestioneDellInformazione/04_DocumentProcessing.js @@ -18,11 +18,14 @@ export default function () {

- Passo che trasforma il documento in una lista (bag of words) di parole (token). + Passo che trasforma il documento in un insieme di parole (token).

Deve decidere come considerare i simboli tipografici, il case delle lettere e le cifre.

+

+ Inoltre, è possibile che disambigui tra i vari significati delle parole (word sense disambiguation). +

@@ -63,20 +66,6 @@ export default function () {

-
- - -

- Misura di quanto due parole abbiano caratteristiche in comune. -

-

- È simile alla sinonimia tra parole -

-

- È diversa dalla correlazione tra parole, che misura quanto due parole vengono -

-
-
) } diff --git a/src/routes/GestioneDellInformazione/05_Thesaurus.js b/src/routes/GestioneDellInformazione/05_Thesaurus.js new file mode 100644 index 0000000..9a90b78 --- /dev/null +++ b/src/routes/GestioneDellInformazione/05_Thesaurus.js @@ -0,0 +1,27 @@ +import {Fragment} from "preact"; +import {Section, Panel, ILatex, BLatex, PLatex, Todo} from "bluelib"; +import Example from "../../components/Example"; +import Link from "../../components/Link"; + +const r = String.raw; + + +export default function () { + return ( + +
+ +

+ Un albero di token organizzati in una gerarchia di significato. +

+ + Il token "mela" avrà come genitore "frutto" e come figli "Renetta", "Fuji" e "Granny Smith". + + + WordNet è un thesaurus generale per la lingua inglese, mentre Nuovo soggettario è un thesaurus generale per la lingua italiana. + +
+
+
+ ) +} diff --git a/src/routes/GestioneDellInformazione/06_InformationContent.js b/src/routes/GestioneDellInformazione/06_InformationContent.js new file mode 100644 index 0000000..8c44648 --- /dev/null +++ b/src/routes/GestioneDellInformazione/06_InformationContent.js @@ -0,0 +1,33 @@ +import {Fragment} from "preact"; +import {Section, Panel, ILatex, BLatex, PLatex} from "bluelib"; + +const r = String.raw; + + +export default function () { + return ( + +
+ +

+ Un supplemento al thesaurus specifico a un certo testo: aggiunge ad ogni token {r`c`} la probabilità {r`P(c)`} che un termine selezionato a caso del testo appartenga al sottoalbero formato dal token e i suoi discendenti. +

+

+ La radice del thesaurus ha sempre probabilità {r`1`}. +

+
+ +

+ Una misura probabilistica di quanto un certo token {r`c`} sia specifico in un certo contesto: +

+ {r` + IC(c) = - \log \left( P(c) \right) + `} +

+ È anche detta sorpresa o informazione di Shannon. +

+
+
+
+ ) +} diff --git a/src/routes/GestioneDellInformazione/07_AnalisiLessicale.js b/src/routes/GestioneDellInformazione/07_AnalisiLessicale.js new file mode 100644 index 0000000..afc0b70 --- /dev/null +++ b/src/routes/GestioneDellInformazione/07_AnalisiLessicale.js @@ -0,0 +1,22 @@ +import {Fragment} from "preact"; +import {Section, Panel, ILatex, BLatex, PLatex} from "bluelib"; + +const r = String.raw; + + +export default function () { + return ( + +
+ +

+ Procedura che disambigua tra più significati dello stesso token. +

+

+ Si può realizzare confrontando la somiglianza di ogni significato con tutti gli altri nomi presenti nella frase. +

+
+
+
+ ) +} diff --git a/src/routes/GestioneDellInformazione/index.js b/src/routes/GestioneDellInformazione/index.js index 45caa10..45a790b 100644 --- a/src/routes/GestioneDellInformazione/index.js +++ b/src/routes/GestioneDellInformazione/index.js @@ -1,6 +1,11 @@ import Intro from "./00_Intro"; import InformationRetrieval from "./01_InformationRetrival"; -import DocumentProcessing from "./02_DocumentProcessing"; +import Similarity from "./02_Similarity"; +import Queries from "./03_Queries"; +import DocumentProcessing from "./04_DocumentProcessing"; +import Thesaurus from "./05_Thesaurus"; +import InformationContent from "./06_InformationContent"; +import AnalisiLessicale from "./07_AnalisiLessicale"; export default function () { @@ -9,7 +14,12 @@ export default function () {

Gestione dell'informazione

+ + + + + ) }