بناء شبكة عصبية باستخدام Keras Sequential - كتاب الذكاء الإصطناعي - الصف 12 - الفصل 1 - المملكة العربية السعودية

الكتاب: كتاب الذكاء الإصطناعي - الصف 12 - الفصل 1 | المادة: الذكاء الإصطناعي | المرحلة: الصف 12 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

الدرس: تصميم الشبكات العصبية باستخدام مكتبة Keras

📚 معلومات الصفحة

الكتاب: كتاب الذكاء الإصطناعي - الصف 12 - الفصل 1 | المادة: الذكاء الإصطناعي | المرحلة: الصف 12 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

نوع المحتوى: example

مستوى الصعوبة: متوسط

📝 ملخص الصفحة

تقدم هذه الصفحة مثالاً عملياً لبناء شبكة عصبية باستخدام أداة Sequential من مكتبة Keras في Python. يبدأ المثال ببيانات تدريب تمثل صور حيوانات مختلفة مثل الباندا والحمام والقرد وغيرها، حيث يتم تحويلها إلى ميزات باستخدام طريقة المخطط التكراري للتدرجات الموجهة (HOG).

يتم شرح كيفية بناء نموذج شبكة عصبية متتابعة يتكون من طبقتين: طبقة مخفية كثيفة تحتوي على 200 خلية عصبية مع دالة تنشيط ReLU، وطبقة مخرجات تحتوي على عدد من الخلايا العصبية يساوي عدد الفئات (16 فئة) مع دالة تنشيط softmax. يتم توضيح كيفية حساب عدد المتغيرات القابلة للتعلم في النموذج بناءً على أبعاد المدخلات وعدد الخلايا العصبية.

يكشف ملخص النموذج أن إجمالي المتغيرات القابلة للتعلم يبلغ 1,623,416 متغيراً، حيث تشمل هذه الأوزان والتحيزات. يتم شرح دور متغيرات التحيز في توجيه دالة تنشيط الخلايا العصبية لتمثيل علاقات أكثر تعقيداً بين بيانات المدخلات والمخرجات. يقدم المثال رؤية عملية حول كيفية تصميم الشبكات العصبية وتقدير تعقيدها الحسابي.

📋 المحتوى المنظم

📖 محتوى تعليمي مفصّل

نوع: محتوى تعليمي

['Elephant', 'Duck', 'Monkey', 'Cow', 'Sheep', 'Wolf', 'Tiger', 'Deer', 'Cat', 'Lion', 'Rabbit', 'Panda', 'Pigeon', 'Chicken', 'Eagle', 'Bear'] ['Panda' 'Pigeon' 'Monkey' 'Panda' 'Sheep'] [11 12 2 11 4]

نوع: محتوى تعليمي

ويمكن الآن استخدام أداة Sequential (التتابع) من مكتبة Keras لبناء شبكة عصبية في شكل طبقات متتابعة.

Python Code Example

نوع: محتوى تعليمي

from keras.models import Sequential # used to build neural networks as sequences of layers # every neuron in a dense layer is connected to every other neuron in the previous layer. from keras.layers import Dense # builds a sequential stack of layers model = Sequential() # adds a dense hidden layer with 200 neurons, and the ReLU activation function. model.add(Dense(200, input_shape=(X_train_hog.shape[1],), activation='relu')) # adds a dense output layer and the softmax activation function. model.add(Dense(len(classes), activation='softmax')) model.summary()

نوع: محتوى تعليمي

عدد الخلايا العصبية في الطبقة المخفية يعتمد على الخيار الذي يُتخذ عند التصميم، وعدد الفئات يحدد عدد الخلايا العصبية في طبقة المخرجات.

نوع: محتوى تعليمي

يكشف ملخص النموذج عن العدد الإجمالي للمتغيرات التي يجب أن يتعلمها النموذج من خلال ضبطها على بيانات التدريب، وبما أن المدخلات تحتوي على ثمانية آلاف ومئة (8,100) مُدخل، وهي أبعاد صور المخطط التكراري للتدرجات الموجهة X_train_hog، وتحتوي الطبقة المخفية على مئتي خلية عصبية، وهي طبقة كثيفة متصلة بالمدخلات اتصالاً كاملاً، فإن المجموع 1,620,000 = 200 × 8,100 وصلة موزونة يجب تعلم أوزانها (متغيراتها). تمت إضافة مئتي متغير تحيز (Bias) إضافي، بواقع متغير لكل خلية عصبية في الطبقة المخفية. وتُعتبر التغيرات هو قيمة تُضاف إلى مُدخلات كل خلية عصبية في الشبكة العصبية. وتُستخدم لتوجيه دالة تنشيط الخلايا العصبية إلى الجانب السلبي أو الإيجابي، مما يسمح للشبكة بنمذجة علاقات أكثر تعقيدًا بين بيانات المدخلات وعناوين المخرجات.

نوع: METADATA

وزارة التعليم Ministry of Education 2023 - 1447 212

🔍 عناصر مرئية

Model: "sequential"

Summary of a Keras Sequential neural network model, showing layer types, output shapes, and parameter counts.

📄 النص الكامل للصفحة

