aliran tensor:: Tensor
#include <tensor.h>
Mewakili array nilai n-dimensi.
Ringkasan
Konstruktor dan Destruktor | |
---|---|
Tensor () Membuat tensor float 1 dimensi dengan 0 elemen. | |
Tensor (DataType type, const TensorShape & shape) | |
Tensor (Allocator *a, DataType type, const TensorShape & shape) Membuat tensor dengan type dan shape masukan, menggunakan pengalokasi a untuk mengalokasikan buffer yang mendasarinya. | |
Tensor (Allocator *a, DataType type, const TensorShape & shape, const AllocationAttributes & allocation_attr) Membuat tensor dengan type dan shape masukan, menggunakan pengalokasi a dan "allocation_attr" yang ditentukan untuk mengalokasikan buffer yang mendasarinya. | |
Tensor (DataType type, const TensorShape & shape, TensorBuffer *buf) Membuat tensor dengan tipe data input, bentuk, dan buf. | |
Tensor (DataType type) Membuat Tensor kosong dari tipe data tertentu. | |
Tensor (float scalar_value) | |
Tensor (double scalar_value) | |
Tensor (int32 scalar_value) | |
Tensor (uint32 scalar_value) | |
Tensor (uint16 scalar_value) | |
Tensor (uint8 scalar_value) | |
Tensor (int16 scalar_value) | |
Tensor (int8 scalar_value) | |
Tensor (tstring scalar_value) | |
Tensor (complex64 scalar_value) | |
Tensor (complex128 scalar_value) | |
Tensor (int64 scalar_value) | |
Tensor (uint64 scalar_value) | |
Tensor (bool scalar_value) | |
Tensor (qint8 scalar_value) | |
Tensor (quint8 scalar_value) | |
Tensor (qint16 scalar_value) | |
Tensor (quint16 scalar_value) | |
Tensor (qint32 scalar_value) | |
Tensor (bfloat16 scalar_value) | |
Tensor (Eigen::half scalar_value) | |
Tensor (ResourceHandle scalar_value) | |
Tensor (const char *scalar_value) | |
Tensor (const Tensor & other) Salin konstruktor. | |
Tensor ( Tensor && other) Pindahkan konstruktor. | |
Tensor (T *t) | |
~Tensor () |
Fungsi publik | |
---|---|
AllocatedBytes () const | size_t |
AsProtoField (TensorProto *proto) const | void Mengisi proto dengan *this . |
AsProtoTensorContent (TensorProto *proto) const | void |
BitcastFrom (const Tensor & other, DataType dtype, const TensorShape & shape) | Status Salin tensor lainnya ke tensor ini, bentuk ulang, dan tafsirkan ulang tipe data buffer. |
CopyFrom (const Tensor & other, const TensorShape & shape) TF_MUST_USE_RESULT | bool Salin tensor lainnya ke tensor ini dan bentuk ulang. |
DebugString (int num_values) const | std::string Ringkasan tensor yang dapat dibaca manusia dan cocok untuk proses debug. |
DebugString () const | std::string |
DeviceSafeDebugString () const | std::string |
FillDescription (TensorDescription *description) const | void Isi proto TensorDescription dengan metadata tentang tensor yang berguna untuk pemantauan dan debugging. |
FromProto (const TensorProto & other) TF_MUST_USE_RESULT | bool Parsing other dan buat tensornya. |
FromProto (Allocator *a, const TensorProto & other) TF_MUST_USE_RESULT | bool |
IsAligned () const | bool Mengembalikan nilai benar jika tensor ini sejajar. |
IsInitialized () const | bool Jika perlu, apakah Tensor ini sudah diinisialisasi? |
IsSameSize (const Tensor & b) const | bool |
NumElements () const | int64 Aksesor praktis untuk bentuk tensor. |
RefCountIsOne () const | bool |
SharesBufferWith (const Tensor & b) const | bool |
Slice (int64 dim0_start, int64 dim0_limit) const | Iris tensor ini sepanjang dimensi pertama. |
SubSlice (int64 index) const | Pilih subirisan dari tensor ini sepanjang dimensi pertama. |
SummarizeValue (int64 max_entries, bool print_v2) const | std::string Render nilai max_entries pertama di *this menjadi sebuah string. |
TotalBytes () const | size_t Mengembalikan perkiraan penggunaan memori tensor ini. |
UnsafeCopyFromInternal (const Tensor & other, DataType dtype, const TensorShape & shape) | void Seperti BitcastFrom, tetapi CHECK gagal jika ada prasyarat yang tidak terpenuhi. |
bit_casted_shaped (gtl::ArraySlice< int64 > new_sizes) | TTypes< T, NDIMS >:: Tensor Kembalikan data tensor ke Eigen::Tensor dengan bentuk baru yang ditentukan dalam new_sizes dan masukkan ke dtype T baru. |
bit_casted_shaped (gtl::ArraySlice< int64 > new_sizes) const | TTypes< T, NDIMS >::ConstTensor Kembalikan data tensor ke Eigen::Tensor dengan bentuk baru yang ditentukan dalam new_sizes dan masukkan ke dtype T baru. |
bit_casted_tensor () | TTypes< T, NDIMS >:: Tensor Mengembalikan data tensor ke Eigen::Tensor dengan ukuran yang sama tetapi dilemparkan secara bitwise ke dtype T yang ditentukan. |
bit_casted_tensor () const | TTypes< T, NDIMS >::ConstTensor Mengembalikan data tensor ke Eigen::Tensor dengan ukuran yang sama tetapi dilemparkan secara bitwise ke dtype T yang ditentukan. |
data () const | void * |
dim_size (int d) const | int64 Aksesor praktis untuk bentuk tensor. |
dims () const | int Aksesor praktis untuk bentuk tensor. |
dtype () const | DataType Mengembalikan tipe data. |
flat () | TTypes< T >::Flat Mengembalikan data tensor sebagai Eigen::Tensor dengan tipe data dan bentuk tertentu. |
flat () const | TTypes< T >::ConstFlat |
flat_inner_dims () | TTypes< T, NDIMS >:: Tensor Mengembalikan data sebagai Eigen::Tensor dengan dimensi NDIMS, menciutkan semua dimensi Tensor kecuali NDIMS-1 terakhir ke dalam dimensi pertama hasil. |
flat_inner_dims () const | TTypes< T, NDIMS >::ConstTensor |
flat_inner_outer_dims (int64 begin) | TTypes< T, NDIMS >:: Tensor |
flat_inner_outer_dims (int64 begin) const | TTypes< T, NDIMS >::ConstTensor |
flat_outer_dims () | TTypes< T, NDIMS >:: Tensor Mengembalikan data sebagai Eigen::Tensor dengan dimensi NDIMS, menciutkan semua dimensi Tensor kecuali NDIMS-1 pertama ke dalam dimensi terakhir dari hasil. |
flat_outer_dims () const | TTypes< T, NDIMS >::ConstTensor |
matrix () | TTypes< T >::Matrix |
matrix () const | TTypes< T >::ConstMatrix |
operator= (const Tensor & other) | Tensor & Tetapkan operator. Tensor ini berbagi penyimpanan dasar lainnya. |
operator= ( Tensor && other) | Tensor & Pindahkan operator. Lihat memindahkan konstruktor untuk detailnya. |
reinterpret_last_dimension () | TTypes< T, NDIMS >:: Tensor Mengembalikan data tensor ke Eigen::Tensor dengan elemen dimensi terakhir diubah menjadi elemen tunggal bertipe lebih besar. |
reinterpret_last_dimension () const | TTypes< T, NDIMS >::ConstTensor Mengembalikan data tensor ke Eigen::Tensor dengan elemen dimensi terakhir diubah menjadi elemen tunggal bertipe lebih besar. |
scalar () | TTypes< T >::Scalar |
scalar () const | TTypes< T >::ConstScalar |
shape () const | const TensorShape & Mengembalikan bentuk tensor. |
shaped (gtl::ArraySlice< int64 > new_sizes) | TTypes< T, NDIMS >:: Tensor |
shaped (gtl::ArraySlice< int64 > new_sizes) const | TTypes< T, NDIMS >::ConstTensor |
tensor () | TTypes< T, NDIMS >:: Tensor |
tensor () const | TTypes< T, NDIMS >::ConstTensor |
tensor_data () const | StringPiece Mengembalikan StringPiece yang memetakan buffer tensor saat ini. |
unaligned_flat () | TTypes< T >::UnalignedFlat |
unaligned_flat () const | TTypes< T >::UnalignedConstFlat |
unaligned_shaped (gtl::ArraySlice< int64 > new_sizes) | TTypes< T, NDIMS >::UnalignedTensor |
unaligned_shaped (gtl::ArraySlice< int64 > new_sizes) const | TTypes< T, NDIMS >::UnalignedConstTensor |
vec () | TTypes< T >::Vec Kembalikan data tensor sebagai Eigen::Tensor dengan tipe dan ukuran Tensor ini. |
vec () const | TTypes< T >::ConstVec Versi const dari semua metode di atas. |
Fungsi publik
AlokasiBytes
size_t AllocatedBytes() const
SebagaiProtoField
void AsProtoField( TensorProto *proto ) const
Mengisi proto
dengan *this
.
AsProtoField()
mengisi kolom berulang untuk proto.dtype()
, sementara AsProtoTensorContent()
mengkodekan konten dalam proto.tensor_content()
dalam bentuk yang ringkas.
SebagaiProtoTensorContent
void AsProtoTensorContent( TensorProto *proto ) const
BitcastDari
Status BitcastFrom( const Tensor & other, DataType dtype, const TensorShape & shape )
Salin tensor lainnya ke tensor ini, bentuk ulang, dan tafsirkan ulang tipe data buffer.
Jika Status::OK() dikembalikan, kedua tensor kini berbagi penyimpanan dasar yang sama.
Panggilan ini mengharuskan tensor other
serta tipe dan bentuk tertentu "kompatibel" (yaitu menempati jumlah byte yang sama).
Secara khusus:
bentuk.num_elements() * DataTypeSize(tipe)
harus sama
other.num_elements() * DataTypeSize(other.dtype())
Selain itu, fungsi ini memerlukan:
- DataTypeSize(lainnya.dtype()) != 0
- DataTypeSize(tipe) != 0
Jika salah satu persyaratan tidak terpenuhi, error::InvalidArgument dikembalikan.
SalinDari
bool CopyFrom( const Tensor & other, const TensorShape & shape ) TF_MUST_USE_RESULT
Salin tensor lainnya ke tensor ini dan bentuk ulang.
Tensor ini berbagi penyimpanan dasar lainnya. Mengembalikan true
jika other.shape()
memiliki jumlah elemen yang sama pada shape
yang diberikan.
DebugString
std::string DebugString( int num_values ) const
Ringkasan tensor yang dapat dibaca manusia dan cocok untuk proses debug.
DebugString
std::string DebugString() const
DeviceSafeDebugString
std::string DeviceSafeDebugString() const
IsiDeskripsi
void FillDescription( TensorDescription *description ) const
Isi proto TensorDescription
dengan metadata tentang tensor yang berguna untuk pemantauan dan debugging.
DariProto
bool FromProto( const TensorProto & other ) TF_MUST_USE_RESULT
Parsing other
dan buat tensornya.
Mengembalikan true
jika penguraian berhasil. Jika penguraian gagal, status *this
tidak berubah.
DariProto
bool FromProto( Allocator *a, const TensorProto & other ) TF_MUST_USE_RESULT
Sejajar
bool IsAligned() const
Mengembalikan nilai benar jika tensor ini sejajar.
Diinisialisasi
bool IsInitialized() const
Jika perlu, apakah Tensor ini sudah diinisialisasi?
Tensor elemen nol selalu dianggap diinisialisasi, meskipun Tensor tersebut belum pernah ditetapkan dan tidak memiliki alokasi memori apa pun.
AdalahUkuran yang Sama
bool IsSameSize( const Tensor & b ) const
NomorElemen
int64 NumElements() const
Aksesor praktis untuk bentuk tensor.
RefCountIsOne
bool RefCountIsOne() const
BagikanBufferDengan
bool SharesBufferWith( const Tensor & b ) const
Mengiris
Tensor Slice( int64 dim0_start, int64 dim0_limit ) const
Iris tensor ini sepanjang dimensi pertama.
Yaitu, tensor yang dikembalikan memenuhi return[i, ...] == this[dim0_start + i, ...]. Tensor yang dikembalikan berbagi buffer tensor yang mendasarinya dengan tensor ini.
CATATAN: Tensor yang dikembalikan mungkin tidak memenuhi persyaratan penyelarasan yang sama dengan tensor ini, bergantung pada bentuknya. Pemanggil harus memeriksa penyelarasan tensor yang dikembalikan sebelum memanggil metode tertentu yang memiliki persyaratan penyelarasan (misalnya, flat()
, tensor()
).
CATATAN: Saat diumpankan dengan tensor berdimensi N, metode ini akan mengembalikan tensor juga dengan dimensi N. Jika Anda ingin memilih sub tensor, lihat SubSlice.
MEMBUTUHKAN: dims()
>= 1 MEMBUTUHKAN: 0 <= dim0_start <= dim0_limit <= dim_size(0)
Subirisan
Tensor SubSlice( int64 index ) const
Pilih subirisan dari tensor ini sepanjang dimensi pertama.
Saat diumpankan dengan tensor berdimensi N, metode ini akan mengembalikan tensor dengan dimensi N-1, dengan tensor yang dikembalikan adalah subbagian dari tensor masukan sepanjang dimensi pertama. Dimensi N-1 dari tensor yang dikembalikan adalah dimensi N-1 terakhir dari tensor masukan.
CATATAN: Tensor yang dikembalikan mungkin tidak memenuhi persyaratan penyelarasan yang sama dengan tensor ini, bergantung pada bentuknya. Pemanggil harus memeriksa penyelarasan tensor yang dikembalikan sebelum memanggil metode tertentu yang memiliki persyaratan penyelarasan (misalnya, flat()
, tensor()
).
MEMBUTUHKAN: dims()
>= 1 MEMBUTUHKAN: 0 <= index < dim_size(0)
MeringkasNilai
std::string SummarizeValue( int64 max_entries, bool print_v2 ) const
Render nilai max_entries
pertama di *this
menjadi sebuah string.
Tensor
Tensor()
Membuat tensor float 1 dimensi dengan 0 elemen.
Tensor yang dikembalikan bukanlah skalar (bentuk {}), melainkan Tensor satu dimensi kosong (bentuk {0}, NumElements() == 0). Karena tidak memiliki elemen, maka tidak perlu diberi nilai dan diinisialisasi secara default ( IsInitialized() bernilai true). Jika hal ini tidak diinginkan, pertimbangkan untuk membuat skalar satu elemen yang memerlukan inisialisasi:
Tensor(DT_FLOAT, TensorShape({}))
Tensor
Tensor( DataType type, const TensorShape & shape )
Membuat Tensor dengan type
dan shape
tertentu.
Jika LogMemory::IsEnabled() alokasi dicatat berasal dari kernel dan langkah yang tidak diketahui. Memanggil konstruktor Tensor langsung dari dalam Op sudah tidak digunakan lagi: gunakan metode OpKernelConstruction/OpKernelContext mengalokasikan_* untuk mengalokasikan tensor baru, yang mencatat kernel dan langkah.
Buffer yang mendasarinya dialokasikan menggunakan CPUAllocator
.
Tensor
Tensor( Allocator *a, DataType type, const TensorShape & shape )
Membuat tensor dengan type
dan shape
masukan, menggunakan pengalokasi a
untuk mengalokasikan buffer yang mendasarinya.
Jika LogMemory::IsEnabled() alokasi dicatat berasal dari kernel dan langkah yang tidak diketahui. Memanggil konstruktor Tensor langsung dari dalam Op sudah tidak digunakan lagi: gunakan metode OpKernelConstruction/OpKernelContext mengalokasikan_* untuk mengalokasikan tensor baru, yang mencatat kernel dan langkah.
a
hidup lebih lama dari masa pakai Tensor ini.
Tensor
Tensor( Allocator *a, DataType type, const TensorShape & shape, const AllocationAttributes & allocation_attr )
Membuat tensor dengan type
dan shape
masukan, menggunakan pengalokasi a
dan "allocation_attr" yang ditentukan untuk mengalokasikan buffer yang mendasarinya.
Jika kernel dan langkahnya diketahui, alokasi_attr.allocation_will_be_logged harus disetel ke true dan LogMemory::RecordTensorAllocation harus dipanggil setelah tensor dibuat. Memanggil konstruktor Tensor langsung dari dalam Op sudah tidak digunakan lagi: gunakan metode OpKernelConstruction/OpKernelContext mengalokasikan_* untuk mengalokasikan tensor baru, yang mencatat kernel dan langkah.
a
hidup lebih lama dari masa pakai Tensor ini.
Tensor
Tensor( DataType type, const TensorShape & shape, TensorBuffer *buf )
Membuat tensor dengan tipe data input, bentuk, dan buf.
Mengakuisisi referensi pada buf milik Tensor ini.
Tensor
Tensor( DataType type )
Membuat Tensor kosong dari tipe data tertentu.
Seperti Tensor() , mengembalikan Tensor 1 dimensi, 0 elemen dengan IsInitialized() mengembalikan True. Lihat dokumentasi Tensor() untuk mengetahui detailnya.
Tensor
Tensor( float scalar_value )
Tensor
Tensor( double scalar_value )
Tensor
Tensor( int32 scalar_value )
Tensor
Tensor( uint32 scalar_value )
Tensor
Tensor( uint16 scalar_value )
Tensor
Tensor( uint8 scalar_value )
Tensor
Tensor( int16 scalar_value )
Tensor
Tensor( int8 scalar_value )
Tensor
Tensor( tstring scalar_value )
Tensor
Tensor( complex64 scalar_value )
Tensor
Tensor( complex128 scalar_value )
Tensor
Tensor( int64 scalar_value )
Tensor
Tensor( uint64 scalar_value )
Tensor
Tensor( bool scalar_value )
Tensor
Tensor( qint8 scalar_value )
Tensor
Tensor( quint8 scalar_value )
Tensor
Tensor( qint16 scalar_value )
Tensor
Tensor( quint16 scalar_value )
Tensor
Tensor( qint32 scalar_value )
Tensor
Tensor( bfloat16 scalar_value )
Tensor
Tensor( Eigen::half scalar_value )
Tensor
Tensor( ResourceHandle scalar_value )
Tensor
Tensor( const char *scalar_value )
Tensor
Tensor( Tensor && other )
Pindahkan konstruktor.
Setelah panggilan ini,
Tensor
Tensor( T *t )=delete
TotalByte
size_t TotalBytes() const
Mengembalikan perkiraan penggunaan memori tensor ini.
Salinan Tidak AmanDariInternal
void UnsafeCopyFromInternal( const Tensor & other, DataType dtype, const TensorShape & shape )
Seperti BitcastFrom, tetapi CHECK gagal jika ada prasyarat yang tidak terpenuhi.
Tidak digunakan lagi. Gunakan BitcastFrom sebagai gantinya dan periksa Status yang dikembalikan.
bit_casted_shape
TTypes< T, NDIMS >::Tensor bit_casted_shaped( gtl::ArraySlice< int64 > new_sizes )
Kembalikan data tensor ke Eigen::Tensor
dengan bentuk baru yang ditentukan dalam new_sizes
dan masukkan ke dtype T
baru.
Menggunakan bitcast berguna untuk operasi pemindahan dan penyalinan. Bitcast yang diizinkan adalah satu-satunya perbedaan dari shaped()
.
bit_casted_shape
TTypes< T, NDIMS >::ConstTensor bit_casted_shaped( gtl::ArraySlice< int64 > new_sizes ) const
Kembalikan data tensor ke Eigen::Tensor
dengan bentuk baru yang ditentukan dalam new_sizes
dan masukkan ke dtype T
baru.
Menggunakan bitcast berguna untuk operasi pemindahan dan penyalinan. Bitcast yang diizinkan adalah satu-satunya perbedaan dari shaped()
.
bit_casted_tensor
TTypes< T, NDIMS >::Tensor bit_casted_tensor()
Mengembalikan data tensor ke Eigen::Tensor
dengan ukuran yang sama tetapi dilemparkan secara bitwise ke dtype T
yang ditentukan.
Menggunakan bitcast berguna untuk operasi pemindahan dan penyalinan. CATATAN: ini sama dengan tensor()
kecuali bitcast diperbolehkan.
bit_casted_tensor
TTypes< T, NDIMS >::ConstTensor bit_casted_tensor() const
Mengembalikan data tensor ke Eigen::Tensor
dengan ukuran yang sama tetapi dilemparkan secara bitwise ke dtype T
yang ditentukan.
Menggunakan bitcast berguna untuk operasi pemindahan dan penyalinan. CATATAN: ini sama dengan tensor()
kecuali bitcast diperbolehkan.
data
void * data() const
dim_size
int64 dim_size( int d ) const
Aksesor praktis untuk bentuk tensor.
meredup
int dims() const
Aksesor praktis untuk bentuk tensor.
Untuk semua pengakses bentuk, lihat komentar untuk metode TensorShape
yang relevan di tensor_shape.h
.
tipe
DataType dtype() const
Mengembalikan tipe data.
datar
TTypes< T >::Flat flat()
Mengembalikan data tensor sebagai Eigen::Tensor
dengan tipe data dan bentuk tertentu.
Metode ini memungkinkan Anda mengakses data dengan dimensi dan ukuran pilihan Anda. Anda tidak perlu mengetahui jumlah dimensi Tensor untuk memanggilnya. Namun, mereka CHECK
apakah jenisnya cocok dan dimensi yang diminta membuat Eigen::Tensor
dengan jumlah elemen yang sama dengan tensor.
Contoh:
typedef float T; Tensor my_ten(...built with Shape{planes: 4, rows: 3, cols: 5}...); // 1D Eigen::Tensor, size 60: auto flat = my_ten.flat(); // 2D Eigen::Tensor 12 x 5: auto inner = my_ten.flat_inner_dims (); // 2D Eigen::Tensor 4 x 15: auto outer = my_ten.shaped ({4, 15}); // CHECK fails, bad num elements: auto outer = my_ten.shaped ({4, 8}); // 3D Eigen::Tensor 6 x 5 x 2: auto weird = my_ten.shaped ({6, 5, 2}); // CHECK fails, type mismatch: auto bad = my_ten.flat ();
flat
TTypes< T >::ConstFlat flat() const
flat_inner_dims
TTypes< T, NDIMS >::Tensor flat_inner_dims()
flat_inner_dims
TTypes< T, NDIMS >::ConstTensor flat_inner_dims() const
flat_inner_outer_dims
TTypes< T, NDIMS >::Tensor flat_inner_outer_dims( int64 begin )
Mengembalikan data sebagai Eigen::Tensor dengan dimensi NDIMS, menciutkan dimensi Tensor 'mulai' pertama ke dalam dimensi pertama hasil dan dimensi Tensor dari dims() - 'mulai' - NDIMS terakhir ke dalam dimensi terakhir dari hasil hasil.
Jika 'mulai' < 0 maka |'mulai'| dimensi terdepan ukuran 1 akan ditambahkan. Jika 'begin' + NDIMS > dims() maka 'begin' + NDIMS - dims() dimensi akhir ukuran 1 akan ditambahkan.
flat_inner_outer_dims
TTypes< T, NDIMS >::ConstTensor flat_inner_outer_dims( int64 begin ) const
flat_outer_dims
TTypes< T, NDIMS >::Tensor flat_outer_dims()
flat_outer_dims
TTypes< T, NDIMS >::ConstTensor flat_outer_dims() const
matriks
TTypes< T >::Matrix matrix()
matriks
TTypes< T >::ConstMatrix matrix() const
operator=
Tensor & operator=( const Tensor & other )
Tetapkan operator. Tensor ini berbagi penyimpanan dasar lainnya.
operator=
Tensor & operator=( Tensor && other )
Pindahkan operator. Lihat memindahkan konstruktor untuk detailnya.
menafsirkan ulang_dimensi_terakhir
TTypes< T, NDIMS >::Tensor reinterpret_last_dimension()
Mengembalikan data tensor ke Eigen::Tensor
dengan elemen dimensi terakhir diubah menjadi elemen tunggal bertipe lebih besar.
Misalnya, ini berguna untuk kernel yang dapat memperlakukan tensor NCHW_VECT_C int8 sebagai tensor NCHW int32. Sizeof(T) harus sama dengan ukuran tipe elemen asli * jumlah elemen dalam dimensi terakhir asli. NDIMS harus lebih kecil 1 dari jumlah dimensi aslinya.
menafsirkan ulang_dimensi_terakhir
TTypes< T, NDIMS >::ConstTensor reinterpret_last_dimension() const
Mengembalikan data tensor ke Eigen::Tensor
dengan elemen dimensi terakhir diubah menjadi elemen tunggal bertipe lebih besar.
Misalnya, ini berguna untuk kernel yang dapat memperlakukan tensor NCHW_VECT_C int8 sebagai tensor NCHW int32. Sizeof(T) harus sama dengan ukuran tipe elemen asli * jumlah elemen dalam dimensi terakhir asli. NDIMS harus lebih kecil 1 dari jumlah dimensi aslinya.
skalar
TTypes< T >::Scalar scalar()
skalar
TTypes< T >::ConstScalar scalar() const
membentuk
const TensorShape & shape() const
Mengembalikan bentuk tensor.
berbentuk
TTypes< T, NDIMS >::Tensor shaped( gtl::ArraySlice< int64 > new_sizes )
berbentuk
TTypes< T, NDIMS >::ConstTensor shaped( gtl::ArraySlice< int64 > new_sizes ) const
tensor
TTypes< T, NDIMS >::Tensor tensor()
tensor
TTypes< T, NDIMS >::ConstTensor tensor() const
tensor_data
StringPiece tensor_data() const
Mengembalikan StringPiece yang memetakan buffer tensor saat ini.
StringPiece yang dikembalikan mungkin menunjuk ke lokasi memori pada perangkat yang tidak dapat ditangani langsung oleh CPU.
CATATAN: Buffer tensor yang mendasarinya dihitung ulang, sehingga masa pakai konten yang dipetakan oleh StringPiece cocok dengan masa pakai buffer; penelepon harus mengatur untuk memastikan buffer tidak hancur saat StringPiece masih digunakan.
MEMBUTUHKAN: DataTypeCanUseMemcpy(dtype()) .
tidak selaras_datar
TTypes< T >::UnalignedFlat unaligned_flat()
tidak selaras_datar
TTypes< T >::UnalignedConstFlat unaligned_flat() const
tidak selaras_berbentuk
TTypes< T, NDIMS >::UnalignedTensor unaligned_shaped( gtl::ArraySlice< int64 > new_sizes )
tidak selaras_berbentuk
TTypes< T, NDIMS >::UnalignedConstTensor unaligned_shaped( gtl::ArraySlice< int64 > new_sizes ) const
vektor
TTypes< T >::Vec vec()
Kembalikan data tensor sebagai Eigen::Tensor dengan tipe dan ukuran Tensor ini.
Gunakan metode ini ketika Anda mengetahui tipe data dan jumlah dimensi Tensor dan Anda ingin Eigen::Tensor otomatis berukuran sesuai ukuran Tensor. Pemeriksaan implementasi gagal jika jenis atau ukuran tidak cocok.
Contoh:
typedef float T; Tensor my_mat(...built with Shape{rows: 3, cols: 5}...); auto mat = my_mat.matrix(); // 2D Eigen::Tensor, 3 x 5. auto mat = my_mat.tensor (); // 2D Eigen::Tensor, 3 x 5. auto vec = my_mat.vec (); // CHECK fails as my_mat is 2D. auto vec = my_mat.tensor (); // CHECK fails as my_mat is 2D. auto mat = my_mat.matrix ();// CHECK fails as type mismatch.
vec
TTypes< T >::ConstVec vec() const
Versi const dari semua metode di atas.
~ Tensor
~Tensor()