Tensor

تانسور کلاس نهایی عمومی

یک آرایه چند بعدی با تایپ ایستا که عناصر آن از نوع توصیف شده توسط T هستند.

نمونه‌های یک Tensor از نظر نخ ایمن نیستند .

اخطار: منابع مصرف شده توسط شی Tensor باید به صراحت با فراخوانی متد close() زمانی که شی دیگر مورد نیاز نیست آزاد شوند. به عنوان مثال، با استفاده از یک بلوک try-with-resources:

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

روش های عمومی

بولی
مقدار boolean ()
مقدار را در یک تانسور Boolean برمی‌گرداند.
بایت[]
بایت ارزش ()
مقدار یک تانسور String اسکالر را برمی‌گرداند.
باطل
بستن ()
منابع مرتبط با تنسور را آزاد کنید.
<U> U
copyTo (U dst)
محتویات تانسور را در dst کپی می کند و dst را برمی گرداند.
تانسور استاتیک <?>
ایجاد (object obj)
یک تانسور از یک شی ایجاد می کند که کلاس آن بازرسی می شود تا بفهمد نوع داده اصلی باید چه باشد.
استاتیک <T> تانسور <T>
ایجاد (نوع کلاس<T>، شکل طولانی[]، داده ByteBuffer)
یک تانسور از هر نوع با داده های بافر داده شده ایجاد کنید.
تانسور استاتیک <دوبل>
ایجاد (طول[] شکل، داده DoubleBuffer)
یک تانسور Double با داده های بافر داده شده ایجاد کنید.
تانسور ساکن <طولانی>
ایجاد (شکل طولانی[]، داده LongBuffer)
یک Long Tensor با داده های بافر داده شده ایجاد کنید.
تانسور ایستا <عدد صحیح>
ایجاد (شکل طولانی[]، داده IntBuffer)
یک تانسور Integer با داده های بافر داده شده ایجاد کنید.
تانسور استاتیک <Float>
ایجاد (شکل طولانی[]، داده FloatBuffer)
یک تانسور Float با داده های بافر داده شده ایجاد کنید.
استاتیک <T> تانسور <T>
ایجاد (شیء شیء، نوع کلاس<T>)
یک Tensor از یک شی جاوا ایجاد می کند.
نوع داده
نوع داده ()
DataType عناصر ذخیره شده در Tensor را برمی گرداند.
دو برابر کردن
DoubleValue ()
مقدار یک تانسور Double اسکالر را برمی‌گرداند.
<U> تانسور <U>
انتظار (نوع کلاس<U>)
این شی Tensor را با نوع Tensor&lt;U&gt; .
شناور
floatValue ()
مقدار یک تانسور Float اسکالر را برمی‌گرداند.
بین المللی
intValue ()
مقدار یک تانسور Integer اسکالر را برمی‌گرداند.
طولانی
longvalue ()
مقدار را در یک تانسور Long اسکالر برمی‌گرداند.
بین المللی
تعداد بایت ()
اندازه داده های تانسور را بر حسب بایت برمی گرداند.
بین المللی
ابعاد عددی ()
تعداد ابعاد (گاهی اوقات به عنوان رتبه از آن یاد می شود) تانسور را برمی گرداند.
بین المللی
numElements ()
تعداد عناصر موجود در نمای مسطح (1-D) تانسور را برمی‌گرداند.
طولانی[]
شکل ()
شکل Tensor، یعنی اندازه های هر بعد را برمی گرداند.
رشته
toString ()
رشته ای را برمی گرداند که نوع و شکل تانسور را توصیف می کند.
باطل
writeTo (LongBuffer dst)
داده های یک تانسور Long را در بافر داده شده بنویسید.
باطل
writeTo (DoubleBuffer dst)
داده های یک تانسور Double را در بافر داده شده بنویسید.
باطل
writeTo (IntBuffer dst)
داده های یک تانسور Integer را در بافر داده شده بنویسید.
باطل
writeTo (ByteBuffer dst)
داده های تانسور را در بافر داده شده بنویسید.
باطل
writeTo (FloatBuffer dst)
داده های یک تانسور Float را در بافر داده شده بنویسید.

روش های ارثی

روش های عمومی

ارزش بولین عمومی ()

مقدار را در یک تانسور Boolean برمی‌گرداند.

پرتاب می کند
IllegalArgumentException اگر تانسور یک اسکالر بولی را نشان ندهد.

بایت عمومی[] bytesValue ()

مقدار یک تانسور String اسکالر را برمی‌گرداند.

پرتاب می کند
IllegalArgumentException اگر تانسور یک اسکالر بولی را نشان ندهد.

بسته شدن فضای خالی عمومی ()

منابع مرتبط با تنسور را آزاد کنید.