['Elephant', 'Duck', 'Monkey', 'Cow', 'Sheep', 'Wolf', 'Tiger', 'Deer', 'Cat', 'Lion', 'Rabbit', 'Panda', 'Pigeon', 'Chicken', 'Eagle', 'Bear']['Panda' 'Pigeon' 'Monkey' 'Panda' 'Sheep'] [11 12 2 11 4]ويمكن الآن استخدام أداة Sequential (التتابع) من مكتبة Keras لبناء شبكة عصبية في شكل طبقات متتابعة.--- SECTION: Python Code Example --- from keras.models import Sequential # used to build neural networks as sequences of layers # every neuron in a dense layer is connected to every other neuron in the previous layer. from keras.layers import Dense# builds a sequential stack of layers model = Sequential() # adds a dense hidden layer with 200 neurons, and the ReLU activation function. model.add(Dense(200, input_shape=(X_train_hog.shape[1],), activation='relu')) # adds a dense output layer and the softmax activation function. model.add(Dense(len(classes), activation='softmax')) model.summary()عدد الخلايا العصبية في الطبقة المخفية يعتمد على الخيار الذي يُتخذ عند التصميم، وعدد الفئات يحدد عدد الخلايا العصبية في طبقة المخرجات.يكشف ملخص النموذج عن العدد الإجمالي للمتغيرات التي يجب أن يتعلمها النموذج من خلال ضبطها على بيانات التدريب، وبما أن المدخلات تحتوي على ثمانية آلاف ومئة (8,100) مُدخل، وهي أبعاد صور المخطط التكراري للتدرجات الموجهة X_train_hog، وتحتوي الطبقة المخفية على مئتي خلية عصبية، وهي طبقة كثيفة متصلة بالمدخلات اتصالاً كاملاً، فإن المجموع 1,620,000 = 200 × 8,100 وصلة موزونة يجب تعلم أوزانها (متغيراتها). تمت إضافة مئتي متغير تحيز (Bias) إضافي، بواقع متغير لكل خلية عصبية في الطبقة المخفية. وتُعتبر التغيرات هو قيمة تُضاف إلى مُدخلات كل خلية عصبية في الشبكة العصبية. وتُستخدم لتوجيه دالة تنشيط الخلايا العصبية إلى الجانب السلبي أو الإيجابي، مما يسمح للشبكة بنمذجة علاقات أكثر تعقيدًا بين بيانات المدخلات وعناوين المخرجات.2023 - 1447--- VISUAL CONTEXT --- **TABLE**: Model: "sequential" Description: Summary of a Keras Sequential neural network model, showing layer types, output shapes, and parameter counts. Table Structure: Headers: Layer (type) | Output Shape | Param # Rows: Row 1: dense (Dense) | (None, 200) | 1620200 Row 2: dense_1 (Dense) | (None, 16) | 3216 Data: The table details two dense layers. The first dense layer has an output shape of (None, 200) and 1,620,200 parameters. The second dense layer (dense_1) has an output shape of (None, 16) and 3,216 parameters. The total number of parameters is 1,623,416, all of which are trainable. Key Values: Total params: 1,623,416, Trainable params: 1,623,416, Non-trainable params: 0 Context: This table provides a summary of the neural network architecture defined by the Keras code, detailing the layers, their output dimensions, and the number of learnable parameters, which is crucial for understanding model complexity and training requirements.

🎴 بطاقات تعليمية للمراجعة

عدد البطاقات: 5 بطاقة لهذه الصفحة

ما هي وظيفة مكتبة Keras Sequential؟

الإجابة: تُستخدم لبناء الشبكات العصبية كمتواليات من الطبقات.

الشرح: تسمح Sequential ببناء نموذج طبقة بعد طبقة، مما يسهل تنظيم الشبكة العصبية.

تلميح: فكر في كيفية تنظيم الطبقات لبناء النموذج.

ماذا تمثل الطبقة Dense في Keras؟

الإجابة: هي طبقة يتصل فيها كل عصبون بكل عصبون في الطبقة السابقة.

الشرح: تُعرف الطبقة Dense بالاتصال الكامل بين عصبوناتها وعصبونات الطبقة التي تسبقها.

تلميح: ما نوع الاتصال بين العصبونات في هذه الطبقة؟

ما هي دالة التنشيط (activation function) المستخدمة في الطبقة المخفية في المثال؟

الإجابة: دالة ReLU (Rectified Linear Unit).

الشرح: تُستخدم دالة ReLU بشكل شائع في الطبقات المخفية نظرًا لكفاءتها وفعاليتها.

تلميح: ابحث عن الاختصار في وصف الطبقة المخفية.

ما هي دالة التنشيط المستخدمة في طبقة المخرجات في المثال؟

الإجابة: دالة Softmax.

الشرح: تُستخدم Softmax لتحويل مخرجات الشبكة إلى احتمالات لكل فئة، وهي مناسبة لمشاكل التصنيف.

تلميح: هذه الدالة شائعة الاستخدام في طبقات التصنيف متعدد الفئات.

ماذا يعني 'None' في شكل المخرجات (Output Shape) للطبقة الأولى (dense) في ملخص النموذج؟

الإجابة: يشير إلى أن حجم الدفعة (batch size) غير محدد مسبقًا ويمكن أن يكون أي قيمة.

الشرح: عند تعريف النموذج، يكون حجم الدفعة مرنًا، لذا يُشار إليه بـ 'None'. يتم تحديد حجم الدفعة الفعلي أثناء عملية التدريب.

تلميح: تذكر كيف يمكن تدريب النموذج على دفعات مختلفة الأحجام.