دالة إعادة الصياغة البرمجية - كتاب الذكاء الإصطناعي - الصف 12 - الفصل 1 - المملكة العربية السعودية

الكتاب: كتاب الذكاء الإصطناعي - الصف 12 - الفصل 1 | المادة: الذكاء الإصطناعي | المرحلة: الصف 12 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

الدرس: تنفيذ دالة إعادة الصياغة باستخدام Word2Vec

📚 معلومات الصفحة

الكتاب: كتاب الذكاء الإصطناعي - الصف 12 - الفصل 1 | المادة: الذكاء الإصطناعي | المرحلة: الصف 12 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

نوع المحتوى: example

مستوى الصعوبة: متوسط

📝 ملخص الصفحة

تشرح هذه الصفحة منطق وتنفيذ دالة برمجية لإعادة صياغة النصوص باستخدام تقنيات معالجة اللغة الطبيعية. تبدأ بشرح منطق التحقق من الجودة، حيث يتم تقييم التشابه الدلالي بين الكلمات الأصلية والمرشحة، واستخدام الكلمة الأصلية إذا كان التشابه غير كافٍ.

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

يتم تطبيق الدالة على نص مثال عملي، مما ينتج نصاً معاد صياغته يحافظ على المعنى مع تغيير المفردات. يوضح المثال الناتج كيف يمكن للدالة توليد نصوص واقعية من خلال استبدال الكلمات بمرادفاتها مع الحفاظ على السياق العام.

تذكر الصفحة أن النتائج يمكن تحسينها بإضافة قيود إضافية لتصحيح البدائل الأقل وضوحاً، مما يبرز إمكانيات هذه المنهجية في توليد نصوص متنوعة.

📋 المحتوى المنظم

📖 محتوى تعليمي مفصّل

Paraphrase Function Logic

نوع: محتوى تعليمي

# quality check: if the chosen candidate is not semantically similar enough to # the original, then just use the original word. if sem_sim < semantic_sim_lbound: new_words.append(word) else: # use the candidate. new_words.append(rword) return ' '.join(new_words) # re-join the new words into a single string and return.

Output Description

نوع: محتوى تعليمي

المُخرَج هو إصدار مُعاد صياغته من النص المُدخَل.

نوع: محتوى تعليمي

يُستخدم المقطع البرمجي التالي لاستيراد كل الأدوات اللازمة لدعم دالة ()paraphrase وفي المربع الأبيض أدناه، تحصل على مُخرَج طريقة إعادة الصياغة (Paraphrase) للنص المُسند إلى المتغير text:

Paraphrasing Code Implementation

نوع: محتوى تعليمي

%capture import gensim.downloader as api # used to download and load a pre-trained Word2Vec model model_wv = api.load('word2vec-google-news-300') import nltk # used to split a piece of text into words. Maintains punctuations as separate tokens from nltk import word_tokenize nltk.download('stopwords') # downloads the stopwords tool of the nltk library # used to get list of very common words in different languages from nltk.corpus import stopwords stop = set(stopwords.words('english')) # gets the list of english stopwords !pip install fuzzywuzzy[speedup] from fuzzywuzzy import fuzz text = 'We had dinner at this restaurant yesterday. It is very close to my\nhouse. All my friends were there, we had a great time. The location is\nexcellent and the steaks were delicious. I will definitely return soon, highly\nrecommended!' # parameters: target text, stopwords, Word2Vec model, upper bound on lexical similarity, lower bound # on semantic similarity paraphrase(text, stop, model_wv, 80, 0.5)

Paraphrased Output Example

نوع: محتوى تعليمي

'We had brunch at this eatery Monday. It is very close to my bungalow. All my acquaintances were there, we had a terrific day. The locale is terrific and the tenderloin were delicious. I will certainly rejoin quickly, hugely advised!'

نوع: محتوى تعليمي

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

نوع: METADATA

وزارة التعليم Ministry of Education 2023 - 1447

نوع: METADATA

176

📄 النص الكامل للصفحة