اخطار: این باید برای همه تانسورهایی که توسط یک عملیات مشتاقانه تولید نشده‌اند، فراخوانی شود یا حافظه لو رفته باشد.

شی Tensor پس از بازگشت close دیگر قابل استفاده نیست.

عمومی U copyTo (U dst)

محتویات تانسور را در dst کپی می کند و dst را برمی گرداند.

برای تانسورهای غیر اسکالر، این روش محتویات تانسور زیرین را در یک آرایه جاوا کپی می کند. برای تانسورهای اسکالر، از یکی از 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);
 }
 

پارامترها
dst
پرتاب می کند
IllegalArgumentException اگر تانسور یک اسکالر است یا اگر dst با تانسور سازگار نیست (مثلاً انواع داده ها یا اشکال نامتناسب).

ایجاد تانسور ایستا عمومی <?> (Object Obj)

یک تانسور از یک شی ایجاد می کند که کلاس آن بازرسی می شود تا بفهمد نوع داده اصلی باید چه باشد.

پارامترها
obj
پرتاب می کند
IllegalArgumentException اگر obj با سیستم نوع TensorFlow سازگار نباشد.

ایجاد تانسور ایستا عمومی <T> (نوع کلاس<T>، شکل طولانی[]، داده بایت بافر)

یک تانسور از هر نوع با داده های بافر داده شده ایجاد کنید.

یک Tensor با شکل ارائه شده از هر نوع ایجاد می کند که در آن داده های تانسور مطابق با مشخصات TensorFlow C API در data کدگذاری شده است.

پارامترها
نوع نوع عنصر تانسور که به عنوان یک شی کلاس نمایش داده می شود.
شکل شکل تانسور
داده ها یک بافر حاوی داده های تانسور.
پرتاب می کند
IllegalArgumentException اگر نوع داده یا شکل تانسور با بافر سازگار نباشد

ایجاد تانسور استاتیک عمومی <دوبل> (شکل طولانی[]، داده DoubleBuffer)

یک تانسور Double با داده های بافر داده شده ایجاد کنید.

یک تانسور با شکل داده شده با کپی کردن عناصر از بافر (شروع از موقعیت فعلی آن) در تانسور ایجاد می کند. به عنوان مثال، اگر shape = {2,3} (که نشان دهنده یک ماتریس 2x3 است) پس بافر باید 6 عنصر باقی مانده باشد که با این روش مصرف می شود.

پارامترها
شکل شکل تانسور
داده ها یک بافر حاوی داده های تانسور.
پرتاب می کند
IllegalArgumentException اگر شکل تانسور با بافر سازگار نباشد

ایجاد تانسور استاتیک عمومی <Long> (شکل طولانی[]، داده LongBuffer)

یک Long Tensor با داده های بافر داده شده ایجاد کنید.

یک تانسور با شکل داده شده با کپی کردن عناصر از بافر (شروع از موقعیت فعلی آن) در تانسور ایجاد می کند. به عنوان مثال، اگر shape = {2,3} (که نشان دهنده یک ماتریس 2x3 است) پس بافر باید 6 عنصر باقی مانده باشد که با این روش مصرف می شود.

پارامترها
شکل شکل تانسور
داده ها یک بافر حاوی داده های تانسور.
پرتاب می کند
IllegalArgumentException اگر شکل تانسور با بافر سازگار نباشد

ایجاد تانسور استاتیک عمومی <Integer> (شکل طولانی[]، داده IntBuffer)

یک تانسور Integer با داده های بافر داده شده ایجاد کنید.

یک تانسور با شکل داده شده با کپی کردن عناصر از بافر (شروع از موقعیت فعلی آن) در تانسور ایجاد می کند. به عنوان مثال، اگر shape = {2,3} (که نشان دهنده یک ماتریس 2x3 است) پس بافر باید 6 عنصر باقی مانده باشد که با این روش مصرف می شود.

پارامترها
شکل شکل تانسور
داده ها یک بافر حاوی داده های تانسور.
پرتاب می کند
IllegalArgumentException اگر شکل تانسور با بافر سازگار نباشد

ایجاد تانسور ثابت عمومی <Float> (شکل طولانی[]، داده FloatBuffer)

یک تانسور Float با داده های بافر داده شده ایجاد کنید.

با کپی کردن عناصر از بافر (از موقعیت فعلی آن) در تانسور یک تانسور با شکل داده شده ایجاد می کند. به عنوان مثال، اگر shape = {2,3} (که نشان دهنده یک ماتریس 2x3 است) پس بافر باید 6 عنصر باقی مانده باشد که با این روش مصرف می شود.

پارامترها
شکل شکل تانسور
داده ها یک بافر حاوی داده های تانسور.
پرتاب می کند
IllegalArgumentException اگر شکل تانسور با بافر سازگار نباشد

