tensorflow:: Tensor

#include <tensor.h>

n boyutlu bir değer dizisini temsil eder.

Özet

Yapıcılar ve Yıkıcılar

Tensor ()
1 boyutlu, 0 elemanlı bir kayan noktalı tensör oluşturur.
Tensor (DataType type, const TensorShape & shape)
Verilen type ve shape bir Tensor oluşturur.
Tensor (Allocator *a, DataType type, const TensorShape & shape)
Verilen girdi type ve shape bir tensör oluşturur ve altta yatan arabelleği ayırmak için a ayırıcısını kullanır.
Tensor (Allocator *a, DataType type, const TensorShape & shape, const AllocationAttributes & allocation_attr)
Belirtilen "allocation_attr" özniteliğini ve a ayırıcısını kullanarak, giriş type ve shape bir tensör oluşturur ve altta yatan arabelleği tahsis eder.
Tensor (DataType type)
Verilen veri türünde boş bir Tensor oluşturur.
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 (string 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)
Kopyalama kurucu fonksiyonu.
Tensor ( Tensor && other)
Yapıcıyı taşı.
~Tensor ()

Kamusal işlevler

AllocatedBytes () const
size_t
AsProtoField (TensorProto *proto) const
void
proto *this doldurur.
AsProtoTensorContent (TensorProto *proto) const
void
BitcastFrom (const Tensor & other, DataType dtype, const TensorShape & shape)
Diğer tensörü bu tensöre kopyalayın, yeniden şekillendirin ve arabelleğin veri türünü yeniden yorumlayın.
CopyFrom (const Tensor & other, const TensorShape & shape) TF_MUST_USE_RESULT
bool
Diğer tensörü bu tensörün içine kopyalayın ve şeklini değiştirin.
DebugString (int num_values) const
string
Tensorun insan tarafından okunabilir, hata ayıklamaya uygun bir özeti.
DebugString () const
string
DeviceSafeDebugString () const
string
FillDescription (TensorDescription *description) const
void
TensorDescription proto'sunu, izleme ve hata ayıklama için yararlı olan tensör hakkındaki meta verilerle doldurun.
FromProto (const TensorProto & other) TF_MUST_USE_RESULT
bool
other ayrıştırın ve tensörü oluşturun.
FromProto (Allocator *a, const TensorProto & other) TF_MUST_USE_RESULT
bool
IsAligned () const
bool
Bu tensör hizalanmışsa true değerini döndürür.
IsInitialized () const
bool
Gerekirse, bu Tensor başlatıldı mı?
IsSameSize (const Tensor & b) const
bool
NumElements () const
int64
Tensör şekli için kolaylık sağlayan erişim aracı.
SharesBufferWith (const Tensor & b) const
bool
Slice (int64 dim0_start, int64 dim0_limit) const
Bu tensörü 1. boyut boyunca dilimleyin.
SubSlice (int64 index) const
Bu tensörden 1. boyut boyunca bir alt dilim seçin.
SummarizeValue (int64 max_entries, bool print_v2) const
string
*this içindeki ilk max_entries değerini bir dizeye dönüştürün.
TotalBytes () const
size_t
Bu tensörün tahmini bellek kullanımını döndürür.
UnsafeCopyFromInternal (const Tensor & other, DataType dtype, const TensorShape & shape)
void
BitcastFrom'a benzer, ancak ön koşullardan herhangi biri karşılanmazsa CHECK başarısız olur.
bit_casted_shaped (gtl::ArraySlice< int64 > new_sizes)
TTypes< T, NDIMS >:: Tensor
Tensor verilerini, new_sizes belirtilen yeni şekle sahip bir Eigen::Tensor döndürün ve yeni bir veri türü olan T dönüştürün.
bit_casted_shaped (gtl::ArraySlice< int64 > new_sizes) const
TTypes< T, NDIMS >::ConstTensor
Tensor verilerini, new_sizes belirtilen yeni şekle sahip bir Eigen::Tensor döndürün ve yeni bir veri türü olan T dönüştürün.
bit_casted_tensor ()
TTypes< T, NDIMS >:: Tensor
Tensor verilerini, aynı boyutta ancak belirtilen veri türü T bit düzeyinde dönüştürülmüş bir Eigen::Tensor döndürün.
bit_casted_tensor () const
TTypes< T, NDIMS >::ConstTensor
Tensor verilerini, aynı boyutta ancak belirtilen veri türü T bit düzeyinde dönüştürülmüş bir Eigen::Tensor döndürün.
dim_size (int d) const
int64
Tensör şekli için kolaylık sağlayan erişim aracı.
dims () const
int
Tensör şekli için kolaylık sağlayan erişim aracı.
dtype () const
DataType
Veri türünü döndürür.
flat ()
TTypes< T >::Flat
Tensor verilerini, belirtilen veri türünde ve şekilde bir Eigen::Tensor olarak döndürün.
flat () const
TTypes< T >::ConstFlat
flat_inner_dims ()
TTypes< T, NDIMS >:: Tensor
Verileri, son NDIMS-1 boyutu hariç tüm Tensor boyutlarını sonucun ilk boyutuna birleştirerek, NDIMS boyutlu bir Eigen::Tensor olarak döndürür.
flat_inner_dims () const
TTypes< T, NDIMS >::ConstTensor
flat_inner_outer_dims (int64 begin)
TTypes< T, NDIMS >:: Tensor
Verileri NDIMS boyutlu bir Eigen::Tensor olarak döndürür; ilk 'begin' Tensor boyutlarını sonucun ilk boyutuna , son dims() - 'begin' - NDIMS boyutlarını ise sonucun son boyutuna birleştirir.
flat_inner_outer_dims (int64 begin) const
TTypes< T, NDIMS >::ConstTensor
flat_outer_dims ()
TTypes< T, NDIMS >:: Tensor
Verileri, NDIMS boyutlu bir Eigen::Tensor olarak döndürür; ilk NDIMS-1 boyutu hariç tüm Tensor boyutlarını sonucun son boyutuna birleştirir.
flat_outer_dims () const
TTypes< T, NDIMS >::ConstTensor
matrix ()
TTypes< T >::Matrix
matrix () const
TTypes< T >::ConstMatrix
operator= (const Tensor & other)
Atama operatörü. Bu tensör, diğerinin temel depolama alanını paylaşıyor.
operator= ( Tensor && other)
Taşıma operatörü. Ayrıntılar için taşıma yapıcı fonksiyonuna bakın.
reinterpret_last_dimension ()
TTypes< T, NDIMS >:: Tensor
Tensor verilerini, son boyut elemanları daha büyük bir türün tek elemanlarına dönüştürülmüş bir Eigen::Tensor döndürün.
reinterpret_last_dimension () const
TTypes< T, NDIMS >::ConstTensor
Tensor verilerini, son boyut elemanları daha büyük bir türün tek elemanlarına dönüştürülmüş bir Eigen::Tensor döndürün.
scalar ()
TTypes< T >::Scalar
Tensor verilerini sabit boyutlu 1'li bir TensorMap olarak döndürün: TensorMap > .
scalar () const
TTypes< T >::ConstScalar
shape () const
const TensorShape &
Tensörün şeklini döndürür.
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
Geçerli tensörün arabelleğini eşleyen bir StringPiece döndürür.
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
Tensor verilerini, bu Tensor türü ve boyutlarıyla birlikte bir Eigen::Tensor olarak döndürün.
vec () const
TTypes< T >::ConstVec
Yukarıdaki tüm yöntemlerin sabit (const) sürümleri.

