tensorflow::Tensor

#include <tensor.h>

n次元の値の配列を表します。

まとめ

コンストラクターとデストラクタ

Tensor ()
1次元、要素数0の浮動小数点テンソルを作成します。
Tensor (DataType type, const TensorShape & shape)
指定されたtypeとshapeのテンソルを作成します。
Tensor (Allocator *a, DataType type, const TensorShape & shape)
入力されたtypeとshape持つテンソルを作成し、アロケータaを使用して基となるバッファを割り当てます。
Tensor (Allocator *a, DataType type, const TensorShape & shape, const AllocationAttributes & allocation_attr)
入力typeとshapeのテンソルを作成し、アロケータaと指定された "allocation_attr" を使用して基となるバッファを割り当てます。
Tensor (DataType type, const TensorShape & shape, TensorBuffer *buf)
入力されたデータ型、形状、バッファを持つテンソルを作成します。
Tensor (DataType type)
指定されたデータ型の空のテンソルを作成します。
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)
コピーコンストラクタ。
Tensor ( Tensor && other)
コンストラクタを移動します。
~Tensor ()

公的機能

AllocatedBytes () const
size_t
AsProtoField (TensorProto *proto) const
void
*thisテンソルの内容でprotoを埋めます。
AsProtoTensorContent (TensorProto *proto) const
void
BitcastFrom (const Tensor & other, DataType dtype, const TensorShape & shape)
他のテンソルをこのテンソルにコピーし、形状を変更して、バッファのデータ型を再解釈します。
CopyFrom (const Tensor & other, const TensorShape & shape) TF_MUST_USE_RESULT
bool
他のテンソルをこのテンソルにコピーして、形状を変更します。
DebugString (int num_values) const
string
デバッグに適した、人間が読みやすいテンソルの要約。
DebugString () const
string
DeviceSafeDebugString () const
string
FillDescription (TensorDescription *description) const
void
TensorDescriptionプロトコルに、監視やデバッグに役立つテンソルに関するメタデータを記述してください。
FromProto (const TensorProto & other) TF_MUST_USE_RESULT
bool
otherを解析し、テンソルを構築する。
FromProto (Allocator *a, const TensorProto & other) TF_MUST_USE_RESULT
bool
IsAligned () const
bool
このテンソルが整列している場合にのみtrueを返します。
IsInitialized () const
bool
必要であれば、このテンソルは初期化されていますか?
IsSameSize (const Tensor & b) const
bool
NumElements () const
int64
テンソル形状のための便利なアクセサ。
SharesBufferWith (const Tensor & b) const
bool
Slice (int64 dim0_start, int64 dim0_limit) const
このテンソルを1次元目に沿ってスライスします。
SubSlice (int64 index) const
このテンソルから、1次元目に沿ってサブスライスを選択します。
SummarizeValue (int64 max_entries, bool print_v2) const
string
*this内の最初のmax_entries値を文字列としてレンダリングします。
TotalBytes () const
size_t
このテンソルの推定メモリ使用量を返します。
UnsafeCopyFromInternal (const Tensor & other, DataType dtype, const TensorShape & shape)
void
BitcastFromと同様ですが、前提条件が満たされていない場合はCHECKが失敗します。
bit_casted_shaped (gtl::ArraySlice< int64 > new_sizes)
TTypes< T, NDIMS >:: Tensor
テンソルデータを、 new_sizesで指定された新しい形状のEigen::Tensorに返し、新しいdtype Tにキャストします。
bit_casted_shaped (gtl::ArraySlice< int64 > new_sizes) const
TTypes< T, NDIMS >::ConstTensor
テンソルデータを、 new_sizesで指定された新しい形状のEigen::Tensorに返し、新しいdtype Tにキャストします。
bit_casted_tensor ()
TTypes< T, NDIMS >:: Tensor
テンソルデータを、同じサイズで指定されたdtype Tにビット単位でキャストしたEigen::Tensorに返します。
bit_casted_tensor () const
TTypes< T, NDIMS >::ConstTensor
テンソルデータを、同じサイズで指定されたdtype Tにビット単位でキャストしたEigen::Tensorに返します。
dim_size (int d) const
int64
テンソル形状のための便利なアクセサ。
dims () const
int
テンソル形状のための便利なアクセサ。
dtype () const
DataType
データ型を返します。
flat ()
TTypes< T >::Flat
指定されたデータ型と形状のEigen::Tensorとしてテンソルデータを返します。
flat () const
TTypes< T >::ConstFlat
flat_inner_dims ()
TTypes< T, NDIMS >:: Tensor
データをNDIMS次元のEigen::Tensorとして返します。ただし、最後のNDIMS-1を除くすべてのTensor次元は、結果の最初の次元に集約されます。
flat_inner_dims () const
TTypes< T, NDIMS >::ConstTensor
flat_inner_outer_dims (int64 begin)
TTypes< T, NDIMS >:: Tensor
データは NDIMS 次元の Eigen::Tensor として返され、最初の 'begin' Tensor次元は結果の最初の次元に縮約され、最後のdims() - 'begin' - NDIMS のTensor次元は結果の最後の次元に縮約されます。
flat_inner_outer_dims (int64 begin) const
TTypes< T, NDIMS >::ConstTensor
flat_outer_dims ()
TTypes< T, NDIMS >:: Tensor
データをNDIMS次元のEigen::Tensorとして返します。最初のNDIMS-1を除くすべてのTensor次元は、結果の最後の次元に集約されます。
flat_outer_dims () const
TTypes< T, NDIMS >::ConstTensor
matrix ()
TTypes< T >::Matrix
matrix () const
TTypes< T >::ConstMatrix
operator= (const Tensor & other)
代入演算子。このテンソルは、他のテンソルの基となるストレージを共有します。
operator= ( Tensor && other)
ムーブ演算子。詳細はムーブコンストラクタを参照してください。
reinterpret_last_dimension ()
TTypes< T, NDIMS >:: Tensor
テンソルデータをEigen::Tensorに返しますが、最後の次元の要素はより大きな型の単一要素に変換されます。
reinterpret_last_dimension () const
TTypes< T, NDIMS >::ConstTensor
テンソルデータをEigen::Tensorに返しますが、最後の次元の要素はより大きな型の単一要素に変換されます。
scalar ()
TTypes< T >::Scalar
Tensorデータを固定サイズ1のTensorMapとして返します: TensorMap > 。
scalar () const
TTypes< T >::ConstScalar
shape () const
const TensorShape &
テンソルの形状を返します。
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
現在のテンソルのバッファをマッピングするStringPieceを返します。
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の型とサイズを持つEigen::Tensorとしてテンソルデータを返します。
vec () const
TTypes< T >::ConstVec
上記のすべてのメソッドのconstバージョン。

