عامر ابراهيم نشر 14 سبتمبر 2021 أرسل تقرير نشر 14 سبتمبر 2021 قمت ببناء شبكة عصبية وقمت بتهيئة ال GradientDescentOptimizer بالشكل التالي: initialize = tf.initialize_all_variables() mysess = tf.Session() mysess.run(initialize) m= tf.reduce_mean(tf.square(y - yh)) train_step = tf.train.GradientDescentOptimizer(0.4).minimize(m) كيف يمكنني الآن ضبط معددل تعلم تكيفي له؟ 1 اقتباس
1 Ali Haidar Ahmad نشر 14 سبتمبر 2021 أرسل تقرير نشر 14 سبتمبر 2021 عموماً لايوجد طريقة مباشرة للقيام بذلك لأن GradientDescentOptimizer يقبل معدل تعلم ثابت (غير متغير) لكن للقيام بذلك نستفيد من فكرة أن وسيطة ال learning_rate في باني ال GradientDescentOptimizer يمكن أن يكون موتر (Tensor)، وبالتالي يمكننا استخدام معدل تعلم مختلف في كل خطوة، على سبيل المثال: import tensorflow as tf lr = tf.placeholder(tf.float32, shape=[]) # ... # ... train_step = tf.train.GradientDescentOptimizer(name="myOptimizer" learning_rate=learning_rate).minimize(m) mysess = tf.Session() # تمرير قيم مختلفة لمعدل التعلم في كل خطوة تدريب mysess.run(train_step, feed_dict={lr: 0.1}) mysess.run(train_step, feed_dict={lr: 0.01}) mysess.run(train_step, feed_dict={lr: 0.001}) 1 اقتباس
0 Ahmed Sharshar نشر 15 سبتمبر 2021 أرسل تقرير نشر 15 سبتمبر 2021 طريقة على توضح كيف تقوم بتعيين القيم بشكل يدوي للتحكم بالمعدل كما تشاء، بالاضافة لهذا يوفر tensorflow طريقة تلقائية لضبط قيم التعلم ذاتيا باستخدام tf.train.exponential_decay يمكنك استخدامها في النموذج الخاص بك كالتالي: # Optimizer: هو الذي يتحكم بمعدل التعلم بحيث يقوم بانقاص قيمته في كل دورة batch = tf.Variable(0) learning_rate = tf.train.exponential_decay( 0.01, # معدل التعلم الاساسي. batch * BATCH_SIZE, train_size, 0.95, # معدل التناقص. staircase=True) # نستخدم simple momentum من أجل التحسين optimizer = tf.train.MomentumOptimizer(learning_rate, 0.9).minimize(loss, global_step=batch) اقتباس
السؤال
عامر ابراهيم
قمت ببناء شبكة عصبية وقمت بتهيئة ال GradientDescentOptimizer بالشكل التالي:
كيف يمكنني الآن ضبط معددل تعلم تكيفي له؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.