Kamusal işlevler

Tahsis EdilenBaytlar

size_t AllocatedBytes() const 

AsProtoField

void AsProtoField(
  TensorProto *proto
) const 

proto *this doldurur.

AsProtoField() , proto.dtype() için tekrarlanan alanı doldururken, AsProtoTensorContent() ise proto.tensor_content() içindeki içeriği kompakt bir biçimde kodlar.

AsProtoTensorContent

void AsProtoTensorContent(
  TensorProto *proto
) const 

BitcastFrom

Status BitcastFrom(
  const Tensor & other,
  DataType dtype,
  const TensorShape & shape
)

Diğer tensörü bu tensöre kopyalayın, yeniden şekillendirin ve arabelleğin veri türünü yeniden yorumlayın.

Eğer Status::OK() döndürülürse, iki tensör artık aynı temel depolama alanını paylaşıyor demektir.

Bu çağrı, other tensörün ve verilen tür ve şeklin "uyumlu" olmasını (yani aynı sayıda bayt yer kaplamasını) gerektirir.

Özellikle:

şekil.eleman sayısı() * VeriTürüBoyutu(tür)

eşit olmalıdır

diğer.num_elements() * VeriTürüBoyutu(diğer.dtype())

Ayrıca, bu işlev şunları gerektirir:

  • VeriTipiBoyutu(diğer.veritipi()) != 0
  • VeriTipiBoyutu(tür) != 0