公的機能

割り当てられたバイト数

size_t AllocatedBytes() const 

AsProtoField

void AsProtoField(
  TensorProto *proto
) const 

*thisテンソルの内容でprotoを埋めます。

AsProtoField()はproto.dtype()の繰り返しフィールドに値を入力し、 AsProtoTensorContent()はproto.tensor_content()の内容をコンパクトな形式でエンコードします。

AsProtoTensorContent

void AsProtoTensorContent(
  TensorProto *proto
) const 

BitcastFrom

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

他のテンソルをこのテンソルにコピーし、形状を変更して、バッファのデータ型を再解釈します。

Status::OK() が返された場合、2 つのテンソルは同じ基盤となるストレージを共有することになります。

この呼び出しでは、 otherテンソルと指定された型および形状が「互換性がある」(つまり、同じバイト数を占める)ことが必要です。

具体的には:

shape.num_elements() * DataTypeSize(type)

等しくなければならない

other.num_elements() * DataTypeSize(other.dtype())

さらに、この機能には以下が必要です。

  • DataTypeSize(other.dtype()) != 0
  • DataTypeSize(type) != 0

いずれかの要件が満たされていない場合、errors::InvalidArgument が返されます。

コピー元

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

他のテンソルをこのテンソルにコピーして、形状を変更します。

このテンソルは、他のテンソルの基となるストレージを共有します。other.shape other.shape()指定されたshapeの要素を同じ数だけ持っている場合に限り、 true返します。

デバッグ文字列

string DebugString(
  int num_values
) const 

