Jun E: Madanmeldelser

TF-IDF på restaurantanmeldelser — term frequency, IDF og stopord.

Søgemaskine baseret på TF-IDF med $N=3000$ anmeldelser. Anmeldelse 1 (8 ord):

Maden var fantastisk og desserten var absolut vidunderlig
OrdDFForekomster i anm. 1
var2 9002
og2 7001
fantastisk1501
maden1 5001
vidunderlig301
$$\mathrm{TF}(t,d)=\frac{\#\,t\text{ i }d}{\#\,\text{ord i }d},\quad \mathrm{IDF}(t)=\ln\frac{N}{\mathrm{DF}(t)}$$
$$\mathrm{TF\text{-}IDF}(t,d)=\mathrm{TF}(t,d)\cdot\mathrm{IDF}(t)$$
Spørgsmål E.1

Beregn TF for ordet var i anmeldelse 1.

Vis svar Skjul svar
Svar E.1
$$\mathrm{TF}(\mathrm{var},1)=\frac{2}{8}=0.25$$

0.25

Spørgsmål E.2

Beregn TF-IDF for fantastisk i anmeldelse 1.

Vis svar Skjul svar
Svar E.2
$$\mathrm{TF}=\frac{1}{8}=0.125,\quad \mathrm{IDF}=\ln\frac{3000}{150}=\ln 20\approx 2.996$$
$$\mathrm{TF\text{-}IDF}\approx 0.125\cdot 2.996\approx 0.374$$

≈ 0.374

Spørgsmål E.3

Sammenlign TF-IDF for maden og vidunderlig. Hvilket scorer højest, og hvorfor?

Vis svar Skjul svar
Svar E.3
$$\mathrm{TF\text{-}IDF}(\mathrm{maden})\approx 0.125\cdot\ln 2\approx 0.087$$
$$\mathrm{TF\text{-}IDF}(\mathrm{vidunderlig})\approx 0.125\cdot\ln 100\approx 0.576$$

Vidunderlig scorer højere fordi det er meget sjældnere (DF=30 vs 1500) og dermed mere karakteristisk.

vidunderlig (lavere DF → højere IDF)

Spørgsmål E.4

Hvilken begrundelse for at fjerne stopord er mest korrekt?

  1. Hvis stopord ikke fjernes kan IDF ikke beregnes pga. division med nul.
  2. Stopord forekommer i næsten alle dokumenter og bidrager derfor kun lidt til at skelne mellem relevante og irrelevante dokumenter.
  3. Stopord fjernes, fordi de ellers kan komme til at dominere søgningen på grund af deres høje forekomst i tekster.
Vis svar Skjul svar
Svar E.4

Stopord har meget lav IDF (fx $\mathrm{IDF}(\mathrm{var})\approx 0.034$) og bidrager næsten ikke til TF-IDF-vektoren. Svar b er mest korrekt.

b