Gereksinimlerden herhangi biri karşılanmazsa, errors::InvalidArgument hatası döndürülür.

Kopyala

bool CopyFrom(
  const Tensor & other,
  const TensorShape & shape
) TF_MUST_USE_RESULT

Diğer tensörü bu tensörün içine kopyalayın ve şeklini değiştirin.

Bu tensör, diğerinin temel depolama alanını paylaşır. other.shape() in verilen shape sahip eleman sayısıyla aynı sayıda elemana sahip olması durumunda true döndürür.

Hata Ayıklama Dizisi

string DebugString(
  int num_values
) const 

Tensorun insan tarafından okunabilir, hata ayıklamaya uygun bir özeti.

Hata Ayıklama Dizisi

string DebugString() const 

AygıtGüvenliHata AyıklamaDizisi

string DeviceSafeDebugString() const 

Açıklamayı Doldur

void FillDescription(
  TensorDescription *description
) const 

TensorDescription proto'sunu, izleme ve hata ayıklama için yararlı olan tensör hakkındaki meta verilerle doldurun.

FromProto

bool FromProto(
  const TensorProto & other
) TF_MUST_USE_RESULT

other ayrıştırın ve tensörü oluşturun.

Ayrıştırma başarılı olursa true değerini döndürür. Ayrıştırma başarısız olursa, *this durumu değişmez.

FromProto

bool FromProto(
  Allocator *a,
  const TensorProto & other
) TF_MUST_USE_RESULT

Hizalanmış

bool IsAligned() const 

Bu tensör hizalanmışsa true değerini döndürür.

Başlatıldı mı?

bool IsInitialized() const 

Gerekirse, bu Tensor başlatıldı mı?

Sıfır elemanlı tensörler, kendilerine hiçbir değer atanmamış veya bellek tahsis edilmemiş olsa bile her zaman başlatılmış olarak kabul edilir.

Aynı Boyuttadır

bool IsSameSize(
  const Tensor & b
) const 

Öğe Sayısı

int64 NumElements() const 

Tensör şekli için kolaylık sağlayan erişim aracı.

Paylaşım Tamponu ile

bool SharesBufferWith(
  const Tensor & b
) const 

Dilim

Tensor Slice(
  int64 dim0_start,
  int64 dim0_limit
) const 

Bu tensörü 1. boyut boyunca dilimleyin.

Yani, döndürülen tensör, returned[i, ...] == this[dim0_start + i, ...] koşulunu sağlıyor. Döndürülen tensör, bu tensörle aynı temel tensör arabelleğini paylaşıyor.

NOT: Döndürülen tensör, şekline bağlı olarak bu tensörle aynı hizalama gereksinimini karşılamayabilir. Çağıran, hizalama gereksinimi olan belirli yöntemleri (örneğin, flat() , tensor() ) çağırmadan önce döndürülen tensörün hizalamasını kontrol etmelidir.

NOT: N boyutlu bir tensörle beslendiğinde, bu yöntem de N boyutlu bir tensör döndürür. Bir alt tensör seçmek istiyorsanız, SubSlice yöntemine bakın.

GEREKLİLİKLER: dims() >= 1 GEREKLİLİKLER: 0 <= dim0_start <= dim0_limit <= dim_size(0)

Alt Dilim

Tensor SubSlice(
  int64 index
) const 

Bu tensörden 1. boyut boyunca bir alt dilim seçin.

