العودة إلى المدونة
NLP 1 نونبر 2024 7 min للقراءة

معالجة النص المسبقة في NLP: الدليل الكامل لعام 2025

التقطيع، والتطبيع، والجذع مقابل الليمة، وترميز الكلمات الفرعية.

متى تستخدم ماذا

المهمةالمعالجة المسبقة
BERT/Transformersاستخدم مُقطّعها فقط
TF-IDF + ML الكلاسيكيتحويل لأحرف صغيرة، إزالة الكلمات الشائعة، الليمة
FastTextالحد الأدنى (يتعامل مع الكلمات الفرعية)
العربيةتطبيع الألف/الهمزة، إزالة التشكيل
الفرنسيةمعالجة اللكنات والإدغامات (l', d')

خط أنابيب عام

import re
from nltk.tokenize import word_tokenize
from nltk.stem import WordNetLemmatizer

def preprocess(text, language='english'):
    text = text.lower().strip()
    text = re.sub(r'http\S+', '', text)  # Remove URLs
    text = re.sub(r'[^a-zA-Z0-9\s]', '', text)  # Remove special chars
    tokens = word_tokenize(text)
    lemmatizer = WordNetLemmatizer()
    tokens = [lemmatizer.lemmatize(t) for t in tokens if len(t) > 2]
    return ' '.join(tokens)

لـ BERT: ثِق بالمُقطّع

يتعامل WordPiece في BERT مع حالة الأحرف والكلمات الفرعية والرموز الخاصة. لا تطبّق معالجة مسبقة مخصصة — فذلك يضر بالأداء.

NLPText PreprocessingTokenizationBERTLemmatization
O

Ossama Elhakki

مهندس ذكاء اصطناعي وأنظمة ML — المغرب