في نافذة الطباعة اختر «حفظ كملف PDF» كوجهة.
معالجة اللغة الطبيعية العربية - الدرس الأول
فهم المدونات اللغوية، والتجزئة اللفظية (Tokenization)، والتقطيع، وإزالة كلمات التوقف في النصوص العربية
Corpus)Corpora): مجموعة كبيرة من النصوص العربية تستخدم لتدريب نماذج معالجة اللغة الطبيعية وتقييمهاPOS Tagging)، والتعرف على الكيانات المسماة (NER)، وتحليل المشاعر، والترجمة الآليةأنواع المدونات
عامة الغرض
Arabic Gigaword (أخبار)، مدونة الويب العربية (نصوص مجمعة من الإنترنت)، Tashkeela (نصوص مشكلة بالتشكيل)
صوتية وحوارية
MGB-2 (بث تلفزيوني)، CALLHOME Arabic (مكالمات هاتفية)، ArzEn (كلام ثنائي اللغة عربي مصري-إنجليزي)
Embeddings)أنواع المدونات
المشاعر والآراء
ASTD (تغريدات موسومة)، LABR (مراجعات كتب)، OCA (مراجعات أفلام)
قرآنية ودينية
مدونة القرآن الكريم العربية (Quranic Arabic Corpus) الموسومة، ومدونة الحديث (Al-Hadith Corpus)
تاريخية وأدبية
مدونة الخليل (نصوص كلاسيكية)، ومعجم الدوحة التاريخي للغة العربية
Tokenization)Segmentation)Stemming)Lemmatization)split() المدمجة في بايثون - بسيطة، تعتمد على الفراغاتRegular Expressions) - re.findall() أو re.split()nltk.word_tokenize (أو Farasa للعربية)import re
pre_processed = re.sub(r'[^\w\s]', '', text) # keep only whitespace & wordstokens_1 = pre_processed.split()
# ['إن', 'التاريخ', 'العسكري', 'سوف', 'يتوقف', ...]re.findall(PATTERN, TEXT) تستخرج الوحدات اللفظية المطابقة لنمط معين\w+ يطابق أحرف الكلمات، فيعطي نتيجة مشابهة لـ split() في هذا المثالPATTERN = r"\w+"
tokens_2 = re.findall(PATTERN, pre_processed)punkt_tab (الذي حل محل punkt المهجور)import nltk
nltk.download('punkt_tab')
from nltk.tokenize import word_tokenize
tokens_3 = word_tokenize(pre_processed)Punkt الخاص بمكتبة NLTKdef segment(text):
segmenter = nltk.data.load("tokenizers/punkt/english.pickle")
sents = segmenter.tokenize(text)
for sent in sents:
print(sent)Stopwords) هي كلمات شائعة ("الـ"، "و"، "في") تضيف معنى ضئيلاNLTK تضم 754 كلمةfrom nltk.corpus import stopwords
stopwords = stopwords.words('arabic')
X_set = {w for w in word_tokenize(X) if w not in stopwords}{'المشي', 'الشاطئ', 'أحب'}split()، والتعبيرات النمطية، وNLTK - كل منها يوازن بين البساطة والدقةPunkt في NLTK يقطع الفقرات إلى جملNLTK) تقلل الضوضاء قبل المهام التاليةMahmoud Abas|المدوّنات اللغوية العربية: مورد أساسي لمعالجة اللغة العربية الطبيعية