اذهب إلى المحتوى

السؤال

نشر

 ما الفرق بين تمرير دالة التنشيط كوسيط كما في المثال التالي :

from tensorflow.keras import layers
model.add(layers.Dense(64, activation='relu'))

أو استخدامها كطبقة Activation مستقلة:

from tensorflow.keras import layers
from tensorflow.keras import activations
model.add(layers.Dense(64))
model.add(layers.Activation(activations.relu))


 

Recommended Posts

  • 3
نشر

أولاً هذه الطبقة تمكننا من إضافة دالة التنشيط التي نريدها إلى نموذجنا تماماً كما في الشكل الذي أضفته، أما بالنسبة للفرق بين الطريقتين فلايوجد فرق من حيث المبدأ لكن الفرق يكون من حيث الاستخدام والهدف، فعندما تريد مثلاً تطبيق ال Bachnormlaization أو ال Layer Normlaization على قيم z فهنا أنت بحاجة لفصل التنشيط عن قيم ال z التي تنتجها الخلايا، لاحظ المثال التالي:

model = models.Sequential()
model.add(layers.Dense(64,input_shape=(10000,)))
model.add(keras.layers.LayerNormalization())
model.add(layers.Activation("relu"))
model.add(layers.Dense(64))
model.add(keras.layers.LayerNormalization())
model.add(layers.Activation("relu"))
model.add(layers.Dense(46, activation='softmax'))

وهنا أيضاً:

AlexNet.add(Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), padding='same'))
AlexNet.add(BatchNormalization()) # هنا
AlexNet.add(Activation('relu'))
AlexNet.add(MaxPooling2D(pool_size=(2,2), strides=(2,2), padding='same'))

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...