Bu yönteme N boyutlu bir tensör verildiğinde, N-1 boyutlu bir tensör döndürür; döndürülen tensör, giriş tensörünün ilk boyutu boyunca bir alt dilimidir. Döndürülen tensörün N-1 boyutu, giriş tensörünün son N-1 boyutudur.

NOT: Döndürülen tensör, şekline bağlı olarak bu tensörle aynı hizalama gereksinimini karşılamayabilir. Çağıran, hizalama gereksinimi olan belirli yöntemleri (örneğin, flat() , tensor() ) çağırmadan önce döndürülen tensörün hizalamasını kontrol etmelidir.

GEREKLİLİKLER: dims() >= 1 GEREKLİLİKLER: 0 <= dim0_start < dim_size(0)

Değeri Özetle

string SummarizeValue(
  int64 max_entries,
  bool print_v2
) const 

*this içindeki ilk max_entries değerini bir dizeye dönüştürün.

Tensör

 Tensor()

1 boyutlu, 0 elemanlı bir kayan noktalı tensör oluşturur.

Döndürülen Tensor bir skalar (şekil {}) değil, bunun yerine boş bir tek boyutlu Tensor'dur (şekil {0}, NumElements() == 0). Elemanı olmadığı için bir değer atanmasına gerek yoktur ve varsayılan olarak başlatılır ( IsInitialized() true). Bu istenmiyorsa, başlatma gerektiren tek elemanlı bir skalar oluşturmayı düşünün:

Tensor(DT_FLOAT, TensorShape({}))

      

Tensor

 Tensor(
  DataType type,
  const TensorShape & shape
)

Verilen type ve shape bir Tensor oluşturur.

LogMemory::IsEnabled() etkinleştirilmişse, tahsis işlemi bilinmeyen bir çekirdek ve adımdan geldiği şeklinde kaydedilir. Bir Op içinden doğrudan Tensor yapıcıyı çağırmak önerilmez: yeni bir tensör tahsis etmek için OpKernelConstruction/OpKernelContext allocate_* yöntemlerini kullanın; bu yöntemler çekirdeği ve adımı kaydeder.

Temel arabellek, bir CPUAllocator kullanılarak tahsis edilir.

Tensör

 Tensor(
  Allocator *a,
  DataType type,
  const TensorShape & shape
)

Verilen girdi type ve shape bir tensör oluşturur ve altta yatan arabelleği ayırmak için a ayırıcısını kullanır.

LogMemory::IsEnabled() etkinleştirilmişse, tahsis işlemi bilinmeyen bir çekirdek ve adımdan geldiği şeklinde kaydedilir. Bir Op içinden doğrudan Tensor yapıcıyı çağırmak önerilmez: yeni bir tensör tahsis etmek için OpKernelConstruction/OpKernelContext allocate_* yöntemlerini kullanın; bu yöntemler çekirdeği ve adımı kaydeder.

Bu Tensor'un ömründen daha uzun süre varlığını sürdürmesi a .

Tensör

 Tensor(
  Allocator *a,
  DataType type,
  const TensorShape & shape,
  const AllocationAttributes & allocation_attr
)

Belirtilen "allocation_attr" özniteliğini ve a ayırıcısını kullanarak, giriş type ve shape bir tensör oluşturur ve altta yatan arabelleği tahsis eder.

Çekirdek ve adım biliniyorsa, allocation_attr.allocation_will_be_logged değeri true olarak ayarlanmalı ve tensör oluşturulduktan sonra LogMemory::RecordTensorAllocation çağrılmalıdır. Bir Op içinden doğrudan Tensor yapıcıyı çağırmak önerilmez: Çekirdek ve adımı kaydeden yeni bir tensör ayırmak için OpKernelConstruction/OpKernelContext allocate_* yöntemlerini kullanın.

Bu Tensor'un ömründen daha uzun süre varlığını sürdürmesi a .

Tensör

 Tensor(
  DataType type
)

Verilen veri türünde boş bir Tensor oluşturur.

Tensor() gibi, IsInitialized() metodu True değerini döndüren 1 boyutlu, 0 elemanlı bir Tensor döndürür. Ayrıntılar için Tensor() dokümantasyonuna bakın.

Tensör

 Tensor(
  float scalar_value
)

Tensör

 Tensor(
  double scalar_value
)