デバッグに適した、人間が読みやすいテンソルの要約。

デバッグ文字列

string DebugString() const 

DeviceSafeDebugString

string DeviceSafeDebugString() const 

記入説明

void FillDescription(
  TensorDescription *description
) const 

TensorDescriptionプロトコルに、監視やデバッグに役立つテンソルに関するメタデータを記述してください。

フロムプロト

bool FromProto(
  const TensorProto & other
) TF_MUST_USE_RESULT

otherを解析し、テンソルを構築する。

解析が成功した場合にのみtrueを返します。解析が失敗した場合、 *thisの状態は変更されません。

フロムプロト

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

整列しています

bool IsAligned() const 

このテンソルが整列している場合にのみtrueを返します。

初期化済み

bool IsInitialized() const 

必要であれば、このテンソルは初期化されていますか?

要素がゼロのテンソルは、たとえ一度もメモリが割り当てられておらず、メモリ領域も確保されていなくても、常に初期化済みとみなされます。

同じサイズ

bool IsSameSize(
  const Tensor & b
) const 

要素数

int64 NumElements() const 

テンソル形状のための便利なアクセサ。

SharesBufferWith

bool SharesBufferWith(
  const Tensor & b
) const 

スライス

Tensor Slice(
  int64 dim0_start,
  int64 dim0_limit
) const 

このテンソルを1次元目に沿ってスライスします。

つまり、返されるテンソルは returned[i, ...] == this[dim0_start + i, ...] を満たします。返されるテンソルは、このテンソルと基となるテンソルバッファを共有します。

注: 返されるテンソルは、形状によっては、このテンソルと同じアライメント要件を満たさない場合があります。呼び出し元は、アライメント要件のある特定のメソッド ( flat() 、 tensor() ) を呼び出す前に、返されるテンソルのアライメントを確認する必要があります。

注:N次元テンソルを入力として受け取ると、このメソッドはN次元のテンソルを返します。サブテンソルを選択する場合は、SubSliceを参照してください。

必須条件: dims() >= 1 必須条件: 0 <= dim0_start <= dim0_limit <= dim_size(0)

サブスライス

Tensor SubSlice(
  int64 index
) const 

このテンソルから、1次元目に沿ってサブスライスを選択します。

N次元テンソルを入力として受け取ると、このメソッドはN-1次元のテンソルを返します。返されるテンソルは、入力テンソルの最初の次元に沿った部分スライスです。返されるテンソルのN-1次元は、入力テンソルの最後のN-1次元です。

注: 返されるテンソルは、形状によっては、このテンソルと同じアライメント要件を満たさない場合があります。呼び出し元は、アライメント要件のある特定のメソッド ( flat() 、 tensor() ) を呼び出す前に、返されるテンソルのアライメントを確認する必要があります。

必須条件: dims() >= 1 必須条件: 0 <= dim0_start < dim_size(0)

要約値

string SummarizeValue(
  int64 max_entries,
  bool print_v2
) const 

*this内の最初のmax_entries値を文字列としてレンダリングします。

テンソル

 Tensor()

1次元、要素数0の浮動小数点テンソルを作成します。

返されるテンソルはスカラー(形状 {})ではなく、空の1次元テンソル(形状 {0}、 NumElements() == 0)です。要素がないため、値を割り当てる必要はなく、デフォルトで初期化されます( IsInitialized()は true)。これが望ましくない場合は、初期化が必要な1要素のスカラーを作成することを検討してください。

Tensor(DT_FLOAT, TensorShape({}))

      

Tensor

 Tensor(
  DataType type,
  const TensorShape & shape
)

指定されたtypeとshapeのテンソルを作成します。

LogMemory::IsEnabled() が有効になっている場合、割り当ては不明なカーネルとステップから行われたものとしてログに記録されます。Op 内からTensorコンストラクタを直接呼び出すことは非推奨です。カーネルとステップを記録する OpKernelConstruction/OpKernelContext allocate_* メソッドを使用して新しいテンソルを割り当ててください。

基となるバッファは、 CPUAllocatorを使用して割り当てられます。

テンソル

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

入力されたtypeとshape持つテンソルを作成し、アロケータaを使用して基となるバッファを割り当てます。

