Zmiana wag częstotliwości
Do tej pory po prostu zliczałeś terminy w dokumentach przy użyciu DocumentTermMatrix lub TermDocumentMatrix. W tym ćwiczeniu poznasz ważenie TfIdf jako alternatywę dla zwykłej częstotliwości terminu.
TfIdf to skrót od term frequency-inverse document frequency (częstotliwość terminu – odwrotna częstotliwość dokumentu) i stosuje się je wtedy, gdy masz duży korpus z ograniczoną różnorodnością terminów.
TfIdf zlicza terminy (czyli Tf), normalizuje wartość względem długości dokumentu, a następnie penalizuje ją tym bardziej, im częściej dane słowo pojawia się w całym zbiorze dokumentów. To podejście ma sens: jeśli jakieś słowo jest wszechobecne, jest co prawda istotne, ale nie wnosi nic odkrywczego. Ten aspekt kary jest zawarty właśnie w odwrotnej częstotliwości dokumentu (czyli Idf).
Przykładowo, w notatkach działu obsługi klienta może pojawić się skrót „cu" oznaczający „customer" (klienta). Jedna notatka może zawierać zdanie „the cu has a damaged package", a inna „cu called with question about delivery". Przy ważeniu częstotliwością dokumentu „cu" pojawia się dwukrotnie, co sugeruje, że jest informatywne. Jednak w podejściu TfIdf „cu" zostaje ukarane, bo występuje we wszystkich dokumentach. W efekcie „cu" nie jest uznawane za termin odkrywczy – jego wartość maleje do zera, dzięki czemu inne terminy zyskują wyższe wartości w analizie.
To ćwiczenie jest częścią kursu
Eksploracja tekstu metodą Bag-of-Words w R
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Create a TDM
tdm <- ___
# Convert it to a matrix
tdm_m <- ___
# Examine part of the matrix
tdm_m[___, ___]