Tensor

موتر الطبقة النهائية العامة

مصفوفة متعددة الأبعاد مكتوبة بشكل ثابت وعناصرها من النوع الموصوف بواسطة T.

مثيلات Tensor ليست آمنة للخيط.

تحذير: يجب تحرير الموارد التي يستهلكها كائن Tensor بشكل صريح عن طريق استدعاء طريقة close() عندما لا تكون هناك حاجة للكائن. على سبيل المثال، باستخدام كتلة حاول مع الموارد:

try (Tensor t = Tensor.create(...)) {
   doSomethingWith(t);
 }
 

الأساليب العامة

منطقية
قيمة منطقية ()
تُرجع القيمة في موتر Boolean .
بايت[]
قيمة البايت ()
تُرجع القيمة في موتر String عددي.
فارغ
يغلق ()
حرر الموارد المرتبطة بـ Tensor.
<U> ش
نسخ إلى (U dst)
نسخ محتويات الموتر إلى dst وإرجاع dst .
موتر ثابت <؟>
إنشاء (كائن كائن)
ينشئ موترًا من كائن يتم فحص فئته لمعرفة نوع البيانات الأساسي.
ثابت <T> الموتر <T>
إنشاء (نوع الفئة<T>، الشكل الطويل[]، بيانات ByteBuffer)
قم بإنشاء Tensor من أي نوع باستخدام البيانات من المخزن المؤقت المحدد.
موتر ثابت <مزدوج>
إنشاء (شكل طويل []، بيانات DoubleBuffer)
قم بإنشاء موتر Double باستخدام البيانات من المخزن المؤقت المحدد.
موتر ثابت <طويل>
إنشاء (شكل طويل []، بيانات LongBuffer)
قم بإنشاء Tensor Long باستخدام البيانات من المخزن المؤقت المحدد.
موتر ثابت <عدد صحيح>
إنشاء (شكل طويل []، بيانات IntBuffer)
قم بإنشاء موتر Integer باستخدام البيانات من المخزن المؤقت المحدد.
موتر ثابت <تعويم>
إنشاء (شكل طويل []، بيانات FloatBuffer)
قم بإنشاء Float Tensor باستخدام البيانات من المخزن المؤقت المحدد.
ثابت <T> الموتر <T>
إنشاء (كائن كائن، نوع الفئة<T>)
إنشاء Tensor من كائن Java.
نوع البيانات
نوع البيانات ()
إرجاع DataType للعناصر المخزنة في Tensor.
مزدوج
قيمة مزدوجة ()
تُرجع القيمة في موتر Double عددي.
<U> الموتر <U>
توقع (نوع الفئة<U>)
تقوم بإرجاع كائن Tensor هذا بالنوع Tensor&lt;U&gt; .
يطفو
القيمة العائمة ()
تُرجع القيمة في موتر Float عددي.
كثافة العمليات
القيمة الصحيحة ()
تُرجع القيمة في موتر Integer صحيح.
طويل
القيمة الطويلة ()
تُرجع القيمة في موتر Long عددي.
كثافة العمليات
عدد بايت ()
إرجاع حجم بيانات الموتر بالبايت.
كثافة العمليات
الأبعاد ()
تُرجع عدد أبعاد الموتر (يشار إليها أحيانًا بالرتبة ).
كثافة العمليات
عناصر رقمية ()
تُرجع عدد العناصر في العرض المسطح (1-D) للموتر.
طويل[]
شكل ()
إرجاع شكل Tensor، أي أحجام كل بعد.
خيط
إلى سلسلة ()
تقوم بإرجاع سلسلة تصف نوع وشكل Tensor.
فارغ
الكتابة إلى (LongBuffer التوقيت الصيفي)
اكتب بيانات الموتر Long في المخزن المؤقت المحدد.
فارغ
الكتابة إلى (DoubleBuffer التوقيت الصيفي)
اكتب بيانات الموتر Double في المخزن المؤقت المحدد.
فارغ
الكتابة إلى (IntBuffer التوقيت الصيفي)
اكتب بيانات موتر Integer المحدد.
فارغ
الكتابة إلى (ByteBuffer dst)
اكتب بيانات الموتر في المخزن المؤقت المحدد.
فارغ
الكتابة إلى (FloatBuffer dst)
اكتب بيانات Float العائم في المخزن المؤقت المحدد.

الطرق الموروثة

الأساليب العامة

القيمة المنطقية العامة ()

تُرجع القيمة في موتر Boolean .

رميات
IllegalArgumentException إذا كان Tensor لا يمثل عددًا منطقيًا.

البايت العام[] البايتالقيمة ()

تُرجع القيمة في موتر String عددي.

رميات
IllegalArgumentException إذا كان Tensor لا يمثل عددًا منطقيًا.

إغلاق الفراغ العام ()

حرر الموارد المرتبطة بـ Tensor.

تحذير: يجب استدعاء هذا لجميع الموترات التي لم يتم إنتاجها بواسطة عملية حريصة وإلا سيتم تسرب الذاكرة.

لم يعد كائن Tensor قابلاً للاستخدام بعد عمليات الإرجاع close .

نسخة U عامة إلى (U dst)

نسخ محتويات الموتر إلى dst وإرجاع dst .

بالنسبة للموترات غير العددية، تقوم هذه الطريقة بنسخ محتويات الموتر الأساسي إلى مصفوفة Java. بالنسبة للموترات العددية، استخدم واحدًا من bytesValue() أو floatValue() أو doubleValue() أو intValue() أو longValue() أو booleanValue() بدلاً من ذلك. يجب أن يكون نوع وشكل dst متوافقًا مع الموتر. على سبيل المثال:

int matrix[2][2] = { {1,2},{3,4} };
 try(Tensor t = Tensor.create(matrix)) {
   // Succeeds and prints "3"
   int[][] copy = new int[2][2];
   System.out.println(t.copyTo(copy)[1][0]);

   // Throws IllegalArgumentException since the shape of dst does not match the shape of t.
   int[][] dst = new int[4][1];
   t.copyTo(dst);
 }
 

حدود
التوقيت الصيفي
رميات
IllegalArgumentException إذا كان الموتر عدديًا أو إذا كان dst غير متوافق مع الموتر (على سبيل المثال، أنواع أو أشكال بيانات غير متطابقة).

إنشاء Tensor ثابت عام <?> (Object obj)

ينشئ موترًا من كائن يتم فحص فئته لمعرفة نوع البيانات الأساسي.

حدود
obj
رميات
IllegalArgumentException إذا كان obj غير متوافق مع نظام النوع TensorFlow.

إنشاء Tensor <T> ثابت عام (نوع Class<T>، شكل طويل []، بيانات ByteBuffer)

قم بإنشاء Tensor من أي نوع باستخدام البيانات من المخزن المؤقت المحدد.

ينشئ Tensor بالشكل المقدم من أي نوع حيث تم تشفير بيانات الموتر في data وفقًا لمواصفات TensorFlow C API .

حدود
يكتب نوع عنصر الموتر، ممثلًا ككائن فئة.
شكل شكل الموتر.
بيانات مخزن مؤقت يحتوي على بيانات الموتر.
رميات
IllegalArgumentException إذا كان نوع بيانات الموتر أو الشكل غير متوافق مع المخزن المؤقت

إنشاء Tensor ثابت عام <Double> (شكل طويل []، بيانات DoubleBuffer)

قم بإنشاء موتر Double باستخدام البيانات من المخزن المؤقت المحدد.

ينشئ موترًا بالشكل المحدد عن طريق نسخ العناصر من المخزن المؤقت (بدءًا من موضعه الحالي) إلى الموتر. على سبيل المثال، إذا كان shape = {2,3} (الذي يمثل مصفوفة 2x3) فيجب أن يحتوي المخزن المؤقت على 6 عناصر متبقية، والتي سيتم استهلاكها بهذه الطريقة.

حدود
شكل شكل الموتر.
بيانات مخزن مؤقت يحتوي على بيانات الموتر.
رميات
IllegalArgumentException إذا كان شكل الموتر غير متوافق مع المخزن المؤقت

إنشاء Tensor ثابت عام <Long> (شكل طويل []، بيانات LongBuffer)

قم بإنشاء Tensor Long باستخدام البيانات من المخزن المؤقت المحدد.

ينشئ موترًا بالشكل المحدد عن طريق نسخ العناصر من المخزن المؤقت (بدءًا من موضعه الحالي) إلى الموتر. على سبيل المثال، إذا كان shape = {2,3} (الذي يمثل مصفوفة 2x3) فيجب أن يحتوي المخزن المؤقت على 6 عناصر متبقية، والتي سيتم استهلاكها بهذه الطريقة.

حدود
شكل شكل الموتر.
بيانات مخزن مؤقت يحتوي على بيانات الموتر.
رميات
IllegalArgumentException إذا كان شكل الموتر غير متوافق مع المخزن المؤقت

إنشاء Tensor ثابت عام <Integer> (شكل طويل []، بيانات IntBuffer)

قم بإنشاء موتر Integer باستخدام البيانات من المخزن المؤقت المحدد.

ينشئ موترًا بالشكل المحدد عن طريق نسخ العناصر من المخزن المؤقت (بدءًا من موضعه الحالي) إلى الموتر. على سبيل المثال، إذا كان shape = {2,3} (الذي يمثل مصفوفة 2x3) فيجب أن يحتوي المخزن المؤقت على 6 عناصر متبقية، والتي سيتم استهلاكها بهذه الطريقة.

حدود
شكل شكل الموتر.
بيانات مخزن مؤقت يحتوي على بيانات الموتر.
رميات
IllegalArgumentException إذا كان شكل الموتر غير متوافق مع المخزن المؤقت

إنشاء Tensor <Float> ثابت عام (شكل طويل []، بيانات FloatBuffer)

قم بإنشاء Float Tensor باستخدام البيانات من المخزن المؤقت المحدد.

ينشئ موترًا بالشكل المحدد عن طريق نسخ العناصر من المخزن المؤقت (بدءًا من موضعه الحالي) إلى الموتر. على سبيل المثال، إذا كان shape = {2,3} (الذي يمثل مصفوفة 2x3) فيجب أن يحتوي المخزن المؤقت على 6 عناصر متبقية، والتي سيتم استهلاكها بهذه الطريقة.

حدود
شكل شكل الموتر.
بيانات مخزن مؤقت يحتوي على بيانات الموتر.
رميات
IllegalArgumentException إذا كان شكل الموتر غير متوافق مع المخزن المؤقت

إنشاء Tensor <T> ثابت عام (Object obj، Class<T> type)

إنشاء Tensor من كائن Java.

Tensor عبارة عن مجموعة متعددة الأبعاد من العناصر لمجموعة محدودة من الأنواع. لا يمكن تحويل جميع كائنات Java إلى Tensor . على وجه الخصوص، يجب أن تكون الوسيطة obj إما بدائية (float، double، int، long، boolean، byte) أو مصفوفة متعددة الأبعاد لواحدة من تلك البدائيات. يحدد type الوسيطة كيفية تفسير الوسيطة الأولى كنوع TensorFlow. على سبيل المثال:

// Valid: A 64-bit integer scalar.
 Tensor&lt;Long&gt; s = Tensor.create(42L, Long.class);

 // Valid: A 3x2 matrix of floats.
 float[][] matrix = new float[3][2];
 Tensor&lt;Float&gt; m = Tensor.create(matrix, Float.class);

 // Invalid: Will throw an IllegalArgumentException as an arbitrary Object
 // does not fit into the TensorFlow type system.
 Tensor&lt;?&gt; o = Tensor.create(new Object())

 // Invalid: Will throw an IllegalArgumentException since there are
 // a differing number of elements in each row of this 2-D array.
 int[][] twoD = new int[2][];
 twoD[0] = new int[1];
 twoD[1] = new int[2];
 Tensor&lt;Integer&gt; x = Tensor.create(twoD, Integer.class);
 
Tensors من نوع String عبارة عن صفائف متعددة الأبعاد لتسلسلات بايت عشوائية، لذا يمكن تهيئتها من صفائف عناصر byte[] . على سبيل المثال:
// Valid: A String tensor.
 Tensor&lt;String&gt; s = Tensor.create(new byte[]{1, 2, 3}, String.class);

 // Java Strings will need to be encoded into a byte-sequence.
 String mystring = "foo";
 Tensor&lt;String&gt; s = Tensor.create(mystring.getBytes("UTF-8"), String.class);

 // Valid: Matrix of String tensors.
 // Each element might have a different length.
 byte[][][] matrix = new byte[2][2][];
 matrix[0][0] = "this".getBytes("UTF-8");
 matrix[0][1] = "is".getBytes("UTF-8");
 matrix[1][0] = "a".getBytes("UTF-8");
 matrix[1][1] = "matrix".getBytes("UTF-8");
 Tensor&lt;String&gt; m = Tensor.create(matrix, String.class);
 

حدود
obj الكائن المراد تحويله إلى Tensor&lt;T&gt; . لاحظ أنه لا يتم التحقق من توافقه مع النوع T بواسطة نظام الكتابة. لإنشاء موترات بطريقة آمنة، استخدم Tensors .
يكتب كائن الفئة الذي يمثل النوع T.
رميات
IllegalArgumentException إذا كان obj غير متوافق مع نظام النوع TensorFlow.

نوع البيانات العام نوع البيانات ()

إرجاع DataType للعناصر المخزنة في Tensor.

قيمة مزدوجة مزدوجة عامة ()