LogMemory::IsEnabled() が有効になっている場合、割り当ては不明なカーネルとステップから行われたものとしてログに記録されます。Op 内からTensorコンストラクタを直接呼び出すことは非推奨です。カーネルとステップを記録する OpKernelConstruction/OpKernelContext allocate_* メソッドを使用して新しいテンソルを割り当ててください。

このテンソルの寿命よりもa存続しなければならない。

テンソル

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

入力typeとshapeのテンソルを作成し、アロケータaと指定された "allocation_attr" を使用して基となるバッファを割り当てます。

カーネルとステップが既知の場合は、allocation_attr.allocation_will_be_logged を true に設定し、テンソルの構築後に LogMemory::RecordTensorAllocation を呼び出す必要があります。Op 内からTensorコンストラクタを直接呼び出すことは非推奨です。カーネルとステップを記録する新しいテンソルを割り当てるには、OpKernelConstruction/OpKernelContext の allocate_* メソッドを使用してください。

このテンソルの寿命よりもa存続しなければならない。

テンソル

 Tensor(
  DataType type,
  const TensorShape & shape,
  TensorBuffer *buf
)

入力されたデータ型、形状、バッファを持つテンソルを作成します。

このテンソルに属するbufの参照を取得します。

テンソル

 Tensor(
  DataType type
)

指定されたデータ型の空のテンソルを作成します。

Tensor()と同様に、 IsInitialized()が True を返す 1 次元、要素数 0 のTensor を返します。詳細はTensor() のドキュメントを参照してください。

テンソル

 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
)

コピーコンストラクタ。

テンソル

 Tensor(
  Tensor && other
)

コンストラクタを移動します。

この電話の後、安全に破棄でき、代入も可能ですが、それに対するその他の呼び出し(形状操作など)は無効です。

合計バイト数

size_t TotalBytes() const 

このテンソルの推定メモリ使用量を返します。

内部からの安全でないコピー

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

BitcastFromと同様ですが、前提条件が満たされていない場合はCHECKが失敗します。

非推奨です。代わりに BitcastFrom を使用し、返されるStatusを確認してください。

ビットキャスト形状

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

テンソルデータを、 new_sizesで指定された新しい形状のEigen::Tensorに返し、新しいdtype Tにキャストします。

ビットキャストは、移動やコピー操作に便利です。許可されるビットキャストはshaped()との唯一の違いです。

ビットキャスト形状

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

テンソルデータを、 new_sizesで指定された新しい形状のEigen::Tensorに返し、新しいdtype Tにキャストします。

ビットキャストは、移動やコピー操作に便利です。許可されるビットキャストはshaped()との唯一の違いです。

ビットキャストされたテンソル

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

テンソルデータを、同じサイズで指定されたdtype Tにビット単位でキャストしたEigen::Tensorに返します。

ビットキャストは、移動やコピー操作に便利です。注:これは、ビットキャストが許可されている点を除いて、 tensor()と同じです。

ビットキャストされたテンソル

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

テンソルデータを、同じサイズで指定されたdtype Tにビット単位でキャストしたEigen::Tensorに返します。

ビットキャストは、移動やコピー操作に便利です。注:これはtensor()と同じですが、ビットキャストが許可されています。

寸法サイズ

int64 dim_size(
  int d
) const 

テンソル形状のための便利なアクセサ。

寸法

int dims() const 

テンソル形状のための便利なアクセサ。

すべての形状アクセサについては、 tensor_shape.hのTensorShapeの関連メソッドのコメントを参照してください。

dtype

DataType dtype() const 

データ型を返します。

フラット

TTypes< T >::Flat flat()

指定されたデータ型と形状のEigen::Tensorとしてテンソルデータを返します。

これらのメソッドを使用すると、任意の次元とサイズでデータにアクセスできます。これらのメソッドを呼び出す際に、テンソルの次元数を知っている必要はありません。ただし、これらのメソッドは、型が一致していること、および要求された次元によって、テンソルと同じ数の要素を持つEigen::Tensor作成されることをCHECK 。

例:

  
    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 

フラットインナーディメンション

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

