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

ظهور الخطأ AttributeError: module 'tensorflow' has no attribute 'Session في تنسرفلو Tensorflow

عامر ابراهيم

السؤال

أحاول تنفيذ الكود التالي لكن يظهر لي هذا الخطأ:

import tensorflow as tf
msg = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(msg))
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-7-01569850c7c6> in <module>()
      1 import tensorflow as tf
      2 msg = tf.constant('Hello, TensorFlow!')
----> 3 sess = tf.Session()
      4 print(sess.run(msg))
AttributeError: module 'tensorflow' has no attribute 'Session'

ما المشكلة وما الحل؟ علماً أن نسخة تنسرفلو التي لدي هي 2.4

تم التعديل في بواسطة عامر ابراهيم
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

بدءاً من نسخة تنسرفلو Tensorflow2.0 أصبح التنفيذ الافتراضي في تنسرفلو "Eager Execution" وهو مصطلح يشير إلى عملية تقييم العمليات على الفور، دون الانتظار لتشكيل ال Graph. أي يمكنك معرفة قيمة أي متغير أو ناتج أي عملية على الفور أما في النسخ السابقة لهذه النسخة كان التنفيذ الافتراضي للعمليات في تنسرفلو هو "Graph Execution" أي أن العمليات لايتم تقييمها حتى يتم إنشاء الجلسة بواسطة:

tf.Session().run()

أي لانكون قادرين على معرفة قيم المتغيرات حتى يتم تنفيذ ال Graph من أول عقدة فيه لآخر عقدة من خلال هذا الكود.
الآن أنت لديك نسخة 2.4 وتحاول استخدام Session التي لم يعد هناك حاجة لها فهي غير موجودة بعد الآن في تنسرفلو (بدءاً من 2.0). لذا لاداعي لاستخدام session ويمكنك عرض ناتج أي عملية مباشرةً كالتالي:

import tensorflow as tf
msg = tf.constant('Hello, TensorFlow!')
tf.print(msg)
# Hello, TensorFlow!

أما إذا كنت تريد أن تستخدم Session واعتماد ال Graph Execution فيمكنك تعطيل Eager Execution من خلال السطر التالي:

tf.compat.v1.disable_eager_execution()

وبالتالي يصبح الكود:

import tensorflow as tf
tf.compat.v1.disable_eager_execution()
hello = tf.constant('Hello, TensorFlow!')
sess = tf.compat.v1.Session()
print(sess.run(hello))

أو من خلال with:

import tensorflow as tf
with tf.compat.v1.Session() as sess:
    hello = tf.constant('hello world')
    print(sess.run(hello))
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

هذا الخطأ يظهر بسبب انك تستخدم tensorflow2 واللتى لها طريقة مختلفة عن tensorflow1 فى انشاء الsession

غير السطر اللذى يحمل الخطأ الى التالى:

sess=tf.compat.v1.Session()

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...