تجميع مصنّف صور CNN
حوّل كتل Conv-ReLU-pool إلى نموذج عامل
تجميع مصنّف صور CNN درس مجاني في Deep Learning Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Deep Learning Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Deep Learning Academy 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
The CNN Recipe
A classic image classifier stacks conv-ReLU-pool blocks to extract features, then ends with dense layers that predict the class.
One Building Block
Each block follows the same rhythm: a conv layer, a ReLU activation, then a pool. This is the basic conv block you repeat.
block = nn.Sequential(
nn.Conv2d(3, 16, 3, padding=1),
nn.ReLU(),
nn.MaxPool2d(2),
)ReLU Adds Nonlinearity
Without an activation, stacked convolutions collapse into one linear step. ReLU after each conv lets the network learn complex shapes.
Stack Blocks to Go Deeper
Repeat the block, growing the channels each time. More blocks mean a wider receptive field and richer learned features.
Flatten Before the Head
After the conv blocks you have a stack of small maps. Flatten them into one vector so a dense layer can read them.
x = torch.flatten(x, start_dim=1)The Classifier Head
A Linear layer maps the flattened features to one score per class. For ten classes, it outputs ten numbers.
head = nn.Linear(64, 10)Define the Model
Wrap the features and head in an nn.Module. The forward method runs the convs, flattens, then the classifier.
class CNN(nn.Module):
def __init__(self):
super().__init__()
self.features = block
self.head = headWrite the Forward Pass
In forward, pass the image through features, flatten, and feed the head. The output is one raw score per class.
def forward(self, x):
x = self.features(x)
x = torch.flatten(x, 1)
return self.head(x)Outputs Are Logits
The head returns raw scores called logits, not probabilities. Cross-entropy loss expects exactly these raw values during training.
Pick the Loss
For multiclass images, use CrossEntropyLoss. It applies softmax internally and compares against the true label index.
loss_fn = nn.CrossEntropyLoss()Predict a Class
At inference, take the index of the largest logit. That argmax is the model's predicted class for the image. 🖼️
pred = logits.argmax(dim=1)Quick Check
Let us check the order of a CNN classifier's pieces.
Recap: A Working CNN
You assembled a CNN: conv-ReLU-pool blocks extract features, flatten feeds a Linear head, and argmax over logits gives the predicted class. 🎉
الأسئلة الشائعة
هل درس «تجميع مصنّف صور CNN» مجاني؟
نعم — نص درس «تجميع مصنّف صور CNN» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Deep Learning Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Deep Learning Academy 4 دروس في المجموع.
ماذا ستتعلم في «تجميع مصنّف صور CNN»؟
حوّل كتل Conv-ReLU-pool إلى نموذج عامل تتمرن على Deep Learning Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Deep Learning Academy؟
لا تُشترط خبرة سابقة. Deep Learning Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «تجميع مصنّف صور CNN»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Deep Learning Academy هذا؟
نعم. كل درس في Deep Learning Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- الالتفاف: تنزلق Kernels فوق البكسلات
- Stride وPadding وPooling
- القنوات وخرائط الميزات ومجالات الاستقبال
- تجميع مصنّف صور CNN