KyoMel / Yogyakarta, Indonesia

Term 295295 / 344

Term Frequency times Inverse Document Frequency(TF-IDF)

Month
August 2026
Day
10
Source
2026/august-term.md

Definition:

TF-IDF is a numerical formula that measures how important a word is to a document within a collection of documents (a corpus). It’s one of the most fundamental techniques in information retrieval and text analysis — used in search engines, document classification, keyword extraction, and text similarity.

The genius of TF-IDF is that it answers a subtle question: “which words actually matter?” Some words appear a lot in a document but don’t tell you much (like “the,” “and,” “is”). Other words appear less often but are far more meaningful (like “quantum” or “algorithm”). TF-IDF separates the noise from the signal.

It combines two scores:
THE TWO PARTS OF TF-IDF:
═══════════════════════════════════════════════════════════════

  ┌─────────────────────────────────────────────────────────┐
  │                                                         │
  │  TF (Term Frequency)                                     │
  │  ──────────────────────                                  │
  │  How often does the word appear IN THIS DOCUMENT?       │
  │                                                         │
  │  "A word that appears 10 times in a document is more    │
  │   important to it than a word that appears once."       │
  │                                                         │
  │  TF = (times the word appears) / (total words)          │
  │  ──or simpler──                                         │
  │  TF = times the word appears                            │
  │                                                         │
  └─────────────────────────────────────────────────────────┘
                        ×
  ┌─────────────────────────────────────────────────────────┐
  │                                                         │
  │  IDF (Inverse Document Frequency)                       │
  │  ──────────────────────────────────────                 │
  │  How RARE is the word across ALL documents?             │
  │                                                         │
  │  "A word that appears in EVERY document is common       │
  │   and uninformative. A word that appears in FEW         │
  │   documents is rare and discriminating."                │
  │                                                         │
  │  IDF = log( total documents / documents containing      │
  │         the word )                                      │
  │                                                         │
  │  • Word in every doc → log(1) = 0 → LOW importance     │
  │  • Word in few docs  → log(100/2) → HIGH importance    │
  │                                                         │
  └─────────────────────────────────────────────────────────┘
                          =
    ┌─────────────────────────────────────────────────────────┐
    │                                                         │
    │  TF-IDF = TF × IDF                                      │
    │                                                         │
    │  A word is IMPORTANT when it's:                          │
    │  ✅ Frequent IN the document (high TF)                  │
    │  AND                                                    │
    │  ✅ Rare ACROSS the corpus (high IDF)                   │
    │                                                         │
    └─────────────────────────────────────────────────────────┘

Example:

A visual walkthrough of calculating TF-IDF for a small corpus of documents.

THE CORPUS (4 documents):
Doc 1: "The cat sat on the mat"
Doc 2: "The dog sat on the log"
Doc 3: "Cats and dogs are pets"
Doc 4: "The quantum cat is a physics concept"
STEP 1: Term Frequency (TF) — count words in each document
═══════════════════════════════════════════════════════════════

  Doc 1: "The cat sat on the mat"

  Word     Count    TF (count/total)
  ─────    ─────    ─────────────────
  the      2        2/6 = 0.33
  cat      1        1/6 = 0.17
  sat      1        1/6 = 0.17
  on       1        1/6 = 0.17
  mat      1        1/6 = 0.17
  (6 total words)

  Doc 4: "The quantum cat is a physics concept"

  Word        Count    TF
  ─────       ─────    ─────────────────
  the         1        1/7 = 0.14
  quantum     1        1/7 = 0.14
  cat         1        1/7 = 0.14
  is          1        1/7 = 0.14
  a           1        1/7 = 0.14
  physics     1        1/7 = 0.14
  concept     1        1/7 = 0.14

  ── At this stage, every word in Doc 4 looks equally
     important (all TF = 0.14). We can't tell which words
     matter. That's why we need IDF.
STEP 2: Inverse Document Frequency (IDF) — rarity across the corpus
═══════════════════════════════════════════════════════════════

  For each word, count HOW MANY documents contain it:

  Word         Docs containing it    IDF = log(total/docs)
  ───────      ──────────────────    ──────────────────────
  "the"        4 (all docs)          log(4/4) = log(1) = 0
  "cat"        3 (docs 1,3,4)        log(4/3) = 0.29
  "sat"        2 (docs 1,2)          log(4/2) = 0.69
  "dog"        2 (docs 2,3)          log(4/2) = 0.69
  "quantum"    1 (doc 4 ONLY)        log(4/1) = 1.39
  "physics"    1 (doc 4 ONLY)        log(4/1) = 1.39
  "mat"        1 (doc 1 ONLY)        log(4/1) = 1.39

  ─────────────────────────────────────────────────────────────

  KEY INSIGHT:
  • "the" → IDF = 0 (appears everywhere → contributes nothing)
  • "quantum", "physics", "mat" → IDF = 1.39 (appear in only
1 doc → very rare → very informative)
STEP 3: TF-IDF = TF × IDF — combine both scores
═══════════════════════════════════════════════════════════════

  Doc 4: "The quantum cat is a physics concept"

  Word        TF      ×   IDF      =   TF-IDF
  ─────       ───         ───          ──────
  the         0.14    ×   0       =   0.000   (noise — ignore)
  quantum     0.14    ×   1.39    =   0.195   ⭐ important!
  cat         0.14    ×   0.29    =   0.041   (common-ish)
  is          0.14    ×   0       =   0.000   (noise — ignore)
  a           0.14    ×   0       =   0.000   (noise — ignore)
  physics     0.14    ×   1.39    =   0.195   ⭐ important!
  concept     0.14    ×   1.39    =   0.195   ⭐ important!

  ─────────────────────────────────────────────────────────────

  RESULT: TF-IDF reveals what Doc 4 is REALLY about:
  → "quantum", "physics", "concept" (high TF-IDF)
  → NOT about "the", "is", "a" (TF-IDF = 0)

  The words "the" and "is" appear just as often as "quantum"
  in the document — but TF-IDF correctly identifies them as
  noise and "quantum"/"physics" as the actual topic.
  ═══════════════════════════════════════════════════════════════
    WHAT TF-IDF IS USED FOR (Real Applications)
  ═══════════════════════════════════════════════════════════════
  
    Application              How TF-IDF Helps
    ───────────────────────────────────────────────────────────
  
    Search engines           Rank documents: when you search
                             "quantum physics", documents with
                             HIGH TF-IDF for those words rank
                             higher.
  
    Keyword extraction       Find a document's key terms: the
                             words with highest TF-IDF are the
                             document's main topics.
  
    Document classification  Represent a document as a vector
                             of TF-IDF scores → feed to a
                             classifier (Naive Bayes, SVM).
                             Text similarity          Compare two documents: if they
                                                        share high-TF-IDF words, they're
                                                        similar. (Cosine similarity on
                                                        TF-IDF vectors.)
                             
                               Document clustering      Group similar documents together
                                                        based on their TF-IDF "fingerprints".
                             
                               Spam detection           Identify spam topics: certain words
                                                        become strongly associated with
                                                        spam vs. legit content.
                             
                               ⚠️ LIMITATION: TF-IDF is BAG-OF-WORDS — it ignores word
                                  ORDER and MEANING. "The dog bit the man" and "the man
                                  bit the dog" get the same TF-IDF. Modern NLP uses
                                  embeddings (word vectors) that capture semantics — but
                                  TF-IDF remains fast, simple, and widely used as a
                                  baseline and for keyword extraction.

Keep reading