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

السؤال

Recommended Posts

  • 0
نشر

هناك طريقة سهلة وهي فقط باستخدام  .numpy() لتحويل tensor الي numpy array كالتالي:

import tensorflow as tf

a = tf.constant([[1, 2], [3, 4]])                 
b = tf.add(a, 1)

a.numpy()
# array([[1, 2],
#        [3, 4]], dtype=int32)

b.numpy()
# array([[2, 3],
#        [4, 5]], dtype=int32)

tf.multiply(a, b).numpy()
# array([[ 2,  6],
#        [12, 20]], dtype=int32)

اذا لم تعمل هذة الطريقة يمكنك حينها استخدام الدالة التالية:

tf.compat.v1.Session

المثال التالي يوضح الطريقة:

a = tf.constant([[1, 2], [3, 4]])                 
b = tf.add(a, 1)
out = tf.multiply(a, b)

out.eval(session=tf.compat.v1.Session())    
# array([[ 2,  6],
#        [12, 20]], dtype=int32)
  • 0
نشر (معدل)

https://academy.hsoub.com/questions/16284-تحويل-tensor-إلى-مصفوفة-numpy-في-tensorflow؟/#comment-47170

هناك سؤال مشابه له هنا.
فقط استدعي  ()tensor.numpy على ال Tensor object

# tensorflow_version 2.x
# مثال1
import tensorflow as tf
t = tf.constant([[1, 2], [4, 8]])
a = t.numpy()
print(a)
print(type(a))
"""
[[1 2]
 [4 8]]
<class 'numpy.ndarray'>
"""
# مثال 2
import tensorflow as tf
a = tf.constant([[1, 2], [3, 4]])                 
b = tf.add(a, 1)
a.numpy()
# array([[1, 2],
#        [3, 4]], dtype=int32)
b.numpy()
# array([[2, 3],
#        [4, 5]], dtype=int32)
tf.multiply(a, b).numpy()
# array([[ 2,  6],
#        [12, 20]], dtype=int32)

إذا كانت النسخة هي TensorFlow version 1.x استخدم:

tensor.eval(session=tf.compat.v1.Session())

مثال:

# tensorflow_version 1.x
import tensorflow as tf 
t = tf.constant([[1, 2], [4, 8]])
a = t.eval(session=tf.compat.v1.Session())
print(a)
print(type(a))

أيضاً يجب أن تعلم أنه بمجرد استخدامك لأي عملية من عمليات نمباي على ال tensor سوف تتحول تلقائياً إلى numpy array، في الكود التالي مثلاً ، نقوم أولاً بإنشاء Tensor وتخزينه في متغير t عن طريق إنشاء ثابت Tensor ثم استخدام تابع  الضرب في TensorFlow والناتج هو نوع بيانات Tensor أيضاً . بعد ذلك ، نقوم بإجراء عملية np.add () على Tensor التي تم الحصول عليها من خلال العملية السابقة. وبالتالي ، تكون النتيجة عبارة عن NumPy ndarray حيث تم إجراء التحويل تلقائيًا بواسطة NumPy.

import numpy as np
import tensorflow as tf
#tensor إنشاء كائن
t = tf.constant([[1, 2], [4, 8]])
t = tf.multiply(t, 2)
print(t)
# تطبيق عملية من نمباي
a = np.add(t, 1)
print(a)

 

تم التعديل في بواسطة Ali Haidar Ahmad

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...