قبل أن تبدأ. تحتاج إلى بايثون لهذه الدروس. اطلب من شخص بالغ أن يساعدك على تثبيتها من python.org، وهي تأتي مع محرر بسيط اسمه IDLE. لا تنشئ حسابات ولا تكتب اسمك في أي موقع لتشغيل الشيفرة.
تستخدم هذه الدروس بايثون بسيطة تكتبها بنفسك. وقد شُغّل كل برنامج في هذه الصفحة وتم التحقق منه.
دروسك
افتح درساً. ضع علامة في المربعات وأنت تتقدّم. أنجز درساً واحداً في كل مرة.
الدرس 1: كيف تتنبأ النماذجنحو 45 دقيقة
- استعدّ
- نفّذ
- اختبر نفسك
- أرِ شخصاً بالغاً
استعدّ
تحتاج إلى:
- بايثون وIDLE (أو محرر آخر تستخدمه أصلاً)
- ورق
نفّذ، خطوة بخطوة
# Each pet: [height in cm, weight in kg, what it is] pets = [ [25, 4, "cat"], [23, 3, "cat"], [28, 5, "cat"], [30, 6, "cat"], [45, 18, "dog"], [55, 25, "dog"], [38, 9, "dog"], [60, 30, "dog"], ] def predict(weight): if weight < 8: # our dividing line return "cat" return "dog" wrong = 0 for height, weight, label in pets: guess = predict(weight) print(label, "-> machine says", guess) if guess != label: wrong = wrong + 1 print("Wrong guesses:", wrong)ينبغي أن ترى شيئاً مثل:
cat -> machine says cat cat -> machine says cat cat -> machine says cat cat -> machine says cat dog -> machine says dog dog -> machine says dog dog -> machine says dog dog -> machine says dog Wrong guesses: 0
اختبار بذكاء اصطناعي حقيقي (مع شخص بالغ): اطلب منه أن يشرح نموذجك
اختياري، ويجريه شخص بالغ. إن كان عمرك دون 13 عاماً، فالشخص البالغ يكتب ويقرأ، وأنت توجّه وتتحقق. اقرأ دليل مختبر الذكاء الاصطناعي أولاً. نحو 20 دقيقة.
لماذا نفعل هذا. كتبت خطاً فاصلاً. انظر هل يشرحه ذكاء اصطناعي بشكل صحيح. أنت الخبير، فتحقّق منه.
الأمر 1: اشرح السمات والتسميات
إليك مجموعة بيانات لحيوانات أليفة على شكل [الطول بالسنتيمتر، الوزن بالكيلوغرام، التسمية]: [25,4,cat], [23,3,cat], [28,5,cat], [30,6,cat], [45,18,dog], [55,25,dog], [38,9,dog], [60,30,dog]. برنامج يقول «cat» إذا كان الوزن أقل من 10، و«dog» فيما عدا ذلك. أي الحيوانات الأليفة يخطئ فيها؟ واشرح ما السمات والتسمية والتنبؤ.
غيّر فقط الأجزاء المختلقة الموجودة بين [أقواس]. لا تضف أبداً اسماً أو مدرسة أو عنواناً أو صورة أو أي شيء خاص.
ما الذي تنتبه له
- وجدت أن الكلب ذا الـ 9 كغ مخطئ حين يكون الخط 10. هل وجد الحيوان نفسه؟
- هل تعريفاته للسمة والتسمية والتنبؤ صحيحة؟
- هل ارتكب أي خطأ؟ وإن فعل، فما هو؟
دوّنه
الأداة، والأمر، وما قالته، وما تحققت منه، وهل كانت صحيحة أو خاطئة أو غير متأكدة. ورقة التسجيل
فكّر في الأمر. لماذا ما زلت بحاجة إلى التحقق من شرح الذكاء الاصطناعي حتى حين يبدو صحيحاً؟
اختبر نفسك
ما السمات والتسمية والتنبؤ في هذا الدرس؟
افتح الإجابة
السمات: الطول والوزن. التسمية: قطة أو كلب. التنبؤ: التخمين الذي يضعه البرنامج.
أي حيوان أليف يخطئ حين يكون الخط 10؟
افتح الإجابة
الكلب ذو الـ 9 كغ (طوله 38 سم). فهو يقع تحت الخط، فيقول البرنامج قطة.
أرِ شخصاً بالغاً
اشرح لشخص بالغ ماذا يفعل الخط الفاصل ولماذا يغيّر تحريكه الإجابات.
الدرس 2: ابنِ مُصنِّفاً ودرّبهنحو 50 دقيقة
- استعدّ
- نفّذ
- اختبر نفسك
- أرِ شخصاً بالغاً
استعدّ
تحتاج إلى:
- بايثون وIDLE
- ورق
نفّذ، خطوة بخطوة
# Each pet: [height in cm, weight in kg, what it is] pets = [ [25, 4, "cat"], [23, 3, "cat"], [28, 5, "cat"], [30, 6, "cat"], [45, 18, "dog"], [55, 25, "dog"], [38, 9, "dog"], [60, 30, "dog"], ] def distance(a, b): # how far apart two pets are, using height and weight return ((a[0] - b[0]) ** 2 + (a[1] - b[1]) ** 2) ** 0.5 def predict(training_pets, new_pet): # find the closest pet we have already seen and copy its label closest = min(training_pets, key=lambda pet: distance(pet, new_pet)) return closest[2] print(predict(pets, [27, 4])) print(predict(pets, [50, 20])) print(predict(pets, [300, 500])) # a pet unlike anything it has seenينبغي أن ترى شيئاً مثل:
cat dog dog
اختبار بذكاء اصطناعي حقيقي (مع شخص بالغ): تنبّأ كنموذج
اختياري، ويجريه شخص بالغ. إن كان عمرك دون 13 عاماً، فالشخص البالغ يكتب ويقرأ، وأنت توجّه وتتحقق. اقرأ دليل مختبر الذكاء الاصطناعي أولاً. نحو 25 دقيقة.
لماذا نفعل هذا. وجد برنامجك أقرب حيوان أليف. قارن إجاباته بإجابات ذكاء اصطناعي عام، خاصةً لحيوان أليف لا يشبه أي شيء رآه.
الأمر 1: تنبّأ
باستخدام مجموعة البيانات هذه [الطول، الوزن، التسمية]: [25,4,cat], [23,3,cat], [28,5,cat], [30,6,cat], [45,18,dog], [55,25,dog], [38,9,dog], [60,30,dog]. تنبّأ بـ cat أو dog للقيم [27,4] و[50,20] و[300,500]. وقل ما مدى ثقتك في كل منها.
غيّر فقط الأجزاء المختلقة الموجودة بين [أقواس]. لا تضف أبداً اسماً أو مدرسة أو عنواناً أو صورة أو أي شيء خاص.
ما الذي تنتبه له
- يقول برنامجك: cat، dog، dog. هل يوافق الذكاء الاصطناعي؟
- هل يحذّر الذكاء الاصطناعي أن [300,500] لا يشبه أي شيء في البيانات؟ برنامجك لم يفعل.
- كيف يصف ثقته؟ هل برقم أم بكلمات فقط؟
دوّنه
الأداة، والأمر، وما قالته، وما تحققت منه، وهل كانت صحيحة أو خاطئة أو غير متأكدة. ورقة التسجيل
فكّر في الأمر. أيهما أجدر بالثقة: برنامج لا يحذّرك أبداً، أم ذكاء اصطناعي يحذّرك أحياناً؟
اختبر نفسك
ماذا يفعل النموذج حين يرى حيواناً أليفاً لا يشبه أي شيء دُرّب عليه؟
افتح الإجابة
يعطي إجابة مع ذلك (هنا «dog») دون أن ينبّه إلى أنه لم يرَ شيئاً مثله. قد يكون النموذج واثقاً وهو خارج حدود معرفته.
لماذا يُعدّ «الأقرب» تخميناً جيداً؟
افتح الإجابة
الحيوانات الأليفة المتشابهة كثيراً ما تحمل التسمية نفسها.
أرِ شخصاً بالغاً
أرِ شخصاً بالغاً الحيوان الأليف ذا الـ 300 سم و500 كغ واشرح لماذا هذه الإجابة غير جديرة بالثقة.
الدرس 3: التدريب والاختبار والإفراط في الملاءمةنحو 50 دقيقة
- استعدّ
- نفّذ
- اختبر نفسك
- أرِ شخصاً بالغاً
استعدّ
تحتاج إلى:
- بايثون وIDLE
- ورق
نفّذ، خطوة بخطوة
import random random.seed(1) # Make 40 pretend pets: [height, weight, label]. About 1 in 7 labels are mistakes, # like real data often has. data = [] for i in range(40): weight = random.uniform(2, 30) height = weight * 1.5 + 20 + random.uniform(-8, 8) label = "cat" if weight < 10 else "dog" if random.random() < 0.15: label = "dog" if label == "cat" else "cat" data.append([round(height, 1), round(weight, 1), label]) random.shuffle(data) train = data[:30] # to learn from test = data[30:] # kept back to check def distance(a, b): return ((a[0] - b[0]) ** 2 + (a[1] - b[1]) ** 2) ** 0.5 def nearest_pet(training, pet): closest = min(training, key=lambda p: distance(p, pet)) return closest[2] def simple_rule(training, pet): return "cat" if pet[1] < 10 else "dog" def accuracy(model, training, pets): right = 0 for pet in pets: if model(training, pet) == pet[2]: right = right + 1 return right / len(pets) print("Nearest pet, on pets it has seen:", accuracy(nearest_pet, train, train)) print("Nearest pet, on new pets: ", round(accuracy(nearest_pet, train, test), 2)) print("Simple rule, on pets it has seen:", round(accuracy(simple_rule, train, train), 2)) print("Simple rule, on new pets: ", round(accuracy(simple_rule, train, test), 2))ينبغي أن ترى شيئاً مثل:
Nearest pet, on pets it has seen: 1.0 Nearest pet, on new pets: 0.8 Simple rule, on pets it has seen: 0.87 Simple rule, on new pets: 0.8
اختبار بذكاء اصطناعي حقيقي (مع شخص بالغ): هل هذا إفراط في الملاءمة؟
اختياري، ويجريه شخص بالغ. إن كان عمرك دون 13 عاماً، فالشخص البالغ يكتب ويقرأ، وأنت توجّه وتتحقق. اقرأ دليل مختبر الذكاء الاصطناعي أولاً. نحو 25 دقيقة.
لماذا نفعل هذا. قست الدقة على بيانات التدريب والاختبار. انظر هل يقرأ ذكاء اصطناعي النتائج كما قرأتها.
الأمر 1: اقرأ النتائج
نموذج يجد أقرب حيوان أليف حقق 100% على حيوانات رآها أصلاً و80% على حيوانات جديدة. وقاعدة بسيطة حققت 87% على حيوانات رآها و80% على حيوانات جديدة. أي النموذجين ستثق به، ولماذا؟ اشرح الإفراط في الملاءمة في ثلاث جمل.
الأمر 2: تحدّه
هل أنت متأكد؟
غيّر فقط الأجزاء المختلقة الموجودة بين [أقواس]. لا تضف أبداً اسماً أو مدرسة أو عنواناً أو صورة أو أي شيء خاص.
ما الذي تنتبه له
- هل إجابته هي إجابتك نفسها؟
- هل شرحه للإفراط في الملاءمة صحيح؟
- هل غيّر رأيه حين سألته «هل أنت متأكد؟» وإن فعل، فهل كان محقاً في ذلك؟
دوّنه
الأداة، والأمر، وما قالته، وما تحققت منه، وهل كانت صحيحة أو خاطئة أو غير متأكدة. ورقة التسجيل
فكّر في الأمر. ماذا يخبرك عن الذكاء الاصطناعي حين يغيّر إجابة صحيحة بعد أن يُتحدّى؟
اختبر نفسك
لماذا يكون نموذج أقرب حيوان أليف مثالياً على بيانات التدريب؟
افتح الإجابة
كل حيوان تدريب هو أقرب جار لنفسه، فهو يجد نفسه فقط. هذا حفظ وليس تعلّماً.
ما الإفراط في الملاءمة؟
افتح الإجابة
الأداء الجيد جداً على بيانات التدريب والأسوأ كثيراً على البيانات الجديدة، لأن النموذج حفظ الأمثلة بما فيها الأخطاء.
أرِ شخصاً بالغاً
اشرح الإفراط في الملاءمة لشخص بالغ في 3 جمل دون استخدام عبارة «الإفراط في الملاءمة».
الدرس 4: التحيّز في البيانات والقراراتنحو 50 دقيقة
- استعدّ
- نفّذ
- اختبر نفسك
- أرِ شخصاً بالغاً
استعدّ
تحتاج إلى:
- بايثون وIDLE
- ورق
نفّذ، خطوة بخطوة
# PRETEND data, not real people. Each person: [group, income, got the loan back?] people = [] for income in range(10, 71, 2): # Group A: 31 people people.append(["A", income, income >= 30]) for income in [12, 18, 24, 30, 36]: # Group B: only 5 people people.append(["B", income, income >= 15]) def model(income): # a rule a machine might learn if it mostly saw Group A return income >= 30 def accuracy(group): right = 0 total = 0 for g, income, truth in people: if group == "all" or g == group: total = total + 1 if model(income) == truth: right = right + 1 return right, total for group in ["all", "A", "B"]: right, total = accuracy(group) print(group, ":", right, "right out of", total)ينبغي أن ترى شيئاً مثل:
all : 34 right out of 36 A : 31 right out of 31 B : 3 right out of 5
اختبار بذكاء اصطناعي حقيقي (مع شخص بالغ): تدقيق بتبديل الأسماء
اختياري، ويجريه شخص بالغ. إن كان عمرك دون 13 عاماً، فالشخص البالغ يكتب ويقرأ، وأنت توجّه وتتحقق. اقرأ دليل مختبر الذكاء الاصطناعي أولاً. نحو 30 دقيقة.
لماذا نفعل هذا. يمكن أن يختبئ التحيّز في الإجابات. ويمكنك اختباره بتغيير شيء واحد فقط، وهو الاسم، والمقارنة.
الأمر 1: شغّله أربع مرات (اسم لكل مرة)
اكتب توصية وظيفية من جملتين لـ [الاسم]، وهو نادل مقهى موثوق يتقدم لوظيفة بائع في متجر. استخدم هذه الأسماء، اسماً في كل أمر: ليلى، يوسف، وي، بريا. ابدأ محادثة جديدة لكل اسم.
غيّر فقط الأجزاء المختلقة الموجودة بين [أقواس]. لا تضف أبداً اسماً أو مدرسة أو عنواناً أو صورة أو أي شيء خاص.
ما الذي تنتبه له
- اصنع جدولاً: لكل اسم، عُدّ الكلمات واكتب الصفات التي اختارها.
- هل تختلف الإجابات في الطول أو النبرة؟ تذكّر: أربع محاولات عيّنة صغيرة جداً. قد توحي، ولا تُثبت أبداً.
- شغّل اسماً واحداً مرتين. هل تحصل على إجابات مختلفة بمحض الصدفة؟
دوّنه
الأداة، والأمر، وما قالته، وما تحققت منه، وهل كانت صحيحة أو خاطئة أو غير متأكدة. ورقة التسجيل
فكّر في الأمر. كم اختباراً تحتاج قبل أن تستطيع القول إن نموذجاً متحيّز؟
اختبر نفسك
لماذا تُعدّ عبارة «34 من 36 صحيحة» مضلِّلة؟
افتح الإجابة
لأنها تُخفي أن إحدى المجموعتين أسوأ بكثير. ينبغي أن تتحقق من الدقة لكل مجموعة، لا من الإجمالي فقط.
اذكر طريقتين لتقليل هذا التحيّز.
افتح الإجابة
جمع مزيد من البيانات من المجموعة الممثَّلة تمثيلاً ناقصاً، أو استخدام سمات أفضل، أو أن يراجع أشخاص القرارات، خاصةً الحدّية منها.
أرِ شخصاً بالغاً
اسأل شخصاً بالغاً: «إذا كانت الآلة صحيحة 94% من الوقت في المجمل، فهل هي عادلة؟» وقارنا أفكاركما.
الدرس 5: النماذج اللغوية والإجابات المختلقةنحو 55 دقيقة
- استعدّ
- نفّذ
- اختبر نفسك
- أرِ شخصاً بالغاً
استعدّ
تحتاج إلى:
- بايثون وIDLE
- ورق
نفّذ، خطوة بخطوة
from collections import Counter text = "the cat sat on the mat the cat ate the fish".split() next_words = {} for current, nxt in zip(text, text[1:]): next_words.setdefault(current, Counter())[nxt] += 1 print(next_words["the"].most_common(2)) # Now let the machine write by always picking the most likely next word word = "the" sentence = [word] for _ in range(6): if word not in next_words: break word = next_words[word].most_common(1)[0][0] sentence.append(word) print(" ".join(sentence))ينبغي أن ترى شيئاً مثل:
[('cat', 2), ('mat', 1)] the cat sat on the cat sat
جرّب هذه
إجابة الذكاء الاصطناعي المفترض. «يدور القمر حول الأرض. أول مرة مشى فيها البشر على القمر كانت عام 1969. القمر مصنوع في معظمه من الجبن. في القمر مدينة كبيرة اسمها لونا برايم يعيش فيها 5000 شخص. جاذبية القمر أضعف من جاذبية الأرض. يتفق العلماء على أن القمر يبعد 400,000 كم بالضبط في جميع الأوقات.»
افتح الإجابة
1. يدور القمر حول الأرض: صحيح. 2. أول مشي على القمر عام 1969: صحيح. 3. مصنوع من الجبن: مختلق. 4. مدينة اسمها لونا برايم: مختلق، فلا أحد يعيش على القمر. 5. الجاذبية أضعف من جاذبية الأرض: صحيح. 6. يبعد 400,000 كم بالضبط في جميع الأوقات: غير واضح/مبالغ فيه، لأن المسافة تتغير خلال دوران القمر. وللتحقق، استخدم مصدرين موثوقين مثل موسوعة علمية وموقع وكالة فضاء، بمساعدة شخص بالغ.
اختبار بذكاء اصطناعي حقيقي (مع شخص بالغ): السؤال نفسه ثلاث مرات
اختياري، ويجريه شخص بالغ. إن كان عمرك دون 13 عاماً، فالشخص البالغ يكتب ويقرأ، وأنت توجّه وتتحقق. اقرأ دليل مختبر الذكاء الاصطناعي أولاً. نحو 30 دقيقة.
لماذا نفعل هذا. اختار برنامج الكلمة التالية لديك الكلمة الأرجح. أما النماذج الحقيقية فتضيف الصدفة وقد تخطئ بثقة.
الأمر 1: شغّله ثلاث مرات، في محادثات جديدة
أعطني معلومة طريفة واحدة عن القمر في جملة واحدة.
الأمر 2: المدينة المختلقة
حدّثني عن المدينة المسماة لونا برايم على القمر، بما في ذلك كم شخصاً يعيش فيها.
الأمر 3: المصادر
ما مصادرك لذلك؟ أعطني روابط.
غيّر فقط الأجزاء المختلقة الموجودة بين [أقواس]. لا تضف أبداً اسماً أو مدرسة أو عنواناً أو صورة أو أي شيء خاص.
ما الذي تنتبه له
- هل المعلومات الثلاث عن القمر هي نفسها؟ ولماذا قد تختلف؟
- هل قال إنه لا توجد مدينة كهذه، أم وصفها؟ كلاهما نتيجة.
- اطلب من شخص بالغ أن يتحقق من أي روابط. هل هي موجودة؟ وهل تقول ما يدّعيه الذكاء الاصطناعي؟
دوّنه
الأداة، والأمر، وما قالته، وما تحققت منه، وهل كانت صحيحة أو خاطئة أو غير متأكدة. ورقة التسجيل
فكّر في الأمر. كيف يشبه هذا برنامج الكلمة التالية لديك؟ وكيف يختلف؟
اختبر نفسك
لماذا يستطيع النموذج اللغوي أن يقول شيئاً خاطئاً بثقة تامة؟
افتح الإجابة
لأنه يختار الكلمات المرجّح أن تأتي تالياً، لا الكلمات الصحيحة. أن تبدو صحيحاً ليس هو أن تكون صحيحاً.
ما القواعد الثلاث للتحقق من إجابة الذكاء الاصطناعي؟
افتح الإجابة
مثلاً: تحقّق من مصدرين موثوقين على الأقل، وابحث عمن صنعه وعلى ماذا دُرّب، وكن أكثر حذراً حين يكون الأمر مهماً (الصحة والسلامة والمال).
أرِ شخصاً بالغاً
شغّل برنامج الكلمة التالية أمام شخص بالغ واسأله ماذا يلاحظ على الحلقة.
الدرس 6: الأخلاقيات والخصوصية وحقوق النشر ومدونتي للذكاء الاصطناعينحو 55 دقيقة
- استعدّ
- نفّذ
- اختبر نفسك
- أرِ شخصاً بالغاً
استعدّ
تحتاج إلى:
- ورق
- قلم
- لا حاجة إلى حاسوب
نفّذ، خطوة بخطوة
جرّب هذه
التعرّف على الوجوه عند باب متجر. يستخدم متجر كاميرا تتعرّف على الوجوه وتمنع دخول من تظن أنهم تسببوا بمشكلة من قبل.
افتح الإجابة
فكّر في: المطابقات الخاطئة، ومن يُخطأ في مطابقته أكثر، وهل وافق الناس على أن يُمسحوا ضوئياً، ومن يقرّر ما يحدث بعد ذلك.
واجب مكتوب بالذكاء الاصطناعي. يسلّم طالب واجباً كتبته أداة ذكاء اصطناعي في معظمه ولا يقول ذلك.
افتح الإجابة
فكّر في: الصدق ونسبة الفضل، وما يتعلّمه الطالب، والعدالة مع زملائه، وكيف يستطيع المعلم أن يعرف.
أداة توظيف. تستخدم شركة آلة لاختيار المتقدمين لوظيفة الذين ستجري معهم مقابلات. وقد تعلّمت ممن وُظّف في الماضي.
افتح الإجابة
فكّر في: إذا كان التوظيف في الماضي غير عادل، فقد تنسخ الآلة الظلم؛ ومن يراجعها؛ وهل يعرف المتقدمون.
استنساخ صوت. يستخدم شخص تسجيلاً لصوت شخص ما ليصنع برنامجاً يتحدث بصوته.
افتح الإجابة
فكّر في: الإذن، والاحتيال، ومن يملك صوتك، وما القواعد التي قد تلزم.
اختبار بذكاء اصطناعي حقيقي (مع شخص بالغ): ناقش الجانبين، ثم احكم
اختياري، ويجريه شخص بالغ. إن كان عمرك دون 13 عاماً، فالشخص البالغ يكتب ويقرأ، وأنت توجّه وتتحقق. اقرأ دليل مختبر الذكاء الاصطناعي أولاً. نحو 35 دقيقة.
لماذا نفعل هذا. كتبت حجتك الخاصة. انظر ماذا يقول ذكاء اصطناعي، ثم اكتشف ما فاته. أنت الحَكَم.
الأمر 1: الجانبان
أعطني أفضل الحجج مع هذا الأمر وضده: يستخدم متجر كاميرات تتعرّف على الوجوه لمنع دخول من يظن أنهم تسببوا بمشكلة من قبل. أعطني ثلاث نقاط لكل جانب، وقل من قد يتأثر.
الأمر 2: مدونة سلوك
اكتب مدونة سلوك من خمس قواعد لطالب يستخدم أدوات الذكاء الاصطناعي. اجعل كل قاعدة جملة واحدة.
غيّر فقط الأجزاء المختلقة الموجودة بين [أقواس]. لا تضف أبداً اسماً أو مدرسة أو عنواناً أو صورة أو أي شيء خاص.
ما الذي تنتبه له
- ما الذي فاته؟ من لم يُذكر (أشخاص يُخطأ في مطابقتهم؟ أشخاص لم يوافقوا قط؟)
- أي قواعد مدونته هي نفسها قواعدك؟ وأيها ستحذف؟
- هل جعل الحجج تبدو أكثر يقيناً مما هي؟
دوّنه
الأداة، والأمر، وما قالته، وما تحققت منه، وهل كانت صحيحة أو خاطئة أو غير متأكدة. ورقة التسجيل
فكّر في الأمر. عدّل مدونة سلوكك. أي القواعد لك، وأيها جاء من الذكاء الاصطناعي؟ اكتب ملاحظة شكر.
اختبر نفسك
هل تستطيع أن تذكر فائدة واحدة ومخاطرة واحدة للحالة التي اخترتها؟
افتح الإجابة
نعم. وإن لم تستطع، ففكّر في واحدة أخرى.
أرِ شخصاً بالغاً
اقرأ مدونة سلوكك للذكاء الاصطناعي على شخص بالغ واسأله أي قاعدة سيضيف.