--- SECTION: Paraphrase Function Logic --- # quality check: if the chosen candidate is not semantically similar enough to # the original, then just use the original word. if sem_sim < semantic_sim_lbound: new_words.append(word) else: # use the candidate. new_words.append(rword)return ' '.join(new_words) # re-join the new words into a single string and return.--- SECTION: Output Description --- المُخرَج هو إصدار مُعاد صياغته من النص المُدخَل.يُستخدم المقطع البرمجي التالي لاستيراد كل الأدوات اللازمة لدعم دالة ()paraphrase وفي المربع الأبيض أدناه، تحصل على مُخرَج طريقة إعادة الصياغة (Paraphrase) للنص المُسند إلى المتغير text:--- SECTION: Paraphrasing Code Implementation --- %capture import gensim.downloader as api # used to download and load a pre-trained Word2Vec model model_wv = api.load('word2vec-google-news-300')import nltk # used to split a piece of text into words. Maintains punctuations as separate tokens from nltk import word_tokenize nltk.download('stopwords') # downloads the stopwords tool of the nltk library # used to get list of very common words in different languages from nltk.corpus import stopwords stop = set(stopwords.words('english')) # gets the list of english stopwords!pip install fuzzywuzzy[speedup] from fuzzywuzzy import fuzz text = 'We had dinner at this restaurant yesterday. It is very close to my\nhouse. All my friends were there, we had a great time. The location is\nexcellent and the steaks were delicious. I will definitely return soon, highly\nrecommended!' # parameters: target text, stopwords, Word2Vec model, upper bound on lexical similarity, lower bound # on semantic similarity paraphrase(text, stop, model_wv, 80, 0.5)--- SECTION: Paraphrased Output Example --- 'We had brunch at this eatery Monday. It is very close to my bungalow. All my acquaintances were there, we had a terrific day. The locale is terrific and the tenderloin were delicious. I will certainly rejoin quickly, hugely advised!'كما في المنهجيات الأخرى المستندة إلى القوالب، يمكن تحسين النتائج بإضافة المزيد من القيود لتصحيح بعض البدائل الأقل وضوحًا والمذكورة في الأعلى. ومع ذلك، يوضح المثال أعلاه أنه يمكن باستخدام هذه الدالة البسيطة توليد نصوص واقعية.2023 - 1447

🎴 بطاقات تعليمية للمراجعة

عدد البطاقات: 5 بطاقة لهذه الصفحة

ما هو الهدف الأساسي من دالة إعادة الصياغة (paraphrase function) كما هو موضح في نص المقطع البرمجي؟

الإجابة: الهدف الأساسي هو توليد نص جديد معاد صياغته من النص الأصلي المُدخل، مع الحفاظ على المعنى العام للنص الأصلي.

الشرح: المقطع البرمجي يوضح استخدام دالة paraphrase لتوليد نص جديد يشبه النص الأصلي في المعنى ولكنه يستخدم كلمات وعبارات مختلفة.

تلميح: فكر فيما يحدث للنص الذي تدخله وكيف يتغير ليعطي نصاً جديداً.

ما هي الأدوات (المكتبات) الرئيسية المستخدمة في المقطع البرمجي لدعم وظيفة إعادة الصياغة؟

الإجابة: تشمل الأدوات الرئيسية: gensim.downloader (لتحميل نموذج Word2Vec)، nltk (لتقسيم النصوص والتعامل مع الكلمات الشائعة)، و fuzzywuzzy (للمقارنة بين النصوص).

الشرح: تم استيراد gensim لتحميل نموذج Word2Vec اللازم للمقارنة الدلالية، و nltk لأدوات معالجة اللغة الطبيعية الأساسية مثل تقسيم الكلمات والتعامل مع الكلمات الوقفية (stopwords)، و fuzzywuzzy للمقارنة بين النصوص.

تلميح: ابحث عن العبارات التي تبدأ بـ 'import' لمعرفة المكتبات التي تم استدعاؤها.

اشرح دور 'stopwords' في عملية إعادة الصياغة.

الإجابة: تُستخدم 'stopwords' (الكلمات الوقفية) وهي كلمات شائعة جداً في اللغة (مثل 'the', 'is', 'a') لتجاهلها أثناء مقارنة أو إعادة صياغة النص، لأنها لا تحمل معنى دلالياً كبيراً وقد تعيق عملية المقارنة الدقيقة.

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

تلميح: تذكر لماذا يتم عادةً تجاهل الكلمات القصيرة جداً أو الشائعة جداً في تحليل النصوص.

ما هو المقياس الذي يُستخدم في الدالة `paraphrase` لضمان أن النص المُعاد صياغته ليس بعيداً جداً دلالياً عن النص الأصلي؟

الإجابة: المقياس المستخدم هو 'lower bound on semantic similarity' (الحد الأدنى للتشابه الدلالي)، والذي تم تعيينه في المثال إلى 0.5.

الشرح: يحدد هذا المعامل أقل مستوى مقبول للتشابه في المعنى بين النص الأصلي والنص المُعاد صياغته. إذا كان التشابه أقل من القيمة المحددة، فقد لا تعتبر النسخة المعاد صياغتها بديلاً مناسباً.

تلميح: ابحث عن المعامل الذي يصف كيف يجب أن تكون النصوص متشابهة في معناها.

بالإضافة إلى التشابه الدلالي، ما هو المقياس الآخر الذي يُستخدم في الدالة `paraphrase` للتحكم في جودة إعادة الصياغة؟

الإجابة: المقياس الآخر هو 'upper bound on lexical similarity' (الحد الأقصى للتشابه اللفظي)، والذي تم تعيينه في المثال إلى 80.

الشرح: يحدد هذا المعامل أعلى مستوى من التطابق الحرفي بين النص الأصلي والنص المُعاد صياغته. إذا تجاوز التشابه اللفظي هذا الحد، فهذا يعني أن النص المُعاد صياغته قريب جداً من النص الأصلي لدرجة أنه قد لا يكون إعادة صياغة حقيقية، بل مجرد تغيير طفيف.

تلميح: فكر في نوع التشابه الذي لا ترغب في أن يتجاوزه النص المُعاد صياغته مع النص الأصلي ليكون فعلاً 'معاد صياغته'.