Bir Tensörün veya NdArray
şekli.
Shape
boyutları eksenleri boyunca tanımlar. Eksenlerden biri için bilinmeyen bir boyut içerebilir veya tamamen bilinmiyor olabilir, bu durumda eksen sayısı bile bilinmemektedir. Bir eksenin boyutu bilinmiyorsa, boyut olarak UNKNOWN_SIZE
kullanılmalıdır.
Alanlar
genel statik uzun | UNKNOWN_SIZE | Bilinmeyen bir eksenin boyutu veya bilinmeyen bir Şekil için toplam bilinmeyen boyut. |
Genel Yöntemler
Şekil | ekleme (uzun son Boyut) Yeni bir son boyut eklenmiş olarak yeni bir Şekil döndürür. |
Şekil | |
uzun[] | asArray () Bu Şeklin eksenlerinin savunma amaçlı bir kopyasını döndürür. |
boolean | eşittir (Nesne nesnesi) Şekiller için eşit uygulama. |
boolean | Bilinmeyen Boyuta sahiptir () Bu Şeklin bir veya daha fazla boyutunun bilinmeyen bir boyuta sahip olup olmadığını döndürür. |
int | hashKodu () |
Şekil | KAFA () İlk boyutu bu Şeklin ilk boyutuyla eşleşen 1 boyutlu bir Şekil döndürür. |
statik boole | isCompatible (uzun loş, uzun diğerDim) İki şekil boyutunun uyumlu olup olmadığını test edin. |
boolean | |
boolean | isMatrix () Bu Şeklin bir matrisin şekli olup olmadığını döndürür |
boolean | isScalar () Bu Şeklin bir skaleri temsil edip etmediğini döndürür. |
boolean | Bilinmiyor () Bu Şeklin boyut sayısının bilinip bilinmediğini döndürür. |
boolean | isVektör () Bu Shape'in bir vektör şekli olup olmadığını döndürür. |
int | sayıBoyutlar () Bu Şeklin boyutlarının sayısını döndürür. |
Statik Şekil | ( uzun ... boyutBoyutları) Skaler veya N boyutlu bir değeri temsil eden bir Şekil oluşturun. |
Şekil | başına ekle ( Diğerini şekillendir ) Başına başka bir Şeklin boyutları eklenmiş olarak yeni bir Şekil döndürür. |
Şekil | başına ekle (uzun ilk Boyut) Yeni bir ilk boyutun eklendiği yeni bir Şekil döndürür. |
Statik Şekil | skaler () Skaler bir değeri temsil eden bir Şekil oluşturur. |
uzun | boyut (int i) Verilen indeksle boyutun boyutu. |
uzun | boyut () Bu Şekildeki bir Tensörün sahip olabileceği toplam öğe sayısını döndürür. |
Şekil | subShape (int başlangıç, int bitiş) begin end bu Şekille eşleşen boyutlara sahip end - begin boyutlu bir şekil döndürün. |
Şekil | kuyruk () Bu Şeklin ilk boyutu kaldırılmış olarak yeni bir Şekil döndürür. |
Şekil | almak (int n) Boyutları bu şeklin ilk n boyutuyla eşleşen n boyutlu bir Şekil döndürür |
Şekil | TakeLast (int n) Bu Şeklin son n boyutuyla eşleşen boyutları olan n boyutlu bir Şekil döndürür. |
Sicim | toString () Hata ayıklamaya yönelik Şeklin kısa açıklaması. |
Statik Şekil | bilinmiyor () Bilinmeyen sayıda boyutu temsil eden bir Şekil oluşturur. |
Kalıtsal Yöntemler
Alanlar
genel statik uzun UNKNOWN_SIZE
Bilinmeyen bir eksenin boyutu veya bilinmeyen bir Şekil için toplam bilinmeyen boyut.
Genel Yöntemler
genel Şekil ekleme (uzun son Boyut)
Yeni bir son boyut eklenmiş olarak yeni bir Şekil döndürür. Bu çağrının başarılı olması için isUnknown()
öğesinin false
olması gerekir.
Parametreler
son Boyut | eklenecek boyut |
---|
İade
- bu Şeklin boyutları ve ardından verilen boyutun geldiği yeni bir Şekil, asla null
genel Şekil ekleme (Diğer Şekil )
Başka bir Şeklin boyutlarının eklendiği yeni bir Şekil döndürür. Hem bu Şekil hem de diğer Şekil için isUnknown()
işlevi false döndürmelidir. Örneğin @code Shape.of(3,4).append(Shape.of(1,2)) => Shape.of(3,4,1,2) }
Parametreler
diğer | başka bir Şekil, null olmamalı, bilinmiyor olmamalı |
---|
İade
- Bu Şeklin boyutlarından ve ardından verilen Şeklin boyutlarından oluşan yeni bir Şekil
public long[] asArray ()
Bu Şeklin eksenlerinin savunma amaçlı bir kopyasını döndürür. Bu Shape'in durumunu değiştirmemek için döndürülen dizide yapılan değişiklikler. isUnknown()
doğruysa null değerini döndürür.
genel boole eşittir (Object obj)
Şekiller için eşit uygulama. İki Şekil eşit kabul edilir:
- boyut sayısı tanımlıdır ve her ikisi için de eşittir
- her boyutun boyutu tanımlanmış ve her ikisi için de eşit
Şekillerden herhangi birinin bilinmeyen boyutları varsa (her ikisinde de aynı olsalar bile) veya şekillerden birinin bilinmeyen sayıda boyutu varsa (her ikisi de isUnknown()
için true
dönse bile), bunlar eşit kabul edilmez! Ancak bir şekil, bilinmese veya bilinmeyen boyutlar içerse bile her zaman kendisine eşit olacaktır.
public boolean hasUnknownDimension ()
Bu Şeklin bir veya daha fazla boyutunun bilinmeyen bir boyuta sahip olup olmadığını döndürür.
genel int hashCode ()
public static boolean isCompatible (uzun loş, uzun otherDim)
İki şekil boyutunun uyumlu olup olmadığını test edin.
Boyutlardan herhangi birinin Shape.UNKNOWN_SIZE
olması veya her iki boyutun eşit olması durumunda boyutlar uyumludur
Parametreler
loş | ilk boyut |
---|---|
diğerDim | ikinci boyut |
İade
- doğru, eğer her iki boyut da uyumluysa
public boolean isCompatibleWith ( Şekil şekli)
Başka bir şeklin bununla uyumlu olup olmadığını belirler.
Her iki şeklin temsil edebileceği tam tanımlı bir şekil varsa, muhtemelen kısmen tanımlanmış iki şekil uyumludur. Böylece uyumluluk, şekil çıkarım kodunun kısmen tanımlanmış şekiller hakkında akıl yürütmesine olanak tanır. Örneğin:
-
Shape.unknown()
tüm şekillerle uyumludur. -
Shape(UNKNOWN_SIZE, UNKNOWN_SIZE)
Shape(32, 784)
ve ayrıcaShape.unknown()
gibi tüm iki boyutlu şekillerle uyumludur. Örneğin,Shape(UNKNOWN_SIZE)
veyaShape(UNKNOWN_SIZE, UNKNOWN_SIZE, UNKNOWN_SIZE)
ile uyumlu değildir. -
Shape(32, UNKNOWN_SIZE)
0. boyutta boyutu 32 olan tüm iki boyutlu şekillerle ve ayrıcaShape(UNKNOWN_SIZE, UNKNOWN_SIZE)
veShape.unknown()
ile uyumludur. ÖrneğinShape(32)
,Shape(32, UNKNOWN_SIZE, 1)
veyaShape(64, UNKNOWN_SIZE)
ile uyumlu değildir. -
Shape(32, 784)
kendisi ile uyumludur ve ayrıcaShape(32, UNKNOWN_SIZE)
,Shape(UNKNOWN_SIZE, 784)
,Shape(UNKNOWN_SIZE, UNKNOWN_SIZE)
veShape.unknown()
. ÖrneğinShape(32, 1, 784)
veyaShape(UNKNOWN_SIZE)
ile uyumlu değildir.
Uyumluluk ilişkisi dönüşlü ve simetriktir ancak geçişli değildir. Örneğin, Shape(32, 784)
Shape.unknown()
ile uyumludur ve Shape.unknown()
, Shape(4, 4)
ile uyumludur, ancak Shape(32, 784)
Shape(4, 4)
) ile uyumlu değildir Shape(4, 4)
.
Uyumluluk, yayın yapmakla aynı şey değildir. Uyumlu şekiller aynı sayıda boyuta sahip olmalı ve her boyut çifti için bir boyutun diğer boyutlara eşit olması veya çiftteki boyutlardan en az birinin UNKNOWN_SIZE olması gerekir.
Yayınlama farklı boyutlara izin verir, ancak eşleştirilmiş boyutların eşit olması veya bir boyutun 1 olması gerekir. Bir şeklin diğer şekilden daha az boyutu varsa, daha küçük olan şekil 1 boyutuyla "uzatılır".
Parametreler
şekil | Diğer şekil |
---|
İade
- doğru, eğer iki şekil uyumluysa.
genel boole isMatrix ()
Bu Şeklin bir matrisin şekli olup olmadığını döndürür
genel boolean isScalar ()
Bu Şeklin bir skaleri temsil edip etmediğini döndürür.
genel boole Bilinmiyor ()
Bu Şeklin boyut sayısının bilinip bilinmediğini döndürür.
genel boolean isVector ()
Bu Shape'in bir vektör şekli olup olmadığını döndürür.
public int numDimensions ()
Bu Şeklin boyutlarının sayısını döndürür. Bilinmiyorsa -1, skaler için 0, vektör için 1, matris için 2 vb.
public static Şekli ( uzun... boyutBoyutları)
Skaler veya N boyutlu bir değeri temsil eden bir Şekil oluşturun.
Her boyut için sağlanan boyutla, bir skaler veya N boyutlu değeri (N en az 1 olmak üzere) temsil eden bir Şekil oluşturur. A -1, karşılık gelen boyutun boyutunun bilinmediğini gösterir. Boyut sağlanmazsa skaleri temsil eden bir Şekil oluşturulur. Örneğin:
// 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()
Parametreler
boyutBoyutlar | varsa bu şeklin her boyutundaki öğe sayısı veya bilinmiyorsa UNKNOWN_SIZE . |
---|
İade
- yeni bir şekil
genel Şekil başına ekleme (Diğer Şekil )
Başına başka bir Şeklin boyutları eklenmiş olarak yeni bir Şekil döndürür. Hem bu Şekil hem de diğer Şekil için isUnknown()
işlevi false döndürmelidir. Örneğin Shape.of(3,4).prepend(Shape.of(1,2)) => Shape.of(1,2,3,4)
Parametreler
diğer | başka bir Şekil, null olmamalı, bilinmiyor olmamalı |
---|
İade
- Verilen Şeklin boyutlarından ve ardından bu Şeklin boyutlarından oluşan yeni bir Şekil; asla null değil
genel Şekil başına ekleme (uzun ilk Boyut)
Yeni bir ilk boyutun eklendiği yeni bir Şekil döndürür. Bu çağrının başarılı olması için isUnknown()
öğesinin false
olması gerekir.
Parametreler
ilk Boyut | başa eklenecek boyut |
---|
İade
- önce verilen boyutun ardından bu Şeklin boyutlarının geldiği yeni bir şekil, asla null
genel statik Şekil skaler ()
Skaler bir değeri temsil eden bir Şekil oluşturur.
İade
-
isScalar()
öğesinin doğru olduğu, hiçbir zaman null olmadığı boyutları olmayan bir Şekil.
genel uzun boyut (int i)
Verilen indeksle boyutun boyutu.
isUnknown()
doğruysa veya verilen dizine sahip boyutun boyutu bilinmeyen bir boyuta sahipse UNKNOWN_SIZE
döndürülür.
Parametreler
Ben | boyutun alınacağı boyutun indeksi. Bu Şeklin bilinen sayıda boyutu varsa < numDimensions() olmalıdır. İndeks negatif olabilir, bu durumda konum şeklin sonundan itibaren sayılır. Örneğin: size(-1) son boyutun boyutunu döndürür, size(-2) ikinciden son boyutun boyutunu vb. döndürür. |
---|
İade
- Biliniyorsa belirtilen dizine sahip boyutun boyutu, aksi takdirde
UNKNOWN_SIZE
.
halka açık uzun boy ()
Bu Şekildeki bir Tensörün sahip olabileceği toplam öğe sayısını döndürür.
isUnknown()
doğruysa veya hasUnknownDimension()
doğruysa UNKNOWN_SIZE
döndürülür.
İade
- Hesaplanabiliyorsa, bu şekle sahip bir Tensörün sahip olacağı toplam öğe sayısı, aksi takdirde
UNKNOWN_SIZE
.
public Shape subShape (int başlangıç, int bitiş)
begin
end
bu Şekille eşleşen boyutlara sahip end - begin
boyutlu bir şekil döndürün.
Parametreler
başlamak | Alt şeklin nereden başlayacağı. |
---|---|
son | Alt şeklin nerede biteceği, özel. |
İade
- başlangıç ve bitiş ile sınırlanan alt şekil.
genel Şekil alma (int n)
Boyutları bu şeklin ilk n boyutuyla eşleşen n boyutlu bir Şekil döndürür
Parametreler
N | Alınacak ön boyutların sayısı numDimensions() 'tan <= olmalıdır |
---|
İade
- ilk n boyutu bu Şeklin ilk n boyutuyla eşleşen n boyutlu bir Şekil
public Shape takeLast (int n)
Bu Şeklin son n boyutuyla eşleşen boyutları olan n boyutlu bir Şekil döndürür.
Parametreler
N | elde edilecek sondaki boyutların sayısı numDimensions() 'tan <= olmalıdır |
---|
İade
- boyutları bu Şeklin son n boyutuyla eşleşen n boyutlu bir şekil; asla boş değer değildir
public String toString ()
Hata ayıklamaya yönelik Şeklin kısa açıklaması.
genel statik Şekil bilinmiyor ()
Bilinmeyen sayıda boyutu temsil eden bir Şekil oluşturur.
İade
-
isUnknown()
öğesinin doğru olduğu bir Şekil, asla null değildir.