📋 المحتوى المنظم
📖 محتوى تعليمي مفصّل
4
نوع: QUESTION
أكمل المقطع البرمجي التالي حتى تقبل الدالة ()build_graph مفردات محددة من الكلمات ونموذج الكلمة إلى المتجه (Word2Vec) المدرب لرسم مخطط ذي عقدة واحدة لكل كلمة في المفردات المحددة. يجب أن يحتوي المخطط على حافة بين عقدتين إذا كان تشابه نموذج الكلمة إلى المتجه (Word2Vec) أكبر من مستوى التشابه المعطى، ويجب ألا تكون هناك أوزان على الحواف.
نوع: محتوى تعليمي
from ________ import combinations # tool used to create combinations
import networkx as nx # python library for processing graphs
def build_graph(vocab:set, # set of unique words
model_wv, # Word2Vec model
similarity_threshold:float
):
pairs=combinations(vocab, ________) # gets all possible pairs of words in the vocabulary
G=nx.________________ # makes a new graph
for w1,w2 in pairs: # for every pair of words w1,w2
sim=model_wv.________________ (w1, w2)# gets the similarity between the two words
if ________________:
G.________________ (w1, w2)
return G
نوع: METADATA
وزارة التعليم
Ministry of Education
2023 - 1447
190
📄 النص الكامل للصفحة
--- SECTION: 4 ---
أكمل المقطع البرمجي التالي حتى تقبل الدالة ()build_graph مفردات محددة من الكلمات ونموذج الكلمة إلى المتجه (Word2Vec) المدرب لرسم مخطط ذي عقدة واحدة لكل كلمة في المفردات المحددة. يجب أن يحتوي المخطط على حافة بين عقدتين إذا كان تشابه نموذج الكلمة إلى المتجه (Word2Vec) أكبر من مستوى التشابه المعطى، ويجب ألا تكون هناك أوزان على الحواف.from ________ import combinations # tool used to create combinations import networkx as nx # python library for processing graphs def build_graph(vocab:set, # set of unique words model_wv, # Word2Vec model similarity_threshold:float
):
pairs=combinations(vocab, ________) # gets all possible pairs of words in the vocabulary G=nx.________________ # makes a new graph for w1,w2 in pairs: # for every pair of words w1,w2
sim=model_wv.________________ (w1, w2)# gets the similarity between the two words if ________________:
G.________________ (w1, w2)return G2023 - 1447
📝 أسئلة اختبارية
عدد الأسئلة: 7
سؤال 4: sim=model_wv.________________ (w1, w2)# gets the similarity between the two words
- أ) similarity
- ب) distance
- ج) compare
- د) cosine
الإجابة الصحيحة: similarity
الشرح: يجب استخدام دالة similarity() من نموذج Word2Vec لحساب التشابه بين كلمتين
تلميح: ما هي الدالة في Word2Vec لحساب التشابه بين كلمتين؟
سؤال 4: pairs=combinations(vocab, ________) # gets all possible pairs of words in the vocabulary
- أ) 2
- ب) 1
- ج) 3
- د) len(vocab)
الإجابة الصحيحة: 2
الشرح: يجب استخدام الرقم 2 لأننا نريد توليد أزواج من الكلمات (كل زوج يتكون من كلمتين)
تلميح: كم عدد العناصر في كل زوج من الكلمات؟
سؤال 4: G=nx.________________ # makes a new graph
- أ) Graph()
- ب) new_graph()
- ج) create_graph()
- د) DiGraph()
الإجابة الصحيحة: Graph()
الشرح: يجب استدعاء دالة Graph() من مكتبة networkx لإنشاء رسم بياني جديد
تلميح: ما هي الدالة في networkx لإنشاء رسم بياني جديد؟
سؤال 4: from ________ import combinations # tool used to create combinations
- أ) itertools
- ب) math
- ج) random
- د) collections
الإجابة الصحيحة: itertools
الشرح: يجب استيراد دالة combinations من مكتبة itertools في بايثون لإنشاء توليفات من العناصر
تلميح: ما هي المكتبة التي تحتوي على دالة combinations في بايثون؟
سؤال 4: G.________________ (w1, w2)
- أ) add_edge
- ب) add_node
- ج) connect
- د) link
الإجابة الصحيحة: add_edge
الشرح: يجب استخدام دالة add_edge() من مكتبة networkx لإضافة حافة بين العقدتين w1 و w2
تلميح: ما هي الدالة في networkx لإضافة حافة بين عقدتين؟
سؤال 4: أكمل المقطع البرمجي التالي حتى تقبل الدالة ()build_graph مفردات محددة من الكلمات ونموذج الكلمة إلى المتجه (Word2Vec) المدرب لرسم مخطط ذي عقدة واحدة لكل كلمة في المفردات المحددة. يجب أن يحتوي المخطط على حافة بين عقدتين إذا كان تشابه نموذج الكلمة إلى المتجه (Word2Vec) أكبر من مستوى التشابه المعطى، ويجب ألا تكون هناك أوزان على الحواف.
الإجابة الصحيحة: انظر الأسئلة الفرعية
الشرح: هذا سؤال رئيسي يحتوي على أسئلة فرعية لملء الفراغات في الكود
تلميح: راجع الأسئلة الفرعية أدناه لملء الفراغات في الكود
سؤال 4: if ________________:
- أ) sim > similarity_threshold
- ب) sim < similarity_threshold
- ج) sim == similarity_threshold
- د) sim >= 0
الإجابة الصحيحة: sim > similarity_threshold
الشرح: يجب إضافة حافة بين العقدتين فقط إذا كان التشابه أكبر من عتبة التشابه المحددة
تلميح: ما هو الشرط لإضافة حافة بين كلمتين؟
🎴 بطاقات تعليمية للمراجعة
عدد البطاقات: 5 بطاقة لهذه الصفحة
ما هي المكتبة المستخدمة لإنشاء العلاقات الممكنة بين كلمات المفردات؟
الإجابة: المكتبة المستخدمة هي `combinations` من وحدة `itertools`.
الشرح: النص يذكر صراحة أن 'combinations' هي الأداة المستخدمة لإنشاء جميع الأزواج الممكنة من الكلمات في المفردات.
تلميح: ابحث عن عبارة 'tool used to create combinations' في النص.
ما هي المكتبة المستخدمة لمعالجة الرسوم البيانية (graphs) في هذا المقطع البرمجي؟
الإجابة: المكتبة المستخدمة هي `networkx`.
الشرح: النص يحدد `networkx` كـ 'python library for processing graphs'، وهي المكتبة القياسية في بايثون لمعالجة الرسوم البيانية.
تلميح: ابحث عن عبارة 'python library for processing graphs' في النص.
ما هي الكلمة التي يجب وضعها بعد `G = nx.` لإنشاء رسم بياني جديد؟
الإجابة: الكلمة هي `Graph()`.
الشرح: في مكتبة `networkx`، يتم إنشاء رسم بياني جديد عن طريق استدعاء الدالة `Graph()`.
تلميح: انظر إلى السطر الذي يبدأ بـ 'G = nx.' واسأل نفسك كيف يتم إنشاء كائن رسم بياني جديد في مكتبة networkx.
ما هي الدالة المستخدمة للحصول على درجة التشابه بين كلمتين في نموذج Word2Vec؟
الإجابة: الدالة المستخدمة هي `similarity()`.
الشرح: النص يشير إلى `model_wv.similarity(w1, w2)`، حيث `similarity()` هي الدالة التي تقوم بحساب التشابه بين كلمتين.
تلميح: ابحث عن السطر الذي يحسب التشابه بين كلمتين (`w1`, `w2`) باستخدام `model_wv`.
كيف تتم إضافة حافة بين كلمتين `w1` و `w2` إلى الرسم البياني `G` إذا كان تشابههما أكبر من `similarity_threshold`؟
الإجابة: تتم الإضافة باستخدام `G.add_edge(w1, w2)`.
الشرح: بعد التحقق من أن التشابه أكبر من الحد الأدنى (`similarity_threshold`)، يتم استخدام الدالة `add_edge` لإضافة حافة بين العقدتين `w1` و `w2` في الرسم البياني `G`.
تلميح: انظر إلى الجزء الذي يتحقق فيه الشرط 'if' والذي يليه مباشرةً عملية إضافة شيء إلى الرسم البياني `G`.