Tensör

 Tensor(
  int32 scalar_value
)

Tensör

 Tensor(
  uint32 scalar_value
)

Tensör

 Tensor(
  uint16 scalar_value
)

Tensör

 Tensor(
  uint8 scalar_value
)

Tensör

 Tensor(
  int16 scalar_value
)

Tensör

 Tensor(
  int8 scalar_value
)

Tensör

 Tensor(
  string scalar_value
)

Tensör

 Tensor(
  complex64 scalar_value
)

Tensör

 Tensor(
  complex128 scalar_value
)

Tensör

 Tensor(
  int64 scalar_value
)

Tensör

 Tensor(
  uint64 scalar_value
)

Tensör

 Tensor(
  bool scalar_value
)

Tensör

 Tensor(
  qint8 scalar_value
)

Tensör

 Tensor(
  quint8 scalar_value
)

Tensör

 Tensor(
  qint16 scalar_value
)

Tensör

 Tensor(
  quint16 scalar_value
)

Tensör

 Tensor(
  qint32 scalar_value
)

Tensör

 Tensor(
  bfloat16 scalar_value
)

Tensör

 Tensor(
  Eigen::half scalar_value
)

Tensör

 Tensor(
  ResourceHandle scalar_value
)

Tensör

 Tensor(
  const char *scalar_value
)

Tensör

 Tensor(
  const Tensor & other
)

Kopyalama kurucu fonksiyonu.

Tensör

 Tensor(
  Tensor && other
)

Yapıcıyı taşı.

Bu görüşmenin ardından, Güvenli bir şekilde yok edilebilir ve kendisine atama yapılabilir, ancak üzerindeki diğer çağrılar (örneğin şekil manipülasyonu) geçerli değildir.

ToplamBayt

size_t TotalBytes() const 

Bu tensörün tahmini bellek kullanımını döndürür.

UnsafeCopyFromInternal

void UnsafeCopyFromInternal(
  const Tensor & other,
  DataType dtype,
  const TensorShape & shape
)

BitcastFrom'a benzer, ancak ön koşullardan herhangi biri karşılanmazsa CHECK başarısız olur.

Kullanımdan kaldırıldı. Bunun yerine BitcastFrom kullanın ve döndürülen Durumu kontrol edin.

bit_dönüştürülmüş_şekilli

TTypes< T, NDIMS >::Tensor bit_casted_shaped(
  gtl::ArraySlice< int64 > new_sizes
)

Tensor verilerini, new_sizes belirtilen yeni şekle sahip bir Eigen::Tensor döndürün ve yeni bir veri türü olan T dönüştürün.

Bit dönüştürme işlemi, taşıma ve kopyalama işlemleri için faydalıdır. İzin verilen bit dönüştürme türü, shaped() fonksiyonundan tek farkıdır.

bit_dönüştürülmüş_şekilli

TTypes< T, NDIMS >::ConstTensor bit_casted_shaped(
  gtl::ArraySlice< int64 > new_sizes
) const 

Tensor verilerini, new_sizes belirtilen yeni şekle sahip bir Eigen::Tensor döndürün ve yeni bir veri türü olan T dönüştürün.

Bit dönüştürme işlemi, taşıma ve kopyalama işlemleri için faydalıdır. İzin verilen bit dönüştürme miktarı, shaped() fonksiyonundan tek farkıdır.

bit_dönüştürülmüş_tensor

TTypes< T, NDIMS >::Tensor bit_casted_tensor()

Tensor verilerini, aynı boyutta ancak belirtilen veri türü T bit düzeyinde dönüştürülmüş bir Eigen::Tensor döndürün.

Bit dönüştürme (bitcast) işlemi, taşıma ve kopyalama işlemleri için faydalıdır. NOT: Bu, bit dönüştürmeye izin verilmesi dışında tensor() ile aynıdır.

bit_dönüştürülmüş_tensor

TTypes< T, NDIMS >::ConstTensor bit_casted_tensor() const 

Tensor verilerini, aynı boyutta ancak belirtilen veri türü T bit düzeyinde dönüştürülmüş bir Eigen::Tensor döndürün.

