🤖 كورس الذكاء الاصطناعي – الحلقة 6: Mini Neural Network (شبكة عصبية صغيرة كاملة)
#برمجة #AI
🧠 مقدمة
في الحلقات السابقة تعلمنا:
- Linear Regression 📈
- KNN 🧩
- Neural Network (Neuron واحد) 🧠
- Gradient Descent 🔥
اليوم سنجمع كل شيء ونبني:
🧠 Mini Neural Network (شبكة عصبية بسيطة كاملة)
📌 فكرة الشبكة العصبية
بدلاً من neuron واحد:
نستخدم أكثر من neuron معاً
🧩 الشكل البسيط
Input → Neurons → Output
🧠 هدفنا اليوم
نبني نموذج:
يتعلم تصنيف بسيط (0 أو 1)
📊 مثال البيانات
| x | y |
|---|---|
| 0 | 0 |
| 1 | 1 |
يعني:
- إذا دخل 0 → يخرج 0
- إذا دخل 1 → يخرج 1
🔥 الشبكة العصبية البسيطة
سنستخدم:
- وزن واحد
- bias
- تدريب بسيط
🧮 المعادلة
prediction = x * w + b
🔥 كود شبكة عصبية صغيرة
#include <iostream>
using namespace std;
int main()
{
double w = 0.0;
double b = 0.0;
double learning_rate = 0.1;
for(int epoch = 0; epoch < 20; epoch++)
{
double total_error = 0;
for(int x = 0; x <= 1; x++)
{
double y_true = x;
double y_pred = x * w + b;
double error = y_true - y_pred;
// تحديث الأوزان (Gradient Descent بسيط)
w += learning_rate * error * x;
b += learning_rate * error;
total_error += error * error;
}
cout << "Epoch " << epoch
<< " Error: " << total_error << endl;
}
cout << "\nFinal Weight: " << w << endl;
cout << "Final Bias: " << b << endl;
return 0;
}
🧠 ماذا يحدث هنا؟
✔ ندرب النموذج عدة مرات (Epochs)
✔ نحسب الخطأ
✔ نعدل الوزن والـ bias
✔ الخطأ يقل تدريجياً
📉 مفهوم Epoch
هو:
دورة تدريب كاملة على كل البيانات
🧠 كيف يتعلم النموذج؟
في البداية:
w = 0
b = 0
يعني لا يفهم شيء ❌
بعد التدريب:
w ≈ 1
b ≈ 0
✔ أصبح يفهم العلاقة
📊 اختبار النموذج
بعد التدريب:
cout << "Test 0: " << (0 * w + b) << endl;
cout << "Test 1: " << (1 * w + b) << endl;
النتائج المتوقعة:
0 ≈ 0
1 ≈ 1
🧠 ماذا يمثل هذا النموذج؟
هذا أبسط شكل من:
Neural Network + Training + Gradient Descent
📌 أين نستخدم هذه الفكرة؟
حتى لو كانت بسيطة جداً، نفس الفكرة تستخدم في:
✔ ChatGPT 🤖
✔ التعرف على الصور 📷
✔ الترجمة 🌍
✔ السيارات الذكية 🚗
✔ أنظمة التوصية 🛒
🧠 لماذا هذا مهم؟
لأنك الآن تفهم:
كيف “يتعلم” الذكاء الاصطناعي فعلياً من الداخل
⚠️ ملاحظات مهمة
❌ هذا نموذج تعليمي بسيط
❌ لا يستخدم في الواقع مباشرة
✔ لكنه أساس كل الشبكات العصبية الحديثة
🧪 تمرين
جرّب:
- زيادة عدد epochs
- تغيير learning rate
- إضافة قيم جديدة (x=2 مثلاً)
- ملاحظة تغير الدقة
🧠 مقارنة قبل وبعد التدريب
| قبل | بعد |
|---|---|
| عشوائي | دقيق |
| لا يفهم العلاقة | يتعلم العلاقة |
| خطأ كبير | خطأ صغير |
🚀 ملخص الحلقة 6
تعلمنا:
- بناء شبكة عصبية بسيطة
- مفهوم epoch
- تدريب النموذج
- تعديل weight و bias
- تقليل الخطأ تدريجياً
- أساس التعلم العميق
🔥 في الحلقة 7 سنتعلم:
🧠 AI Project صغير (تطبيق ذكاء اصطناعي كامل)
وسنقوم بـ:
- دمج Linear + Neural + KNN
- بناء مشروع تصنيف حقيقي
- إدخال بيانات أكثر
- تحسين الدقة
- أول مشروع AI شبه حقيقي 🚀

تعليقات
إرسال تعليق