عامر ابراهيم نشر 14 سبتمبر 2021 أرسل تقرير مشاركة نشر 14 سبتمبر 2021 هناك طريقتين لتقييم النموذج Session.run و Tensor.eval، ماهو الفرق بينهما؟ اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
1 Ali Haidar Ahmad نشر 14 سبتمبر 2021 أرسل تقرير مشاركة نشر 14 سبتمبر 2021 eval تقوم بتقييم ال Tensorالذي قام باستدعائها (دالة نستدعيها من خلال الموتر أي: ()tensor.eval). وسيؤدي استدعاء هذه الطريقة إلى تنفيذ جميع العمليات السابقة التي تنتج المدخلات اللازمة للعملية التي تنتج هذا الموتر "التنسر". وطبعاً قبل استدعاء Tensor.eval، يجب أن يكون قد تم تشغيل البيان الخاص به في جلسة Session، ويجب أن تكون الجلسة الافتراضية متاحة ، أو يجب تحديد الجلسة بشكل صريح. Session.run تقوم أيضاً بتقييم التنسر (run هي دالة نمرر لها الموتر أي: (tensor)Session.run). نستنتج أنه عندما يكون لدينا موتر ما وليكن t فإن استدعاء t.eval يكافئ استدعاء tf.get_default_session().run(t) مثال: import tensorflow as tf t = tf.constant(5.0) mysess = tf.Session() with mysess.as_default(): assert sess is tf.get_default_session() assert t.eval() == mysess.run(t) # لن يعطي خطأ لأنهما متساويتان لكن Session.run نستطيع من خلالها الحصول على قيم أكثر من موتر دفعة واحدة، مثال: t1 = tf.constant(5.0) t2 = tf.constant(4.0) t3 = tf.constant(6.0) mul1 = tf.mul(t1, t2) mul2 = tf.mul(t1,t3 ) with sess.as_default(): # تقييم الموترين دفعة واحدة sess.run([mul1, mul2]) mul1.eval() # تقييم الموتر الأول mul2.eval() # الثاني 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
1 Ahmed Sharshar نشر 15 سبتمبر 2021 أرسل تقرير مشاركة نشر 15 سبتمبر 2021 (معدل) اذا كنت تستخدم Tensor وتنادي بها t.eval ، فهو تماما كأن تستخدم tf.get_default_session().run(t) تعتبر t.evel هي اختصار ل sess.run(t) بحيث أن sess هي ال session الحالية، النموذجين التاليين يؤديان نفس المهمة تماما sess = tf.Session() c = tf.constant(5.0) print sess.run(c) c = tf.constant(5.0) with tf.Session(): print c.eval() لو أن الكود الخاص بك تعامل مع عدة رسومات بيانية والكثير من الجلسات sessions فيفضل استخدام Session.run() تم التعديل في 15 سبتمبر 2021 بواسطة Ahmed Sharshar اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
عامر ابراهيم
هناك طريقتين لتقييم النموذج Session.run و Tensor.eval، ماهو الفرق بينهما؟
رابط هذا التعليق
شارك على الشبكات الإجتماعية
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.