یک آرایه چند بعدی تایپی ثابت که عناصر آن از نوعی توصیف شده توسط T است.
مواردی از یک تنسور از نظر نخ ایمن نیستند.
هشدار: منابعی که توسط شی Tensor مصرف می شود باید با فراخوانی روش close()
درصورت عدم نیاز به شی صریحاً آزاد شوند. به عنوان مثال ، با استفاده از یک بلوک try-with-منابع:
try (Tensor t = Tensor.create(...)) {
doSomethingWith(t);
}
روشهای عمومی
بولی | booleanValue () مقدار را در یک تانسور Boolean اسکالر برمی گرداند. |
بایت [] | bytesValue () مقدار را در یک تانسور String اسکالر برمی گرداند. |
خالی | بستن () منابع مرتبط با Tensor را آزاد کنید. |
<U> تو | copyTo (U dst) محتوای تنسور را در dst کپی می کند و dst برمی گرداند. |
تانسور استاتیک <؟> | ایجاد (Object Obj) یک تنسور از یک شی ایجاد می کند که کلاس آن بررسی می شود تا مشخص شود نوع داده اساسی چیست. |
استاتیک <T> Tensor <T> | ایجاد (کلاس <T> نوع ، شکل [] طولانی ، داده های ByteBuffer) با استفاده از داده های موجود در بافر ، یک سنسور از هر نوع ایجاد کنید. |
سنسور استاتیک <دوبل> | |
سنسور استاتیک <طولانی> | |
سنسور استاتیک <داخلی> | |
تانسور استاتیک <شناور> | |
استاتیک <T> Tensor <T> | ایجاد (Object Obj ، کلاس <T> نوع) یک Tensor از یک شی Java ایجاد می کند. |
نوع داده | |
دو برابر | doubleValue () مقدار را در یک تانسور Double برمی گرداند. |
<U> سنسور <U> | انتظار (نوع کلاس <U>) این شی Tensor را با نوع Tensor<U> برمی گرداند. |
شناور | floatValue () |
int | |
طولانی | |
int | numBytes () اندازه داده های سنسور را در بایت برمی گرداند. |
int | numDimensions () تعداد ابعاد (که بعضاً به آن درجه می گویند) تنسور را برمی گرداند. |
int | numElement () تعداد عناصر موجود در نمای مسطح (1-D) تنسور را برمی گرداند. |
طولانی [] | |
رشته | toString () رشته ای را توصیف می کند که نوع و شکل Tensor را توصیف می کند. |
خالی | |
خالی | |
خالی | |
خالی | writeTo (ByteBuffer dst) داده های تنسور را در بافر داده شده بنویسید. |
خالی |
روشهای ارثی
روشهای عمومی
بولی عمومی booleanValue ()
مقدار را در یک تانسور Boolean
اسکالر برمی گرداند.
پرتاب می کند
IllegalArgumentException | اگر Tensor یک اسکالر بولی را نشان نمی دهد. |
---|
بایت عمومی [] bytesValue ()
مقدار را در یک تانسور String
اسکالر برمی گرداند.
پرتاب می کند
IllegalArgumentException | اگر Tensor یک اسکالر بولی را نشان نمی دهد. |
---|
خلا v عمومی نزدیک ()
منابع مرتبط با Tensor را آزاد کنید.
هشدار: این مورد باید برای همه تنسورهایی که توسط یک عمل مشتاقانه تولید نشده اند یا حافظه درز نمی کند ، فراخوانی شود.
شی Tensor پس از بازگشت close
دیگر قابل استفاده نیست.
کپی U عمومی به (U dst)
محتویات تنسور را در dst
کپی می کند و dst
برمی گرداند.
برای سنسورهای غیر اسکالر ، این روش محتوای تانسور اساسی را در یک آرایه جاوا کپی می کند. برای bytesValue()
اسکالر ، به جای آن از یکی از bytesValue()
های bytesValue()
، floatValue()
، doubleValue()
، intValue()
، longValue()
یا booleanValue()
استفاده کنید. نوع و شکل dst
باید با 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 با تانسور سازگار نباشد (به عنوان مثال انواع داده ها یا اشکال ناسازگار). |
---|
تانسور استاتیک عمومی <؟> ایجاد (شیj obj)
یک تنسور از یک شی ایجاد می کند که کلاس آن بررسی می شود تا مشخص شود نوع داده اساسی چیست.
پرتاب می کند
IllegalArgumentException | اگر obj با سیستم نوع TensorFlow سازگار نباشد. |
---|
Tensor استاتیک عمومی <T> ایجاد (نوع کلاس <T> ، شکل طولانی] ، داده ByteBuffer)
با استفاده از داده های موجود در بافر ، یک سنسور از هر نوع ایجاد کنید.
Tensor با شکل ارائه شده از هر نوع که داده های Tensor در data
مطابق مشخصات TensorFlow C API رمزگذاری شده است ، ایجاد می کند .
مولفه های
نوع | نوع عنصر تنسور ، به عنوان یک شی کلاس نشان داده می شود. |
---|---|
شکل | شکل تانسور |
داده ها | یک بافر حاوی داده های تانسور. |
پرتاب می کند
IllegalArgumentException | اگر نوع داده یا شکل تنسور با بافر سازگار نباشد |
---|
تانسور استاتیک عمومی <دوبل> ایجاد (شکل [طولانی ، داده DoubleBuffer)
با استفاده از داده های بافر داده شده ، یک Double
تنسور ایجاد کنید.
با کپی کردن عناصر از بافر (شروع از موقعیت فعلی آن) در تنسور ، یک تنسور با شکل داده شده ایجاد می کند. به عنوان مثال ، اگر shape = {2,3
} (که ماتریس 2x3 را نشان می دهد) ، در بافر باید 6 عنصر باقی مانده باشد که با این روش مصرف می شود.
مولفه های
شکل | شکل تانسور |
---|---|
داده ها | یک بافر حاوی داده های تنسور. |
پرتاب می کند
IllegalArgumentException | اگر شکل تنسور با بافر سازگار نباشد |
---|
تانسور استاتیک عمومی <طولانی> ایجاد (شکل [طولانی ، داده LongBuffer)
با استفاده از داده های بافر داده شده ، یک Tensor Long
ایجاد کنید.
با کپی کردن عناصر از بافر (شروع از موقعیت فعلی آن) در تنسور ، یک تنسور با شکل داده شده ایجاد می کند. به عنوان مثال ، اگر shape = {2,3
} (که ماتریس 2x3 را نشان می دهد) ، در بافر باید 6 عنصر باقی مانده باشد که با این روش مصرف می شود.
مولفه های
شکل | شکل تانسور |
---|---|
داده ها | یک بافر حاوی داده های تنسور. |
پرتاب می کند
IllegalArgumentException | اگر شکل تنسور با بافر سازگار نباشد |
---|
Tensor استاتیک عمومی <Integer> ایجاد (شکل طولانی [] ، داده های IntBuffer)
با استفاده از داده های موجود در بافر یک سنسور Integer
ایجاد کنید.
با کپی کردن عناصر از بافر (شروع از موقعیت فعلی آن) در تنسور ، یک تنسور با شکل داده شده ایجاد می کند. به عنوان مثال ، اگر shape = {2,3
} (که ماتریس 2x3 را نشان می دهد) ، در بافر باید 6 عنصر باقی مانده باشد که با این روش مصرف می شود.
مولفه های
شکل | شکل تانسور |
---|---|
داده ها | یک بافر حاوی داده های تنسور. |
پرتاب می کند
IllegalArgumentException | اگر شکل تنسور با بافر سازگار نباشد |
---|
Tensor static public <Float> create (long [] shape، FloatBuffer data)
یک Float
Tensor با داده های موجود در بافر ایجاد شده ایجاد کنید.
با کپی کردن عناصر از بافر (شروع از موقعیت فعلی آن) در تنسور ، یک تنسور با شکل داده شده ایجاد می کند. به عنوان مثال ، اگر shape = {2,3
} (که ماتریس 2x3 را نشان می دهد) ، در بافر باید 6 عنصر باقی مانده باشد که با این روش مصرف می شود.
مولفه های
شکل | شکل تانسور |
---|---|
داده ها | یک بافر حاوی داده های تنسور. |
پرتاب می کند
IllegalArgumentException | اگر شکل تنسور با بافر سازگار نباشد |
---|
Tensor استاتیک عمومی <T> ایجاد (نوع شی ، نوع کلاس <T>)
یک Tensor از یک شی Java ایجاد می کند.
Tensor
یک آرایه چند بعدی از عناصر یک مجموعه محدود از انواع است. همه اشیا Java جاوا را نمی توان به Tensor
تبدیل کرد. به طور خاص ، استدلال obj
باید یا یک بدوی (float ، double ، int ، long ، boolean ، byte) باشد یا یک آرایه چند بعدی از یکی از این موارد اولیه. type
آرگومان نحوه تفسیر اولین آرگومان را به عنوان یک نوع TensorFlow مشخص می کند. به عنوان مثال:
// Valid: A 64-bit integer scalar.
Tensor<Long> s = Tensor.create(42L, Long.class);
// Valid: A 3x2 matrix of floats.
float[][] matrix = new float[3][2];
Tensor<Float> m = Tensor.create(matrix, Float.class);
// Invalid: Will throw an IllegalArgumentException as an arbitrary Object
// does not fit into the TensorFlow type system.
Tensor<?> 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<Integer> x = Tensor.create(twoD, Integer.class);
String
-typed تنسور آرایه های چند بعدی از توالی بایت دلخواه هستند، بنابراین می توان از آرایه از مقداردهی اولیه byte[]
عناصر. به عنوان مثال: // Valid: A String tensor. Tensor<String> s = Tensor.create(new byte[]{1, 2, 3
, String.class); // Java Strings will need to be encoded into a byte-sequence. String mystring = "foo"; Tensors = 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 m = Tensor.create(matrix, String.class); }
مولفه های
اعتراض کردن | شی to تبدیل به Tensor<T> . توجه داشته باشید که آیا سازگار بودن آن با نوع T توسط سیستم نوع بررسی نمی شود. برای ایجاد Tensors بی خطر از Tensors استفاده کنید. |
---|---|
نوع | شی کلاس نمایانگر نوع T است. |
پرتاب می کند
IllegalArgumentException | اگر obj با سیستم نوع TensorFlow سازگار نباشد. |
---|
doubleValue دو عمومی ()
مقدار را در یک تانسور Double
برمی گرداند.
پرتاب می کند
IllegalArgumentException | اگر Tensor نشان دهنده یک اسکالر دوتایی نباشد. |
---|
سنسور عمومی <U> انتظار (نوع کلاس <U>)
این شی Tensor را با نوع Tensor<U>
برمی گرداند. این روش زمانی مفید است که مقداری از نوع Tensor<?>
.
مولفه های
نوع | هر آرایه (غیر پوستی) از نوع صحیح. |
---|
پرتاب می کند
IllegalArgumentException | اگر نوع داده واقعی این شی با نوع U مطابقت نداشته باشد. |
---|
float float floatValue ()
int intValue عمومی ()
مقدار را در یک تانسور عددی Integer
گرداند.
پرتاب می کند
IllegalArgumentException | اگر Tensor یک مقیاس int را نشان نمی دهد. |
---|
عمومی long longValue ()
مقدار را در یک تانسور اسکالر Long
برمی گرداند.
پرتاب می کند
IllegalArgumentException | اگر Tensor یک اسکالر بلند را نشان نمی دهد. |
---|
numBytes بین المللی ()
اندازه داده های سنسور را در بایت برمی گرداند.
ابعاد عمومی int ()
تعداد ابعاد (که بعضاً به آن درجه می گویند) تنسور را برمی گرداند.
برای مقیاس 0 ، 1 برای بردار ، 2 برای ماتریس ، 3 برای یک تانسور 3 بعدی و غیره خواهد بود.
numElements هیات عمومی ()
تعداد عناصر موجود در نمای مسطح (1-D) تنسور را برمی گرداند.
شکل عمومی [] شکل طولانی ()
شکل Tensor ، یعنی اندازه های هر بعد را برمی گرداند.
برمی گردد
- آرایه ای که در آن عنصر i به اندازه ابعاد i-th تنسور باشد.
رشته عمومی toString ()
رشته ای را توصیف می کند که نوع و شکل Tensor را توصیف می کند.
خلا v عمومی نوشتن به (LongBuffer dst)
خلا v عمومی نوشتن به (DoubleBuffer dst)
خلا v عمومی نوشتن به (IntBuffer dst)
خلا v عمومی نوشتن به (ByteBuffer dst)
داده های تنسور را در بافر داده شده بنویسید.
numBytes()
بایت را به ترتیب بایت بومی برای انواع اولیه در بافر کپی می کند.
مولفه های
dst | بافر مقصد |
---|
پرتاب می کند
BufferOverflowException | اگر فضای کافی در بافر داده شده برای داده های موجود در این سنسور وجود نداشته باشد |
---|