نموذج حقيبة الكلمات

**نموذج حقيبة الكلمات** هو تمثيل مبسط يستخدم في معالجة اللغة الطبيعية واسترجاع المعلومات (IR). يتم فيه تمثيل النصوص كالجمل أو المستندات كحقيبة (مجموعة متعددة) من الكلمات الواردة فيها، متجاهلاً القواعد اللغوية وترتيب الكلمات مع الحفاظ على التعددية. كما تم استخدام نموذج حقيبة الكلمات في الرؤية الحاسوبية.

يستخدم نموذج حقيبة الكلمات بشكل شائع في  حيث يتم استخدام (تكرارات) كل كلمة كميزة لتدريب المصنف.

يمكن العثور على إشارة مبكرة إلى «حقيبة الكلمات» في سياق لغوي بمقالة زيليغ هاريس (Zellig Harris) عام 1954 حول *البنية التوزيعية*.

## مثال
النماذج التالية تمثل نموذجاً لنص تم تمثيله باستخدام حقيبة الكلمات: 
```text
1- عمر يُحب مشاهدة الأفلام، ورغد تحب مشاهدة الأفلام أيضاً
```

```text
2- عمر أيضاً يُحب مشاهدة مباريات كرة القدم
```
 بناءً على هذين النصين، فإن قائمة المفردات لهما لهما تتضمن ما يلي: 
```javascript
"عمر"، "يحب"، "مشاهدة"، "الأفلام"، "و"، "رغد"، "تحب"، "مشاهدة"، "الأفلام"، "أيضاً"

"عمر"، "أيضاً"، "يحب"، "مشاهدة"، "مباريات"، "كرة"، "القدم"
```
 عند تمثيل كل حقيبة من الكلمات بصيغة JSON نحصل على ما يلي: 
```javascript
{"عمر":1، "يحب":1، "مشاهدة":2، "الأفلام":2، "و":1، "رغد":1، "تحب":1، "أيضاً":1}

{"عمر":1، "أيضاً":1، "يحب":1، "مشاهدة":1، "مباريات":1، "كرة":1، "القدم":1}
```
 كل مفتاح هو الكلمة، وكل قيمة هي عدد مرات تواجد هذه الكلمة في النص المحدد.

ترتيب الكلمات حر، يُمكن أن ترد الكلمات وفق أي ترتيب ممكن. كما أن دمج الحقيبتين سوية ممكن، وهو يؤدي إلى زيادة تكرارات الكلمات مثلاً كلمة «يحب» في النموذج السابق.

## التطبيق
يستخدم نموذج حقيبة الكلمات بشكل أساسي كأداة لتوليد الميزات من أجل استخدامها في التعلم الآلي. بعد تحويل النص إلى «حقيبة كلمات»، يمكننا القيام بالعديد من الحسابات التي تميز النص. النوع الأكثر شيوعًا من الخصائص، أو الميزات المحسوبة من نموذج حقيبة الكلمات هو تردد المصطلحات، أي عدد مرات ظهور المصطلح في النص. على سبيل المثال أعلاه، يمكننا إنشاء القائمتين التاليتين لتسجيل ترددات مصطلح جميع الكلمات المتميزة: 
```javascript
[1,1,2,2,1,1,1,1,0,0,0]
[1,1,1,1,0,0,1,1,1,0,0]
```
 يشير كل رقم في القوائم إلى عدد مرات ورود الكلمة في القائمة (هذا هو أيضًا تمثيل المدرج الإحصائي). مع الأخذ بنظر الاعتبار الكلمات التي ترد في إحدى القائمتين ولا ترد بالاخرى والتي تحصل على قيمة صفرية.

لا تحتفظ القائمة (أو المتجه) بترتيب الكلمات الأصلي الوارد في الجمل الأصلية. وهذه هي الميزة الرئيسية لنموذج حقيبة الكلمات. ولهذا النوع من التمثيل العديد من التطبيقات الناجحة، مثل تصفية البريد الإلكتروني.

