کلمات ایستا (Stopwords)
کلمات ایستا: حذف کلمات پرتکرار کممعنا (از، به، که...)، ساخت لیست ایستا فارسی و نکات مهم حذف
کلمات ایستا چیست؟
Stopwords کلماتی هستند که بسیار پرتکرارند اما معنای خاصی به جمله اضافه نمیکنند: حروف اضافه، حروف ربط، ضمیرها. در فارسی: «از»، «به»، «که»، «را»، «این»، «و»...
چرا حذفشان کنیم؟
- کاهش نویز: در «قیمت گوشی از سایت چک شد»، فقط «قیمت گوشی سایت چک» معنا دارد
- کاهش ابعاد: صدها کلمه کمتر در بردارها
- بهبود دقت: مدل روی کلمات معنادار تمرکز میکند
مثال قبل/بعد
قبل: من این گوشی را از فروشگاه شما خریدم و آن را دوست داشتم
بعد: گوشی فروشگاه خریدم دوست داشتم
موضوع (نظر درباره خرید گوشی) کاملاً حفظ شد با نصف کلمات!
هشدار: همیشه حذف نکنید!
هشدار: در برخی مسائل، کلمات ایستا حیاتیاند:
- تشخیص احساسات: «خوب نبود» ≠ «خوب بود» — «ن» و «نبود» معنا را برعکس میکنند!
- عبارات ثابت: «به به» (تعجب مثبت)، «نه خیلی»
- مدلهای زبانی مدرن: GPT و BERT همه کلمات را میگیرند — ترتیب و نحو مهم است
لیست ایستا از کجا بیاید؟
- لیستهای آماده: NLTK (انگلیسی)، hazm (فارسی)
- ساخت اختصاصی: K کلمه پرتکرارِ کمتفاوت بین دستهها
- معیار خوب: کلمه در همه سندها تقریباً یکسان تکرار شود (تمایزدهنده نیست)
روش علمی: با آمار پیدا کنیم
کلمهای که در همه دستهها با فراوانی مشابه ظاهر میشود، تمایزدهنده نیست (مثل «است»)؛ اما کلمهای که فقط در یک دسته میآید (مثل «ارسال» در نظرات فروشگاه)، طلایی است. این ایده پایه TF-IDF هم هست!
جمعبندی
- Stopwords: پرتکرار و کممعنا — حروف ربط و اضافه
- حذف برای BoW/TF-IDF مفید؛ برای احساسات و مدلهای مدرن خطرناک
- لیستهای آماده هست اما ساخت اختصاصی با آمار بهتر است
این مبحث بخشی از دوره آموزش کامل پردازش زبان طبیعی (NLP) است.