Bit dönüştürme (bitcast) işlemi, taşıma ve kopyalama işlemleri için faydalıdır. NOT: Bu, bit dönüştürmeye izin verilmesi dışında tensor() ile aynıdır.

boyut_boyutu

int64 dim_size(
  int d
) const 

Tensör şekli için kolaylık sağlayan erişim aracı.

karartmalar

int dims() const 

Tensör şekli için kolaylık sağlayan erişim aracı.

Tüm şekil erişim yöntemleri için, tensor_shape.h dosyasındaki TensorShape ilgili yöntemlerine ilişkin yorumlara bakın.

dtype

DataType dtype() const 

Veri türünü döndürür.

düz

TTypes< T >::Flat flat()

Tensor verilerini, belirtilen veri türünde ve şekilde bir Eigen::Tensor olarak döndürün.

Bu yöntemler, istediğiniz boyut ve ölçülerde verilere erişmenizi sağlar. Bunları çağırmak için Tensor'un boyut sayısını bilmenize gerek yoktur. Ancak, türün eşleştiğini ve istenen boyutların, Tensor ile aynı sayıda elemana sahip bir Eigen::Tensor oluşturduğunu CHECK ederler.

Örnek:

  
    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<T, 2>({4, 15});
    // CHECK fails, bad num elements:
    auto outer = my_ten.shaped<T, 2>({4, 8});
    // 3D Eigen::Tensor 6 x 5 x 2:
    auto weird = my_ten.shaped<T, 3>({6, 5, 2});
    // CHECK fails, type mismatch:
    auto bad   = my_ten.flat();

      

flat

TTypes< T >::ConstFlat flat() const 

düz iç boyutlar

TTypes< T, NDIMS >::Tensor flat_inner_dims()

Verileri, son NDIMS-1 boyutu hariç tüm Tensor boyutlarını sonucun ilk boyutuna birleştirerek, NDIMS boyutlu bir Eigen::Tensor olarak döndürür.

Eğer NDIMS > dims() ise, çıktı boyutunu NDIMS yapmak için 1 boyutlu önde gelen boyutlar eklenecektir.

düz iç boyutlar

TTypes< T, NDIMS >::ConstTensor flat_inner_dims() const 

düz iç dış boyutlar

TTypes< T, NDIMS >::Tensor flat_inner_outer_dims(
  int64 begin
)

Verileri NDIMS boyutlu bir Eigen::Tensor olarak döndürür; ilk 'begin' Tensor boyutlarını sonucun ilk boyutuna , son dims() - 'begin' - NDIMS boyutlarını ise sonucun son boyutuna birleştirir.

Eğer 'begin' < 0 ise, |'begin'| adet 1 boyutlu önde gelen boyut eklenecektir. Eğer 'begin' + NDIMS > dims() ise, 'begin' + NDIMS - dims() adet 1 boyutlu sondaki boyut eklenecektir.

düz iç dış boyutlar

TTypes< T, NDIMS >::ConstTensor flat_inner_outer_dims(
  int64 begin
) const 

düz dış boyutlar

TTypes< T, NDIMS >::Tensor flat_outer_dims()

Verileri, NDIMS boyutlu bir Eigen::Tensor olarak döndürür; ilk NDIMS-1 boyutu hariç tüm Tensor boyutlarını sonucun son boyutuna birleştirir.

Eğer NDIMS > dims() ise, çıktının boyutunu NDIMS yapmak için sonuna 1 boyutunda ek boyutlar eklenecektir.

düz dış boyutlar

TTypes< T, NDIMS >::ConstTensor flat_outer_dims() const 

matris

TTypes< T >::Matrix matrix()

matris

TTypes< T >::ConstMatrix matrix() const 

operatör=

Tensor & operator=(
  const Tensor & other
)

Atama operatörü. Bu tensör, diğerinin temel depolama alanını paylaşıyor.

operatör=

Tensor & operator=(
  Tensor && other
)

Taşıma operatörü. Ayrıntılar için taşıma yapıcı fonksiyonuna bakın.

son_boyutu yeniden yorumla

TTypes< T, NDIMS >::Tensor reinterpret_last_dimension()

Tensor verilerini, son boyut elemanları daha büyük bir türün tek elemanlarına dönüştürülmüş bir Eigen::Tensor döndürün.