ومع ذلك، فإن تردد الكلمات ليست بالضرورة أفضل تمثيل للنص. الكلمات الشائعة مثل "the"، "a"، "to" في اللغة الإنجليزية، أو بعض أحرف الجر وأحرف العطف في العربية هي المصطلحات ذات التردد الأعلى دائماً دون أن تحمل دلالة معنوية معينة. وبالتالي، فإن وجود رقم كبير للتعبير عن الكلمة لا يعني بالضرورة أن الكلمة أكثر أهمية. لمعالجة هذه المشكلة، تتمثل إحدى الطرق الأكثر شيوعًا لتحديد ترددات المصطلح في ترجيح مصطلح معين من خلال قلب ترتيب تردد الكلمات في المستند أو ما يعرف بـ tf-idf . بالإضافة إلى ذلك، ولأغراض التصنيف المحددة، تم تطوير بدائل خاضعة للإشراف لتوضيح فئة الفصل في المستند.

## نموذج N-gram
نموذج حقيبة الكلمات هو عبارة عن تمثيل غير منظم للمستندات — حيث يهتم فقط لتعداد الكلمات. على سبيل المثال، في المثال أعلاه، لن يكشف تمثيل حقيبة الكلمات أن الفعل«يحب» يتبع دائمًا اسم الشخص في هذا النص. وكبديل لذلك، يمكن لنموذج n-gram تخزين هذه المعلومات المكانية. عند تطبيق نفس المثال أعلاه، **سيقوم** نموذج **الثنائيات (bigrams) بتحليل** النص إلى الوحدات التالية ويخزن مصطلح تردد كل وحدة كما كان من قبل. 
```javascript
[
"عمر يحب",
"يحب مشاهدة",
"مشاهدة الأفلام",
"الأفلام و",
"و رغد",
"رغد تحب",
"تحب مشاهدة",
"مشاهدة الأفلام",
"الأفلام أيضاً",
]
```
 من الناحية النظرية، يمكننا أن ننظر إلى نموذج حقيبة الكلمات كحالة خاصة لنموذج n-gram ، مع n = 1. بالنسبة إلى n > 1.

## مثال للاستخدام: تصفية البريد المزعج
في التصفية البایزية للبريد العشوائي، يتم تصميم رسائل البريد إلكتروني كمجموعة غير منظمة من الكلمات المحددة من أحد توزيعات الاحتمال: واحدة تمثل البريد العشوائي والأخرى التي تمثل البريد الإلكتروني الفعلي. تخيل أن هناك حقيبتين حرفيتين مليئة بالكلمات. حقيبة واحدة مليئة بالكلمات الموجودة في رسائل البريد العشوائي، والآخر بالكلمات الموجودة في البريد الإلكتروني الفعلي. بينما من المحتمل أن تكون أي كلمة معينة في مكان ما في كلتا الحقيبتين، فإن كيس «البريد العشوائي» سوف يحتوي على كلمات ذات صلة بمحتوى غير مرغوب فيه مثل «البورصة» و «حبوب الفياغرا» و «اشتري» بشكل أكثر تواترا، بينما ستحتوي الحقيبة المزيد من الكلمات المتعلقة بأصدقاء المستخدم أو مكان العمل.

لتصنيف رسائل بريد إلكتروني، تفترض أداة تصفية البريد العشوائي القائمة على الإحصاء البايزي أن الرسالة هي عبارة عن حقيبة كلمات مكونة بشكل عشوائي من كلا الحقيبتين، ويستخدم الاحتمال البايزي لتحديد الحقيبة التي من المحتمل أن تنتمي لها هذه الرسائل أكثر من الأخرى.

## ملاحظات

## المراجع

* McTear, Michael (et al) (2016). *The Conversational Interface*. Springer International Publishing.

تصنيف:تعلم الآلة
تصنيف:معالجة اللغات الطبيعية