عامر ابراهيم نشر 2 سبتمبر 2021 أرسل تقرير نشر 2 سبتمبر 2021 لدي مجموعة بيانات في مصفوفة نمباي وأريد تحويلها إلى مجموعة بيانات tf.dataset لكن يوجد طريقتين: Dataset.from_tensors و Dataset.from_tensor_slices فما الفرق بينهما؟ 1 اقتباس
1 Ali Haidar Ahmad نشر 2 سبتمبر 2021 أرسل تقرير نشر 2 سبتمبر 2021 أولاً from_tensors تقوم بإنشاء dataset من خلال دمج المدخلات الممررة لها كعنصر واحد (كتلة واحدة) أي مثلاً: data = tf.constant([[4, 5], [1, 7]]) dataset = tf.data.Dataset.from_tensors(data) [x for x in dataset] """ #data لاحظ أن الخرج هو عبارة عن مصفوفة واحدة تمثال ال [<tf.Tensor: shape=(2, 2), dtype=int32, numpy= array([[4, 5], [1, 7]], dtype=int32)>] """ بينما from_tensor_slices تقوم بإنشاء dataset وتعيد عدة عناصر منفصلة بحيث كل عنصر يمثل صف من الإدخال الممرر لها أي: data = tf.constant([[4, 5], [1, 7]]) dataset = tf.data.Dataset.from_tensor_slices(data) [x for x in dataset] """ # لاحظ أن كل سطر من الدخل تم تمثيله بشكل مستقل [<tf.Tensor: shape=(2,), dtype=int32, numpy=array([4, 5], dtype=int32)>, <tf.Tensor: shape=(2,), dtype=int32, numpy=array([1, 7], dtype=int32)>] """ أيضاً هناك اختلاف عندما يكون الدخل هو قائمة، حيث أن from_tensors تقوم بإنشاء tensor ثلاثي الأبعاد أما from_tensor_slices تقوم بدمجهم وتعيد 2D. مثلاً: dataset1 = tf.data.Dataset.from_tensor_slices( [tf.random_uniform([2, 3]), tf.random_uniform([2, 3])]) dataset2 = tf.data.Dataset.from_tensors( [tf.random_uniform([2, 3]), tf.random_uniform([2, 3])]) print(dataset1) # shapes: (2, 3) print(dataset2) # shapes: (2, 2, 3) 1 اقتباس
السؤال
عامر ابراهيم
لدي مجموعة بيانات في مصفوفة نمباي وأريد تحويلها إلى مجموعة بيانات tf.dataset لكن يوجد طريقتين: Dataset.from_tensors و Dataset.from_tensor_slices فما الفرق بينهما؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.