Örneğin, bu, NCHW_VECT_C int8 tensörlerini NCHW int32 tensörleri olarak işleyebilen çekirdekler için kullanışlıdır. sizeof(T), orijinal eleman türünün boyutu * orijinal son boyuttaki eleman sayısı ile eşit olmalıdır. NDIMS, orijinal boyut sayısından 1 eksik olmalıdır.

son_boyutu yeniden yorumla

TTypes< T, NDIMS >::ConstTensor reinterpret_last_dimension() const 

Tensor verilerini, son boyut elemanları daha büyük bir türün tek elemanlarına dönüştürülmüş bir Eigen::Tensor döndürün.

Örneğin, bu, NCHW_VECT_C int8 tensörlerini NCHW int32 tensörleri olarak işleyebilen çekirdekler için kullanışlıdır. sizeof(T), orijinal eleman türünün boyutu * orijinal son boyuttaki eleman sayısı ile eşit olmalıdır. NDIMS, orijinal boyut sayısından 1 eksik olmalıdır.

skaler

TTypes< T >::Scalar scalar()

Tensor verilerini sabit boyutlu 1'li bir TensorMap olarak döndürün: TensorMap > .

scalar() kullanımı, tensörün boyutu derleme zamanında bilindiği için derleyicinin optimizasyonlar yapmasına olanak tanır.

skaler

TTypes< T >::ConstScalar scalar() const 

şekil

const TensorShape & shape() const 

Tensörün şeklini döndürür.

şekillendirilmiş

TTypes< T, NDIMS >::Tensor shaped(
  gtl::ArraySlice< int64 > new_sizes
)

şekillendirilmiş

TTypes< T, NDIMS >::ConstTensor shaped(
  gtl::ArraySlice< int64 > new_sizes
) const 

tensör

TTypes< T, NDIMS >::Tensor tensor()

tensör

TTypes< T, NDIMS >::ConstTensor tensor() const 

tensör_veri

StringPiece tensor_data() const 

Geçerli tensörün arabelleğini eşleyen bir StringPiece döndürür.

Döndürülen StringPiece CPU'nun doğrudan erişemediği aygıtlardaki bellek konumlarına işaret edebilir.

NOT: Temel tensör arabelleği referans sayımıyla çalışır, bu nedenle StringPiece tarafından eşlenen içeriğin ömrü arabelleğin ömrüyle eşleşir; çağıranlar, StringPiece hala kullanılırken arabelleğin yok edilmemesini sağlamalıdır.

GEREKLİ: DataTypeCanUseMemcpy(dtype()) .

hizalanmamış_düz

TTypes< T >::UnalignedFlat unaligned_flat()

hizalanmamış_düz

TTypes< T >::UnalignedConstFlat unaligned_flat() const 

hizalanmamış_şekilli

TTypes< T, NDIMS >::UnalignedTensor unaligned_shaped(
  gtl::ArraySlice< int64 > new_sizes
)

hizalanmamış_şekilli

TTypes< T, NDIMS >::UnalignedConstTensor unaligned_shaped(
  gtl::ArraySlice< int64 > new_sizes
) const 

vektör

TTypes< T >::Vec vec()

Tensor verilerini, bu Tensor'un türü ve boyutlarıyla birlikte bir Eigen::Tensor olarak döndürün.

Tensor'ın veri türünü ve boyut sayısını bildiğinizde ve Eigen::Tensor'ın Tensor boyutlarına otomatik olarak boyutlandırılmasını istediğinizde bu yöntemleri kullanın. Tür veya boyutlar uyuşmuyorsa uygulama kontrolü başarısız olur.

Örnek:

  
    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<T, 2>(); // 2D Eigen::Tensor, 3 x 5.
    auto vec = my_mat.vec();       // CHECK fails as my_mat is 2D.
    auto vec = my_mat.tensor<T, 3>(); // CHECK fails as my_mat is 2D.
    auto mat = my_mat.matrix();// CHECK fails as type mismatch.

      

vec

TTypes< T >::ConstVec vec() const 

Yukarıdaki tüm yöntemlerin sabit (const) sürümleri.

~Tensor

 ~Tensor()