mirror of
https://github.com/Steffo99/unisteffo.git
synced 2024-11-26 01:44:20 +00:00
Add part of evaluation
This commit is contained in:
parent
287dc81608
commit
d4d2e30ff5
3 changed files with 81 additions and 5 deletions
|
@ -75,12 +75,15 @@ export default function () {
|
||||||
Come il modello classico, ignora l'ordine delle parole.
|
Come il modello classico, ignora l'ordine delle parole.
|
||||||
</p>
|
</p>
|
||||||
</Panel>
|
</Panel>
|
||||||
<Panel title={"Modello probabilistico"} color={BoxColors.YELLOW}>
|
<Panel title={"Modello probabilistico"}>
|
||||||
<p>
|
<p>
|
||||||
<b>Modello IR</b> che effettua il ranking in base alla <b>probabilità</b> che un documento sia rilevante.
|
<b>Modello IR</b> che effettua il ranking in base alla <b>probabilità</b> di comparsa dei termini della query nei documenti.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<i>To be continued...</i>
|
Si basa sul calcolare un peso <ILatex>{r`c_i`}</ILatex> per ogni termine della query. Quest'ultimo diventa più grande se il termine <b>compare in documenti rilevanti</b>, e più piccolo se compare in documenti irrilevanti. Se il termine compare in ugual modo in entrambi, allora esso varrà <ILatex>{r`0`}</ILatex>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<i>Ci sarebbe una dimostrazione complessa che ho omesso per brevità.</i>
|
||||||
</p>
|
</p>
|
||||||
</Panel>
|
</Panel>
|
||||||
<Panel title={"Modello fuzzy"}>
|
<Panel title={"Modello fuzzy"}>
|
||||||
|
@ -101,9 +104,15 @@ export default function () {
|
||||||
\end{cases}
|
\end{cases}
|
||||||
`}</PLatex>
|
`}</PLatex>
|
||||||
</Panel>
|
</Panel>
|
||||||
<Panel title={"Modello BM25"} color={BoxColors.YELLOW}>
|
<Panel title={"Modello BM25"}>
|
||||||
<p>
|
<p>
|
||||||
<i>Non ho seriamente capito.</i>
|
<b>Modello IR</b> simile ai modelli classici che però tiene conto anche della <b>frequenza dei termini</b> nei documenti e della <b>lunghezza dei documenti</b>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Permette anche di tenere in considerazione la frequenza dei termini <b>nella query</b>, nel caso essa sia molto lunga.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<i>Ci sono formule che ho omesso per brevità.</i>
|
||||||
</p>
|
</p>
|
||||||
</Panel>
|
</Panel>
|
||||||
</Section>
|
</Section>
|
||||||
|
|
65
src/routes/GestioneDellInformazione/10_Evaluation.js
Normal file
65
src/routes/GestioneDellInformazione/10_Evaluation.js
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
import {Fragment} from "preact";
|
||||||
|
import {Section, Panel, ILatex, BLatex, PLatex} from "bluelib";
|
||||||
|
import Example from "../../components/Example";
|
||||||
|
import ToBeContinued from "../../components/ToBeContinued";
|
||||||
|
|
||||||
|
const r = String.raw;
|
||||||
|
|
||||||
|
|
||||||
|
export default function () {
|
||||||
|
return (
|
||||||
|
<Fragment>
|
||||||
|
<Section title={"Parametri di valutazione"}>
|
||||||
|
<Panel title={"Richiamo"}>
|
||||||
|
<p>
|
||||||
|
La <b>frazione dei documenti rilevanti totali restituita</b>:
|
||||||
|
</p>
|
||||||
|
<PLatex>{r`
|
||||||
|
\frac{R \cap A}{R}
|
||||||
|
`}</PLatex>
|
||||||
|
</Panel>
|
||||||
|
<Panel title={"Precisione"}>
|
||||||
|
<p>
|
||||||
|
La <b>frazione dei documenti restituiti che sono rilevanti</b>:
|
||||||
|
</p>
|
||||||
|
<PLatex>{r`
|
||||||
|
\frac{R \cap A}{A}
|
||||||
|
`}</PLatex>
|
||||||
|
</Panel>
|
||||||
|
</Section>
|
||||||
|
<Section title={"Valutazione dei modelli"}>
|
||||||
|
<Panel title={"Come funziona?"}>
|
||||||
|
<p>
|
||||||
|
Si effettuano <i>test</i> e si valutano precisione e richiamo ottenuti.
|
||||||
|
</p>
|
||||||
|
<aside>
|
||||||
|
<u>Test</u>: verifica di un programma in cui l'output corretto è conosciuto a priori.
|
||||||
|
</aside>
|
||||||
|
<p>
|
||||||
|
Il modello IR ideale ha valori di richiamo e precisione di 1, ma nella realtà questi valori tendono ad essere <b>inversamente proporzionali</b>.
|
||||||
|
</p>
|
||||||
|
</Panel>
|
||||||
|
<Panel title={"Misura a livelli di richiamo fissi"}>
|
||||||
|
<p>
|
||||||
|
Si fissano un certo numero di livelli di richiamo desiderati e si misura la precisione che ha il modello in quei punti, creando una <i>curva di richiamo standard</i>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
È possibile ottenere una <i>curva di richiamo interpolata</i> prendendo per ogni punto il valore di massima precisione tra esso e i punti precedenti.
|
||||||
|
</p>
|
||||||
|
<Example>
|
||||||
|
Interpolata mi sembra un termine orribile... Non sarebbe molto meglio <b>monotonica</b>?
|
||||||
|
</Example>
|
||||||
|
</Panel>
|
||||||
|
<Panel title={"Media o valore singolo?"}>
|
||||||
|
<p>
|
||||||
|
È possibile misurare la <i>curva di richiamo media</i> effettuando la media su più query dei vari valori, e la <i>curva di richiamo a valore singolo</i> effettuando una query sola.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Sono entrambe importanti per effettuare una valutazione, perchè la curva media potrebbe <b>mascherare problemi di specifiche query</b> nei modelli.
|
||||||
|
</p>
|
||||||
|
</Panel>
|
||||||
|
</Section>
|
||||||
|
<ToBeContinued/>
|
||||||
|
</Fragment>
|
||||||
|
)
|
||||||
|
}
|
|
@ -8,6 +8,7 @@ import InformationContent from "./06_InformationContent";
|
||||||
import AnalisiLessicale from "./07_AnalisiLessicale";
|
import AnalisiLessicale from "./07_AnalisiLessicale";
|
||||||
import Indexing from "./08_Indexing";
|
import Indexing from "./08_Indexing";
|
||||||
import Modeling from "./09_Modeling";
|
import Modeling from "./09_Modeling";
|
||||||
|
import Evaluation from "./10_Evaluation";
|
||||||
|
|
||||||
|
|
||||||
export default function () {
|
export default function () {
|
||||||
|
@ -24,6 +25,7 @@ export default function () {
|
||||||
<AnalisiLessicale/>
|
<AnalisiLessicale/>
|
||||||
<Indexing/>
|
<Indexing/>
|
||||||
<Modeling/>
|
<Modeling/>
|
||||||
|
<Evaluation/>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue