Shape

شكل الفصل النهائي العام

شكل Tensor أو NdArray .

يحدد Shape الأحجام على طول محاوره. وقد تحتوي على حجم غير معروف لأحد المحاور أو قد تكون غير معروفة تمامًا، وفي هذه الحالة لا يُعرف حتى عدد المحاور. إذا كان حجم المحور غير معروف، فيجب استخدام UNKNOWN_SIZE كحجمه.

الحقول

ساكنة العامة طويلة UNKNOWN_SIZE حجم المحور غير المعروف أو الحجم الإجمالي غير المعروف لشكل غير معروف.

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

شكل
إلحاق (البعد الأخير الطويل)
إرجاع شكل جديد، مع إضافة بُعد أخير جديد.
شكل
إلحاق ( شكل آخر)
إرجاع شكل جديد، مع إضافة أبعاد أشكال أخرى.
طويل[]
asArray ()
إرجاع نسخة دفاعية من محاور هذا الشكل.
منطقية
يساوي (كائن كائن)
يساوي التنفيذ للأشكال.
منطقية
hasUnknownDimension ()
إرجاع ما إذا كان حجم واحد أو أكثر من أبعاد هذا الشكل غير معروف.
كثافة العمليات
شكل
رأس ()
إرجاع شكل أحادي البعد مع مطابقة البعد الأول للبعد الأول لهذا الشكل.
منطقية ثابتة
متوافق (طويل خافت، طويل آخر خافت)
اختبار لمعرفة ما إذا كان بعدان للشكل متوافقين.
منطقية
متوافق مع (شكل الشكل )
يحدد ما إذا كان الشكل الآخر متوافقًا مع هذا الشكل.
منطقية
إيزماتريكس ()
إرجاع ما إذا كان هذا الشكل هو شكل مصفوفة
منطقية
isScalar ()
إرجاع ما إذا كان هذا الشكل يمثل عددًا.
منطقية
غير معروف ()
إرجاع ما إذا كان عدد أبعاد هذا الشكل غير معروف.
منطقية
ناقل ()
إرجاع ما إذا كان هذا الشكل هو شكل متجه.
كثافة العمليات
الأبعاد ()
إرجاع عدد أبعاد هذا الشكل.
شكل ثابت
من (طويل...أحجام الأبعاد)
قم بإنشاء شكل يمثل قيمة عددية أو قيمة ذات أبعاد N.
شكل
بادئة ( شكل آخر)
إرجاع شكل جديد، مع إضافة أبعاد شكل آخر مسبقًا.
شكل
prepend (البعد الأول الطويل)
إرجاع شكل جديد، مع إضافة بُعد أول جديد.
شكل ثابت
العددية ()
ينشئ شكلاً يمثل قيمة عددية.
طويل
الحجم (كثافة العمليات ط)
حجم البعد مع الفهرس المحدد.
طويل
مقاس ()
تُرجع العدد الإجمالي للعناصر التي قد يحتوي عليها Tensor بهذا الشكل.
شكل
الشكل الفرعي (int start، int end)
قم بإرجاع شكل ذو أبعاد end - begin بأبعاد مطابقة لهذا الشكل من begin إلى end .
شكل
ذيل ()
إرجاع شكل جديد، مع إزالة البعد الأول لهذا الشكل.
شكل
خذ (كثافة العمليات ن)
إرجاع شكل ذو أبعاد n بأبعاد تطابق الأبعاد n الأولى لهذا الشكل
شكل
خذ الأخير (كثافة العمليات ن)
تُرجع شكلاً ذو أبعاد n بأبعاد تطابق آخر أبعاد n لهذا الشكل.
خيط
إلى السلسلة ()
وصف موجز للشكل المخصص لتصحيح الأخطاء.
شكل ثابت
مجهول ()
إنشاء شكل يمثل عددًا غير معروف من الأبعاد.

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

الحقول

ثابت عام طويل UNKNOWN_SIZE

حجم المحور غير المعروف أو الحجم الإجمالي غير المعروف لشكل غير معروف.

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

إلحاق الشكل العام (البعد الأخير الطويل)

إرجاع شكل جديد، مع إضافة بُعد أخير جديد. لكي ينجح هذا الاستدعاء، يجب أن تكون isUnknown() false .

حدود
البعد الأخير البعد المراد إلحاقه
المرتجعات
  • شكل جديد بأبعاد هذا الشكل متبوعًا بالبعد المحدد، وليس فارغًا أبدًا

إلحاق الشكل العام ( شكل آخر)

إرجاع شكل جديد، مع إضافة أبعاد أشكال أخرى. لكل من هذا الشكل والشكل الآخر، يجب أن يُرجع التابع isUnknown() false. على سبيل المثال @code Shape.of(3,4).append(Shape.of(1,2)) => Shape.of(3,4,1,2) }

حدود
آخر شكل آخر، يجب ألا يكون null ، ويجب ألا يكون معروفًا
المرتجعات
  • شكل جديد يتكون من أبعاد هذا الشكل متبوعة بأبعاد الشكل المحدد

عام طويل[] asArray ()

إرجاع نسخة دفاعية من محاور هذا الشكل. التغييرات التي تم إجراؤها على المصفوفة التي تم إرجاعها حتى لا تغير حالة هذا الشكل. يُرجع قيمة فارغة إذا كانت isUnknown() ‎ صحيحة.

القيمة المنطقية العامة تساوي (Object obj)

يساوي التنفيذ للأشكال. يعتبر الشكلان متساويين إذا:

  • عدد الأبعاد محدد ومتساوي لكليهما
  • حجم كل بعد محدد ومتساوي لكليهما

إذا كان لأي من الشكلين أبعاد غير معروفة (حتى لو كانت متماثلة في كليهما) أو إذا كان لأي من الشكلين عدد غير معروف من الأبعاد (حتى لو كان كلاهما true لـ isUnknown() ) ، فلا يعتبران متساويين! ومع ذلك، فإن الشكل يساوي نفسه دائمًا، حتى لو كان غير معروف أو يحتوي على أبعاد غير معروفة.

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

إرجاع ما إذا كان حجم واحد أو أكثر من أبعاد هذا الشكل غير معروف.

كود التجزئة الدولي العام ()

رأس الشكل العام ()

إرجاع شكل أحادي البعد مع مطابقة البعد الأول للبعد الأول لهذا الشكل.

المنطقية الثابتة العامة متوافقة (طويلة خافتة، طويلة أخرى خافتة)

اختبار لمعرفة ما إذا كان بعدان للشكل متوافقين.

تكون الأبعاد متوافقة إذا كان أحد البعدين هو Shape.UNKNOWN_SIZE أو كان كلا البعدين متساويين

حدود
خافت البعد الأول
this.otherDim البعد الثاني
المرتجعات
  • صحيح، إذا كان كلا البعدين متوافقين

المنطق العام متوافق مع ( شكل الشكل )

يحدد ما إذا كان الشكل الآخر متوافقًا مع هذا الشكل.

يكون هناك شكلان ربما يكونان محددين جزئيًا متوافقين إذا كان هناك شكل محدد بالكامل يمكن أن يمثله كلا الشكلين. وبالتالي، يسمح التوافق لكود استدلال الشكل بالتفكير في الأشكال المحددة جزئيًا. على سبيل المثال:

  • Shape.unknown() متوافق مع جميع الأشكال.
  • Shape(UNKNOWN_SIZE, UNKNOWN_SIZE) متوافق مع جميع الأشكال ثنائية الأبعاد، مثل Shape(32, 784) وأيضًا Shape.unknown() . وهو غير متوافق، على سبيل المثال، مع Shape(UNKNOWN_SIZE) أو Shape(UNKNOWN_SIZE, UNKNOWN_SIZE, UNKNOWN_SIZE) .
  • Shape(32, UNKNOWN_SIZE) متوافق مع جميع الأشكال ثنائية الأبعاد بحجم 32 في البعد 0، وكذلك Shape(UNKNOWN_SIZE, UNKNOWN_SIZE) و Shape.unknown() . وهو غير متوافق مع، على سبيل المثال، Shape(32) أو Shape(32, UNKNOWN_SIZE, 1) أو Shape(64, UNKNOWN_SIZE) .
  • Shape(32, 784) متوافق مع نفسه، وكذلك Shape(32, UNKNOWN_SIZE) و Shape(UNKNOWN_SIZE, 784) و Shape(UNKNOWN_SIZE, UNKNOWN_SIZE) و Shape.unknown() . وهو غير متوافق مع، على سبيل المثال، Shape(32, 1, 784) أو Shape(UNKNOWN_SIZE) .

علاقة التوافق انعكاسية ومتماثلة، ولكنها ليست متعدية. على سبيل المثال، Shape(32, 784) متوافق مع Shape.unknown() و Shape.unknown() متوافق مع Shape(4, 4) لكن Shape(32, 784) غير متوافق مع Shape(4, 4) .

التوافق ليس هو نفسه البث. يجب أن تحتوي الأشكال المتوافقة على نفس عدد الأبعاد ولكل زوج أبعاد، يجب أن يكون أحد الأبعاد مساويًا للأبعاد الأخرى أو يجب أن يكون أحد الأبعاد في الزوج على الأقل UNKNOWN_SIZE.

يسمح البث بأبعاد مختلفة، ولكن يجب أن تكون الأبعاد المزدوجة متساوية، أو يجب أن يكون أحد الأبعاد 1. إذا كان أحد الأشكال له أبعاد أقل من شكل آخر، فسيتم "تمديد" الشكل الأصغر بأبعاد 1.

حدود
شكل الشكل الآخر
المرتجعات
  • صحيح إذا كان الشكلان متوافقين.

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

إرجاع ما إذا كان هذا الشكل هو شكل مصفوفة

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

إرجاع ما إذا كان هذا الشكل يمثل عددًا.

المنطق العام غير معروف ()

إرجاع ما إذا كان عدد أبعاد هذا الشكل غير معروف.

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

إرجاع ما إذا كان هذا الشكل هو شكل متجه.

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

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

الشكل العام الثابت (طويل...أحجام الأبعاد)

قم بإنشاء شكل يمثل قيمة عددية أو قيمة ذات أبعاد N.

ينشئ شكلاً يمثل قيمة عددية أو قيمة N-الأبعاد (N يكون 1 على الأقل)، بالحجم المقدم لكل بُعد. يشير A-1 إلى أن حجم البعد المقابل غير معروف. إذا لم يتم توفير أي أحجام، فسيتم إنشاء شكل يمثل حجمًا قياسيًا. على سبيل المثال:

// A 2-element vector.
 Shape vector = Shape.of(2);

 // A 2x3 matrix.
 Shape matrix = Shape.of(2, 3);

 // A matrix with 4 columns but an unknown number of rows.
 // This is typically used to indicate the shape of tensors that represent
 // a variable-sized batch of values. The Shape below might represent a
 // variable-sized batch of 4-element vectors.
 Shape batch = Shape.of(-1, 4);

 // A scalar. For readability, you should prefer calling Shape.scalar()
 Shape scalar = Shape.of()
 

حدود
DimensionSizes عدد العناصر في كل بعد من أبعاد هذا الشكل، إن وجد، أو UNKNOWN_SIZE إذا كان غير معروف.
المرتجعات
  • شكل جديد

شكل عام ( شكل آخر)

إرجاع شكل جديد، مع إضافة أبعاد شكل آخر مسبقًا. لكل من هذا الشكل والشكل الآخر، يجب أن يُرجع التابع isUnknown() false. على سبيل المثال، Shape.of(3,4).prepend(Shape.of(1,2)) => Shape.of(1,2,3,4)

حدود
آخر شكل آخر، يجب ألا يكون null ، ويجب ألا يكون معروفًا
المرتجعات
  • شكل جديد يتكون من أبعاد الشكل المحدد متبوعة بأبعاد هذا الشكل، ولا يكون فارغًا أبدًا

بادئة الشكل العام (البعد الأول الطويل)

إرجاع شكل جديد، مع إضافة بُعد أول جديد. لكي ينجح هذا الاستدعاء، يجب أن تكون isUnknown() false .

حدود
البعد الأول البعد للمقدمة
المرتجعات
  • شكل جديد بالبعد المحدد أولاً، متبوعًا بأبعاد هذا الشكل، ولا يكون فارغًا أبدًا

الشكل العددي العام الثابت ()

ينشئ شكلاً يمثل قيمة عددية.

المرتجعات
  • شكل بدون أبعاد يكون فيه isScalar() ‎ صحيحًا، وليس فارغًا أبدًا.

الحجم الطويل العام (int i)

حجم البعد مع الفهرس المحدد.

إذا كانت isUnknown() صحيحة أو أن حجم البعد الذي يحتوي على الفهرس المحدد له حجم غير معروف، فسيتم إرجاع UNKNOWN_SIZE .

حدود
أنا مؤشر البعد للحصول على الحجم. إذا كان لهذا الشكل عدد معروف من الأبعاد، فيجب أن يكون < numDimensions() . قد يكون المؤشر سالبًا، وفي هذه الحالة يتم حساب الموضع من نهاية الشكل. على سبيل المثال: size(-1) يُرجع حجم البعد الأخير، size(-2) يُرجع حجم البعد الثاني إلى الأخير وما إلى ذلك.
المرتجعات
  • حجم البعد مع الفهرس المحدد إذا كان معروفًا، وإلا UNKNOWN_SIZE .

الحجم العام الطويل ()

تُرجع العدد الإجمالي للعناصر التي قد يحتوي عليها Tensor بهذا الشكل.

إذا كانت isUnknown() صحيحة أو hasUnknownDimension() صحيحة، فسيتم إرجاع UNKNOWN_SIZE .

المرتجعات
  • العدد الإجمالي للعناصر التي سيحتوي عليها Tensor بهذا الشكل إذا كان من الممكن حسابه، وإلا UNKNOWN_SIZE .

شكل فرعي عام (int start، int end)

قم بإرجاع شكل ذو أبعاد end - begin بأبعاد مطابقة لهذا الشكل من begin إلى end .

حدود
يبدأ من أين يبدأ الشكل الفرعي.
نهاية حيث تنتهي الشكل الفرعي، حصريا.
المرتجعات
  • الشكل الفرعي الذي يحده البداية والنهاية.

ذيل الشكل العام ()

إرجاع شكل جديد، مع إزالة البعد الأول لهذا الشكل.

خذ الشكل العام (int n)

إرجاع شكل ذو أبعاد n بأبعاد تطابق الأبعاد n الأولى لهذا الشكل

حدود
ن يجب أن يكون عدد الأبعاد البادئة المطلوب الحصول عليها <= من numDimensions()
المرتجعات
  • شكل ذو عدد n أبعاده n الأولى مطابقة للأبعاد n الأولى لهذا الشكل

الشكل العام يأخذ آخر (int n)

تُرجع شكلاً ذو أبعاد n بأبعاد تطابق آخر أبعاد n لهذا الشكل.

حدود
ن يجب أن يكون عدد الأبعاد اللاحقة المطلوب الحصول عليها <= من numDimensions()
المرتجعات
  • شكل ذو عدد n بأبعاد تطابق آخر n من أبعاد هذا الشكل، ولا يكون فارغًا أبدًا

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

وصف موجز للشكل المخصص لتصحيح الأخطاء.

الشكل الثابت العام غير معروف ()

إنشاء شكل يمثل عددًا غير معروف من الأبعاد.

المرتجعات
  • الشكل الذي تكون isUnknown() ‎ صحيحة، ولا تكون فارغة أبدًا.