تخطَّ إلى المحتوى

Neural Network

الشبكة العصبية (Neural Network) Neural Network

الشبكة العصبية سلسلة من الطبقات الخطية تليها دوال تنشيط غير خطية، تُدرَّب عبر backpropagation لتعديل الأوزان — الوحدة الأساسية في التعلّم العميق.

الخلية العصبية (perceptron) تأخذ مُدخلات متعددة، تضربها بأوزان، تجمعها، تطبّق دالة تنشيط غير خطية. شبكة كاملة تتكوّن من طبقات: طبقة مُدخل، طبقة أو أكثر مخفية، طبقة مُخرج. دوال التنشيط (ReLU، Sigmoid، Tanh) هي ما يجعل الشبكة قادرة على تمثيل علاقات غير خطية — بدونها الانحدار الخطي المكدّس يبقى خطيًا.

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

القدرة التمثيلية (universal approximation): شبكة بطبقة مخفية واحدة وعدد خلايا كافٍ يمكنها تقريب أي دالة مستمرة — نظريًا. عمليًا، العمق والتدريب الفعال يتطلبان هندسة معمارية ومدرب (optimizer) مناسب.

الصياغة

y = activation(W · x + b)

# شبكة متعددة الطبقات
hidden1 = relu(W1 · x + b1)
hidden2 = relu(W2 · hidden1 + b2)
output  = softmax(W3 · hidden2 + b3)

📄 مثال

import torch
import torch.nn as nn

class SimpleNN(nn.Module):
    def __init__(self, in_dim, hidden, out_dim):
        super().__init__()
        self.net = nn.Sequential(
            nn.Linear(in_dim, hidden),
            nn.ReLU(),
            nn.Linear(hidden, hidden),
            nn.ReLU(),
            nn.Linear(hidden, out_dim),
        )

    def forward(self, x):
        return self.net(x)

model = SimpleNN(in_dim=10, hidden=64, out_dim=3)
x = torch.randn(4, 10)
print(model(x).shape)  # torch.Size([4, 3])

أهم النقاط

النقطةالوظيفة
Layerطبقة من الخلايا العصبية — Linear, Conv2d, LSTM, Transformer...
Activationدالة غير خطية (ReLU, Sigmoid, Tanh, GELU) — لا غنى عنها لعمق الشبكة
Forward passمرور المُدخلات عبر الطبقات للحصول على المُخرج
Parameterأوزان وانحياز قابلة للتعلّم — تتراكم عبر الشبكة

💡 نصائح عملية

  • ابدأ بـ MLP بسيط (2-3 طبقات كثيفة) كـ baseline قبل الانتقال لـ CNN أو Transformer — أحيانًا البسيط يكفي
  • وحّد مقاسات المُدخلات قبل التدريب (StandardScaler) — الشبكات حساسة جدًا لمقاسات الميزات

⚠️ أخطاء شائعة

  • افتراض أن الشبكة العصبية "تفكّر" أو "تفهم" — هي محسوب رياضي، لا نسخة من الدماغ البشري
  • اختيار معمارية أعقد من اللازم لبيانات قليلة — MLP بسيط غالبًا يتفوق على Transformer في الجداول الصغيرة

خصائص ذات صلة

🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار AI-ML الكامل بالعربي.

📚 للتعمق التقني الكامل بالإنجليزية: PyTorch Documentation