データをNDIMS次元のEigen::Tensorとして返します。最後のNDIMS-1を除くすべてのTensor次元は、結果の最初の次元に集約されます。

NDIMS > dims()の場合、出力ランクを NDIMS にするために、サイズ 1 の先頭次元が追加されます。

フラットインナーディメンション

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

フラットインナーアウター寸法

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

データは NDIMS 次元の Eigen::Tensor として返され、最初の 'begin' Tensor次元は結果の最初の次元に縮約され、最後のdims() - 'begin' - NDIMS のTensor次元は結果の最後の次元に縮約されます。

'begin' < 0 の場合、サイズ 1 の先頭次元 |'begin'| が追加されます。'begin' + NDIMS > dims()の場合、サイズ 1 の末尾次元 'begin' + NDIMS - dims()が追加されます。

フラットインナーアウター寸法

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

フラットアウター寸法

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

データをNDIMS次元のEigen::Tensorとして返します。最初のNDIMS-1を除くすべてのTensor次元は、結果の最後の次元に集約されます。

NDIMS > dims()の場合、出力ランクを NDIMS にするために、サイズ 1 の末尾次元が追加されます。

フラットアウター寸法

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

マトリックス

TTypes< T >::Matrix matrix()

マトリックス

TTypes< T >::ConstMatrix matrix() const 

演算子=

Tensor & operator=(
  const Tensor & other
)

代入演算子。このテンソルは、他のテンソルの基となるストレージを共有します。

演算子=

Tensor & operator=(
  Tensor && other
)

ムーブ演算子。詳細はムーブコンストラクタを参照してください。

最後の次元を再解釈

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

テンソルデータをEigen::Tensorに返しますが、最後の次元の要素はより大きな型の単一要素に変換されます。

例えば、これは NCHW_VECT_C int8 テンソルを NCHW int32 テンソルとして扱えるカーネルに役立ちます。sizeof(T) は、元の要素型のサイズ * 元の最後の次元の要素数と等しくなければなりません。NDIMS は、元の次元数より 1 少なくなければなりません。

最後の次元を再解釈

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

テンソルデータをEigen::Tensorに返しますが、最後の次元の要素はより大きな型の単一要素に変換されます。

例えば、これは NCHW_VECT_C int8 テンソルを NCHW int32 テンソルとして扱えるカーネルに役立ちます。sizeof(T) は、元の要素型のサイズ * 元の最後の次元の要素数と等しくなければなりません。NDIMS は、元の次元数より 1 少なくなければなりません。

スカラー

TTypes< T >::Scalar scalar()

テンソルデータを固定サイズ1のTensorMapとして返します: TensorMap > 。

scalar()を使用すると、コンパイル時にテンソルのサイズがわかっているため、コンパイラは最適化を実行できます。

スカラー

TTypes< T >::ConstScalar scalar() const 

形

const TensorShape & shape() const 

テンソルの形状を返します。

形作られた

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

形作られた

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

テンソル

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

テンソル

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

テンソルデータ

StringPiece tensor_data() const 

現在のテンソルのバッファをマッピングするStringPieceを返します。

返されるStringPiece 、CPUが直接アドレス指定できないデバイス上のメモリ位置を指している可能性があります。

注: 基となるテンソルバッファは参照カウントされるため、 StringPieceによってマッピングされるコンテンツの有効期間はバッファの有効期間と一致します。呼び出し元は、 StringPiece使用されている間はバッファが破棄されないようにする必要があります。

必須: DataTypeCanUseMemcpy(dtype()) 。

非整列フラット

TTypes< T >::UnalignedFlat unaligned_flat()

非整列フラット

TTypes< T >::UnalignedConstFlat unaligned_flat() const 

整列していない形状

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

整列していない形状

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

ベクター

TTypes< T >::Vec vec()

このテンソルの型とサイズを持つ Eigen::Tensor としてテンソルデータを返します。

テンソルのデータ型と次元数がわかっている場合、Eigen::Tensor をテンソルのサイズに合わせて自動的にサイズ調整したい場合は、これらのメソッドを使用してください。型またはサイズが一致しない場合、実装チェックが失敗します。

例:

  
    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 

上記のすべてのメソッドのconstバージョン。

~テンソル

 ~Tensor()