أدوات المستخدم

أدوات الموقع


pri:أفكار

اختلافات

عرض الاختلافات بين النسخة المختارة و النسخة الحالية من الصفحة.

رابط إلى هذه المقارنة

جانبي المراجعة السابقة المراجعة السابقة
المراجعة التالية
المراجعة السابقة
pri:أفكار [2008/08/14 18:01]
alsadi
pri:أفكار [2015/04/23 00:21] (حالي)
سطر 1: سطر 1:
 +====== هذه مجرد أفكار لا فائدة منها حاليا ======
 +  * المعجم المحوسب يجب أن يعتمد على قاعدة بيانات وليس خوارزميات اشتقاق لأن اللغة في النهائية يغلب عليها أنها سماعية ولأن اللغة ليست رياضيات
 +  * خوارزميات الاشتقاق وعكسها يجب أن تنفذ على الرغم من النقة السابقة (من أجل الاقتراحات إذا لم تكن الكلمة في قاعدة البيانات على سبيل المثال أو في مساعدة جهود تعريب مصطلحات جديدة)
 +  * في محرك البحث تجمع الكلمات في جدول ترتيبها في الجدول غير مهم حتى يمكن عمل 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 وذلك باحتساب الوسط الحسابي والانحراف المعياري ثم حذف القيم التي تقل عن الوسط الحسابي ناقص معامل (واحد مثلا) في الإنحراف
 +
 +
 +هذا كود يخمن جذر الكلمة من جدع الكلمة  ​
 +<code python>
 +#! /​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
 +
 +</​code>​
 +
 +بطريقة مشابهة يمكن عمل تجذيع السوابق prefix light stemming
 +أما اللواحق فهي غير مجدية لأنها في الغالب ليست لواحق تماما
 +
  
pri/أفكار.txt · آخر تعديل: 2015/04/23 00:21 (تحرير خارجي)