TF-IDF

TF-IDF: وزن‌دهی هوشمند کلمات — تکرار در سند بالا و نادر بودن در مجموعه؛ محاسبه دستی و کاربردها

مشکل BoW و راه‌حل TF-IDF

در BoW همه کلمات برابرند؛ اما کلمه وقتی مهم است که:

  1. در این سند زیاد تکرار شود (TF)
  2. در کل مجموعه سندها کم بیاید (نادر باشد — IDF)

TF-IDF دقیقاً حاصل‌ضرب این دو است:

TF-IDF(کلمه, سند) = TF × IDF

TF  = تکرار کلمه در سند / کل کلمات سند
IDF = log(تعداد کل سندها / سندهای دارای کلمه + 1)

شهود: چرا جواب می‌دهد؟

کلمات پرتکرار عمومی حذف و کلمات تمایزدهنده تقویت می‌شوند — بدون لیست stopwords دستی!

مثال عددی گام‌به‌گام

۱۰۰ سند داریم؛ کلمه «گوشی» در ۱۰ سند آمده و در سند فعلی ۳ بار از ۱۰۰ کلمه:

TF = 3/100 = 0.03
IDF = log(100/10) = log(10) = 2.3
TF-IDF = 0.03 × 2.3 = 0.069

مقایسه با «است» (در ۹۹ سند): IDF = log(100/99) ≈ 0.01 ← تقریباً صفر!

کاربردهای واقعی

مقایسه BoW و TF-IDF

ویژگیBoWTF-IDF
وزن کلمهتعداد خامهوشمند و نرمال‌شده ✓
کلمات عمومیوزن نارواتقریباً حذف ✓
وابسته به مجموعهخیربله (IDF از کل سندها)
پیچیدگیسادهکمی بیشتر
نکته: TF-IDF هنوز هم یکی از قوی‌ترین روش‌های «کلاسیک» است و در بسیاری سیستم‌های واقعی (جستجو، خلاصه‌سازی) کنار مدل‌های عصبی استفاده می‌شود — ساده، سریع و قابل تفسیر!

جمع‌بندی

این مبحث بخشی از دوره آموزش کامل پردازش زبان طبیعی (NLP) است.

ابزارهای مرتبط