تُرجع القيمة في موتر Double عددي.

رميات
IllegalArgumentException إذا كان Tensor لا يمثل عددا مزدوجا.

يتوقع Tensor <U> العام (نوع الفئة <U>)

تقوم بإرجاع كائن Tensor هذا بالنوع Tensor&lt;U&gt; . هذه الطريقة مفيدة عند إعطاء قيمة من النوع Tensor&lt;?&gt; .

حدود
يكتب أي صفيف (غير فارغ) من النوع الصحيح.
رميات
IllegalArgumentException إذا كان نوع البيانات الفعلي لهذا الكائن لا يتطابق مع النوع U .

تعويم عام floatValue ()

تُرجع القيمة في موتر Float عددي.

رميات
IllegalArgumentException إذا كان Tensor لا يمثل العددية العائمة.

كثافة العمليات العامة ()

تُرجع القيمة في موتر Integer صحيح.

رميات
IllegalArgumentException إذا كان Tensor لا يمثل عددًا صحيحًا.

القيمة الطويلة العامة ()

تُرجع القيمة في موتر Long عددي.

رميات
IllegalArgumentException إذا كان Tensor لا يمثل عددًا طويلًا.

عدد صحيح عام ()

إرجاع حجم بيانات الموتر بالبايت.

الأبعاد الداخلية العامة ()

إرجاع عدد الأبعاد (يشار إليها أحيانًا بالرتبة ) للموتر.

سيكون 0 للعدد، 1 للمتجه، 2 للمصفوفة، 3 للموتر ثلاثي الأبعاد وما إلى ذلك.

العناصر العددية العامة ()

تُرجع عدد العناصر في العرض المسطح (1-D) للموتر.

الشكل العام الطويل[] ()

إرجاع شكل Tensor، أي أحجام كل بعد.

المرتجعات
  • مصفوفة يكون فيها العنصر i هو حجم البعد i للموتر.

سلسلة عامة إلى سلسلة ()

تقوم بإرجاع سلسلة تصف نوع وشكل Tensor.

الكتابة إلى الفراغ العام (LongBuffer dst)

اكتب بيانات الموتر Long في المخزن المؤقت المحدد.

نسخ عناصر numElements() إلى المخزن المؤقت.

حدود
التوقيت الصيفي المخزن المؤقت الوجهة
رميات
BufferOverflowException إذا لم تكن هناك مساحة كافية في المخزن المؤقت المحدد للبيانات الموجودة في هذا الموتر
IllegalArgumentException إذا لم يكن نوع البيانات الموتر Long

الكتابة إلى الفراغ العام (DoubleBuffer dst)

اكتب بيانات الموتر Double في المخزن المؤقت المحدد.

نسخ عناصر numElements() إلى المخزن المؤقت.

حدود
التوقيت الصيفي المخزن المؤقت الوجهة
رميات
BufferOverflowException إذا لم تكن هناك مساحة كافية في المخزن المؤقت المحدد للبيانات الموجودة في هذا الموتر
IllegalArgumentException إذا كان نوع البيانات الموتر ليس Double

الكتابة إلى الفراغ العام (IntBuffer dst)

اكتب بيانات موتر Integer المحدد.

نسخ عناصر numElements() إلى المخزن المؤقت.

حدود
التوقيت الصيفي المخزن المؤقت الوجهة
رميات
BufferOverflowException إذا لم تكن هناك مساحة كافية في المخزن المؤقت المحدد للبيانات الموجودة في هذا الموتر
IllegalArgumentException إذا كان نوع بيانات الموتر ليس Integer

الكتابة إلى الفراغ العام (ByteBuffer dst)

اكتب بيانات الموتر في المخزن المؤقت المحدد.

نسخ بايتات numBytes() إلى المخزن المؤقت بترتيب البايت الأصلي للأنواع البدائية.

حدود
التوقيت الصيفي المخزن المؤقت الوجهة
رميات
BufferOverflowException إذا لم تكن هناك مساحة كافية في المخزن المؤقت المحدد للبيانات الموجودة في هذا الموتر

الكتابة إلى الفراغ العام (FloatBuffer dst)

اكتب بيانات Float العائم في المخزن المؤقت المحدد.

نسخ عناصر numElements() إلى المخزن المؤقت.

حدود
التوقيت الصيفي المخزن المؤقت الوجهة
رميات
BufferOverflowException إذا لم تكن هناك مساحة كافية في المخزن المؤقت المحدد للبيانات الموجودة في هذا الموتر
IllegalArgumentException إذا كان نوع البيانات الموتر ليس Float