Action disabled: index
pri:أفكار
هذه مجرد أفكار لا فائدة منها حاليا
- المعجم المحوسب يجب أن يعتمد على قاعدة بيانات وليس خوارزميات اشتقاق لأن اللغة في النهائية يغلب عليها أنها سماعية ولأن اللغة ليست رياضيات
- خوارزميات الاشتقاق وعكسها يجب أن تنفذ على الرغم من النقة السابقة (من أجل الاقتراحات إذا لم تكن الكلمة في قاعدة البيانات على سبيل المثال أو في مساعدة جهود تعريب مصطلحات جديدة)
- في محرك البحث تجمع الكلمات في جدول ترتيبها في الجدول غير مهم حتى يمكن عمل incremental indexing
- هناك فائدة ما (لمحرك البحث أو توليد جمل أو في الترجمة أو تحليل السياق …) من جمع relative freq لاحتمال ورود الكلمة W2 بعد W1 وذلك في جدول مثل هذا
- | S | W1 | W2 | W3 |
---|---|---|---|---|
S | S | S1 | S2 | S3 |
W1 | S1 | W11 | W12 | W13 |
W2 | S2 | W21 | W22 | W23 |
W3 | S3 | W31 | W32 | W33 |
حيث W12 هو عدد مرات تكرار الكلمة W2 بعد الكلمة W1 وحيث S مجموع تكرار كل الكلمات و S1 تكرار الكلمة الأولى
- أغلب جداول relative freq يمكن اختزالها وتحويلها إلى مصفوفات اسفنجية sparse matrix وذلك باحتساب الوسط الحسابي والانحراف المعياري ثم حذف القيم التي تقل عن الوسط الحسابي ناقص معامل (واحد مثلا) في الإنحراف
هذا كود يخمن جذر الكلمة من جدع الكلمة
#! /usr/bin/python # -*- coding: utf-8 -*- def possible_roots(stem): additives=list(u"اوينتمس") rm_ls=filter(lambda i:i[1] in additives, enumerate(list(stem))) l=len(rm_ls) b=1<<l for j in xrange(b): rm_i=map(lambda c: rm_ls[c[1]][0], filter(lambda b: j & b[0], map(lambda a: (1<<a,a),range(l)))) r=u''.join(map(lambda b: b[1],filter(lambda a: a[0] not in rm_i,enumerate(list(stem))))) yield r.encode('utf-8') def possible_prefix_removal(word): """ remove همزة السؤال remove و ف العطف remove ل ك ب الجر remove ال التعريف أو لل """ pass for i in possible_roots(u"يستكتب"): print i
بطريقة مشابهة يمكن عمل تجذيع السوابق prefix light stemming أما اللواحق فهي غير مجدية لأنها في الغالب ليست لواحق تماما
pri/أفكار.txt · آخر تعديل: 2015/04/23 03:21 بواسطة 127.0.0.1