ایجاد تانسور استاتیک عمومی <T> (نوع Objj، کلاس<T>)

یک Tensor از یک شی جاوا ایجاد می کند.

Tensor یک آرایه چند بعدی از عناصر از مجموعه محدودی از انواع است. همه اشیاء جاوا را نمی توان به 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);
 
تانسورهای 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 dataType ()

DataType عناصر ذخیره شده در Tensor را برمی گرداند.

دو برابر دو ارزش عمومی ()

مقدار را در یک تانسور Double اسکالر برمی‌گرداند.

پرتاب می کند
IllegalArgumentException اگر تانسور یک اسکالر دوگانه را نشان ندهد.

تانسور عمومی <U> انتظار (نوع کلاس<U>)

این شی Tensor را با نوع Tensor&lt;U&gt; . این روش زمانی مفید است که مقداری از نوع Tensor&lt;?&gt; .

پارامترها
نوع هر آرایه (غیر تهی) از نوع صحیح.
پرتاب می کند
IllegalArgumentException اگر نوع داده واقعی این شی با نوع U مطابقت نداشته باشد.

عمومی float floatValue ()

مقدار یک تانسور Float اسکالر را برمی‌گرداند.

پرتاب می کند
IllegalArgumentException اگر تانسور یک اسکالر شناور را نشان ندهد.

intValue عمومی ()

مقدار یک تانسور Integer اسکالر را برمی‌گرداند.

پرتاب می کند
IllegalArgumentException اگر تانسور یک اسکالر int را نشان ندهد.

عمومی طولانی ارزش طولانی ()

مقدار را در یک تانسور Long اسکالر برمی‌گرداند.

پرتاب می کند
IllegalArgumentException اگر تانسور یک اسکالر طولانی را نشان ندهد.

numBytes int عمومی ()

اندازه داده های تانسور را بر حسب بایت برمی گرداند.

عمومی int numDimensions ()

تعداد ابعاد (گاهی اوقات به عنوان رتبه از آن یاد می شود) تانسور را برمی گرداند.

0 برای یک اسکالر، 1 برای یک بردار، 2 برای یک ماتریس، 3 برای یک تانسور سه بعدی و غیره خواهد بود.

numElements int عمومی ()

تعداد عناصر موجود در نمای مسطح (1-D) تانسور را برمی‌گرداند.

شکل عمومی طولانی[] ()

شکل Tensor، یعنی اندازه های هر بعد را برمی گرداند.

برمی گرداند
  • آرایه ای که در آن عنصر i به اندازه بعد i تانسور است.

رشته عمومی toString ()

رشته ای را برمی گرداند که نوع و شکل تانسور را توصیف می کند.

public void writeTo (LongBuffer dst)

داده های یک تانسور Long را در بافر داده شده بنویسید.

عناصر numElements() را در بافر کپی می کند.

پارامترها
dst بافر مقصد
پرتاب می کند
BufferOverflowException اگر فضای کافی در بافر داده شده برای داده های این تانسور وجود نداشته باشد
IllegalArgumentException اگر نوع داده تانسور Long نباشد

public void writeTo (DoubleBuffer dst)

داده های یک تانسور Double را در بافر داده شده بنویسید.

عناصر numElements() را در بافر کپی می کند.

پارامترها
dst بافر مقصد
پرتاب می کند
BufferOverflowException اگر فضای کافی در بافر داده شده برای داده های این تانسور وجود نداشته باشد
IllegalArgumentException اگر نوع داده تانسور Double نباشد

public void writeTo (IntBuffer dst)

داده های یک تانسور Integer را در بافر داده شده بنویسید.

عناصر numElements() را در بافر کپی می کند.

پارامترها
dst بافر مقصد
پرتاب می کند
BufferOverflowException اگر فضای کافی در بافر داده شده برای داده های این تانسور وجود نداشته باشد
IllegalArgumentException اگر نوع داده تانسور Integer نباشد

public void writeTo (ByteBuffer dst)

داده های تانسور را در بافر داده شده بنویسید.

بایت های numBytes() را به ترتیب بایت های بومی برای انواع اولیه در بافر کپی می کند.

پارامترها
dst بافر مقصد
پرتاب می کند
BufferOverflowException اگر فضای کافی در بافر داده شده برای داده های این تانسور وجود نداشته باشد

public void writeTo (FloatBuffer dst)

داده های یک تانسور Float را در بافر داده شده بنویسید.

عناصر numElements() را در بافر کپی می کند.

پارامترها
dst بافر مقصد
پرتاب می کند
BufferOverflowException اگر فضای کافی در بافر داده شده برای داده های این تانسور وجود نداشته باشد
IllegalArgumentException اگر نوع داده تانسور Float نباشد