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

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

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

الدرس: تقييم أهمية الجمل باستخدام مجتمعات الكلمات

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

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

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

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

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

📝 ملخص الصفحة

تتناول هذه الصفحة شرحًا لدالة `evaluate_sentences()` المستخدمة في معالجة النصوص لتقييم أهمية الجمل في مستند ما. تبدأ الدالة بتقسيم المستند إلى جمل باستخدام مكتبة NLTK، ثم تحسب مؤشر الأهمية لكل جملة بناءً على الكلمات التي تحتويها.

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

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

تتضمن الدالة معالجة مسبقة للنص، مثل إزالة الكلمات الشائعة (stopwords) والتركيز على الكلمات الموجودة في نموذج Word2Vec لضمان دقة التقييم.

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

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

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

word_to_community, community_scores = get_communities(G,tokenized_doc) word_to_community['player'][:10] # prints 10 words from the community of the word 'team'

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

('champion', 'stretch', 'finished', 'fifth', 'playing', 'scoring', 'scorer', 'opening', 'team', 'win')

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

الآن بعد ربط كل الكلمات بالمجتمع، وربط المجتمع بمؤشر الأهمية، ستكون الخطوة التالية هي استخدام هذه المعلومات لتقييم أهمية كل جملة في المستند الأصلي. دالة ()evaluate_sentences مصممة لهذا الغرض.

دالة Evaluate_sentences()

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

دالة Evaluate_sentences()

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

تبدأ الدالة بتقسيم المستند إلى جمل، ثم حساب مؤشر الأهمية لكل جملة، استنادًا إلى الكلمات التي تتضمنها. تكتسب كل كلمة مؤشر الأهمية من المجتمع الذي تنتمي إليه. على سبيل المثال، لديك جملة مكونة من خمسة كلمات W1, W2, W3, W4, W5. الكلمتان W1 و W2 تنتميان إلى مجتمع بمؤشر قيمته 25، والكلمتان W3 و W4 تنتميان إلى مجتمع بمؤشر قيمته 30، والكلمة W5 تنتمي إلى مجتمع بمؤشر قيمته 15. مجموع مؤشرات الجمل هو 25+30+30+25+15=125. تُستخدم الدالة بعد ذلك هذه المؤشرات لتصنيف الجمل في ترتيب تنازلي، من الأكثر إلى الأقل أهمية.

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

from nltk import sent_tokenize # used to split a document into sentences def evaluate_sentences(doc:str, # original document word_to_community:dict, # maps each word to its community community_scores:dict, # maps each community to a score model_wv): # Word2Vec model # splits the text into sentences sentences=sent_tokenize(doc) scored_sentences=[]# stores (sentence, score) tuples for raw_sent in sentences: # for each sentence # get all the words in the sentence, ignore stopwords and focus only on words that are in the # Word2Vec model. sentence_words=[word for word in re.findall(r'\b\w\w+\b',raw_sent.lower()) # tokenizes if word not in stop and # ignores stopwords

نوع: METADATA

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

نوع: METADATA

180

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

word_to_community, community_scores = get_communities(G,tokenized_doc) word_to_community['player'][:10] # prints 10 words from the community of the word 'team'('champion', 'stretch', 'finished', 'fifth', 'playing', 'scoring', 'scorer', 'opening', 'team', 'win')الآن بعد ربط كل الكلمات بالمجتمع، وربط المجتمع بمؤشر الأهمية، ستكون الخطوة التالية هي استخدام هذه المعلومات لتقييم أهمية كل جملة في المستند الأصلي. دالة ()evaluate_sentences مصممة لهذا الغرض.--- SECTION: دالة Evaluate_sentences() --- دالة Evaluate_sentences()تبدأ الدالة بتقسيم المستند إلى جمل، ثم حساب مؤشر الأهمية لكل جملة، استنادًا إلى الكلمات التي تتضمنها. تكتسب كل كلمة مؤشر الأهمية من المجتمع الذي تنتمي إليه. على سبيل المثال، لديك جملة مكونة من خمسة كلمات W1, W2, W3, W4, W5. الكلمتان W1 و W2 تنتميان إلى مجتمع بمؤشر قيمته 25، والكلمتان W3 و W4 تنتميان إلى مجتمع بمؤشر قيمته 30، والكلمة W5 تنتمي إلى مجتمع بمؤشر قيمته 15. مجموع مؤشرات الجمل هو 25+30+30+25+15=125. تُستخدم الدالة بعد ذلك هذه المؤشرات لتصنيف الجمل في ترتيب تنازلي، من الأكثر إلى الأقل أهمية.from nltk import sent_tokenize # used to split a document into sentences def evaluate_sentences(doc:str, # original document word_to_community:dict, # maps each word to its community community_scores:dict, # maps each community to a score model_wv): # Word2Vec model# splits the text into sentences sentences=sent_tokenize(doc) scored_sentences=[]# stores (sentence, score) tuples for raw_sent in sentences: # for each sentence# get all the words in the sentence, ignore stopwords and focus only on words that are in the # Word2Vec model. sentence_words=[word for word in re.findall(r'\b\w\w+\b',raw_sent.lower()) # tokenizes if word not in stop and # ignores stopwords2023 - 1447

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

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

ما هي الخطوة الأولى التي تقوم بها الدالة `evaluate_sentences()` عند معالجتها لمستند ما؟

الإجابة: تقوم الدالة بتقسيم المستند الأصلي إلى جمل فردية.

الشرح: تبدأ الدالة `evaluate_sentences()` بعملية تقسيم المستند النصي إلى جمل منفصلة باستخدام مكتبة `nltk` لتسهيل معالجة كل جملة على حدة.

تلميح: قبل تقييم الأهمية، يجب تفكيك المستند إلى وحداته الأساسية. ما هي أصغر وحدة نصية يمكن تحليلها؟

كيف يتم حساب مؤشر أهمية كل جملة في الدالة `evaluate_sentences()`؟

الإجابة: يتم حساب مؤشر أهمية الجملة عن طريق جمع مؤشرات المجتمعات التي تنتمي إليها الكلمات المكونة للجملة.

الشرح: تُحسب أهمية كل جملة بناءً على مؤشرات المجتمعات التي تنتمي إليها الكلمات التي تتكون منها الجملة. يتم إعطاء كل كلمة مؤشر أهمية مرتبط بمجتمعها، ثم يتم جمع هذه المؤشرات لكل جملة.

تلميح: تكتسب الكلمات أهميتها من المجتمعات التي تنتمي إليها، ثم تُجمع هذه الأهمية لتشكيل أهمية أكبر. فكر في علاقة الكلمة بالجملة وبالعالم الأكبر.

ما هو الهدف من ربط الكلمات بالمجتمعات ثم ربط المجتمعات بمؤشرات الأهمية داخل الدالة `evaluate_sentences()`؟

الإجابة: الهدف هو تحديد أهمية كل جملة في المستند بناءً على الكلمات التي تحتويها والمجتمعات التي تنتمي إليها هذه الكلمات.

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

تلميح: لماذا نحتاج إلى تجميع الكلمات في مجموعات (مجتمعات) ثم إعطاء هذه المجموعات قيمة (مؤشر)؟ فكر في كيفية تأثير الكلمات ذات الصلة على معنى الجملة ككل.

ماذا تفعل الدالة `evaluate_sentences()` بعد حساب مؤشرات أهمية الجمل؟

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

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

تلميح: بعد معرفة قيمة كل جملة، ما هو الإجراء المنطقي التالي لتنظيم هذه المعلومات؟