Esta página foi traduzida pela API Cloud Translation.
Switch to English

tensorflow :: tensor

#include <tensor.h>

Representa uma matriz n-dimensional de valores.

Resumo

Construtores e destruidores

Tensor ()
Cria um 1-dimensional, 0-elemento flutuador tensor.
Tensor (DataType type, const TensorShape & shape)
Cria um tensor de um determinado type e shape .
Tensor (Allocator *a, DataType type, const TensorShape & shape)
Cria um tensor com a entrada de type e shape , usando o alocador a alocar o tampão subjacente.
Tensor (Allocator *a, DataType type, const TensorShape & shape, const AllocationAttributes & allocation_attr)
Cria um tensor com a entrada de type e shape , usando o alocador a e o "allocation_attr" para alocar o buffer subjacente especificado.
Tensor (DataType type, const TensorShape & shape, TensorBuffer *buf)
Cria um tensor com o tipo de dados de entrada, forma e buf.
Tensor (DataType type)
Cria um vazio Tensor do dado tipo de dados.
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)
construtor de cópia.
Tensor ( Tensor && other)
Mova construtor.
Tensor (T *t)
~Tensor ()

funções públicas

AllocatedBytes () const
size_t
AsProtoField (TensorProto *proto) const
void
Preenche proto com *this conteúdo do tensor.
AsProtoTensorContent (TensorProto *proto) const
void
BitcastFrom (const Tensor & other, DataType dtype, const TensorShape & shape)
Status
Copie o outro tensor para este tensor, remodelá-lo e reinterpretar tipo de dados do buffer.
CopyFrom (const Tensor & other, const TensorShape & shape) TF_MUST_USE_RESULT
bool
Copie o outro tensor para este tensor e remodelá-lo.
DebugString (int num_values) const
std::string
Um resumo legível do tensor apropriado para a depuração.
DebugString () const
std::string
DeviceSafeDebugString () const
std::string
FillDescription (TensorDescription *description) const
void
Preencha o TensorDescription proto com metadados sobre o tensor que é útil para monitorar e depurar.
FromProto (const TensorProto & other) TF_MUST_USE_RESULT
bool
Analisar other e construir o tensor.
FromProto (Allocator *a, const TensorProto & other) TF_MUST_USE_RESULT
bool
IsAligned () const
bool
Retorna true se e somente se este tensor está alinhado.
IsInitialized () const
bool
Se necessário, tem este Tensor foi inicializado?
IsSameSize (const Tensor & b) const
bool
NumElements () const
int64
acessor conveniência para a forma tensor.
RefCountIsOne () const
bool
SharesBufferWith (const Tensor & b) const
bool
Slice (int64 dim0_start, int64 dim0_limit) const
Divida este tensor ao longo da primeira dimensão.
SubSlice (int64 index) const
Selecione um subslice deste tensor ao longo da 1ª dimensão.
SummarizeValue (int64 max_entries, bool print_v2) const
std::string
Prestar os primeiros max_entries valores *this em uma string.
TotalBytes () const
size_t
Retorna o uso de memória estimado deste tensor.
UnsafeCopyFromInternal (const Tensor & other, DataType dtype, const TensorShape & shape)
void
Como BitcastFrom, mas verificação falhar se quaisquer pré-condições não forem atendidas.
bit_casted_shaped (gtl::ArraySlice< int64 > new_sizes)
TTypes< T, NDIMS >:: Tensor
Retornar os dados de tensores para um Eigen::Tensor com a nova forma especificada no new_sizes e elenco para um novo dtipo T .
bit_casted_shaped (gtl::ArraySlice< int64 > new_sizes) const
TTypes< T, NDIMS >::ConstTensor
Retornar os dados de tensores para um Eigen::Tensor com a nova forma especificada no new_sizes e elenco para um novo dtipo T .
bit_casted_tensor ()
TTypes< T, NDIMS >:: Tensor
Retornar os dados de tensores para um Eigen::Tensor com o mesmo tamanho, mas um elenco bit a bit para o dtipo especificado T .
bit_casted_tensor () const
TTypes< T, NDIMS >::ConstTensor
Retornar os dados de tensores para um Eigen::Tensor com o mesmo tamanho, mas um elenco bit a bit para o dtipo especificado T .
data () const
void *
dim_size (int d) const
int64
acessor conveniência para a forma tensor.
dims () const
int
acessor conveniência para a forma tensor.
dtype () const
DataType
Retorna o tipo de dados.
flat ()
TTypes< T >::Flat
Retornar os dados tensores como um Eigen::Tensor do tipo de dados e uma forma especificada.
flat () const
TTypes< T >::ConstFlat
flat_inner_dims ()
TTypes< T, NDIMS >:: Tensor
Retorna os dados como um Eigen :: Tensor com dimensões ndims, caindo todos Tensor dimensões, mas os últimos ndims-1 na primeira dimensão do resultado.
flat_inner_dims () const
TTypes< T, NDIMS >::ConstTensor
flat_inner_outer_dims (int64 begin)
TTypes< T, NDIMS >:: Tensor
Retorna os dados como um Eigen :: Tensor com dimensões ndims, caindo o primeiro 'começar' Tensor dimensões na primeira dimensão do resultado e os Tensor dimensões dos últimos escurece () - 'começar' - ndims na última dimensão do resultado.
flat_inner_outer_dims (int64 begin) const
TTypes< T, NDIMS >::ConstTensor
flat_outer_dims ()
TTypes< T, NDIMS >:: Tensor
Retorna os dados como um Eigen :: Tensor com dimensões ndims, caindo todos Tensor dimensões, mas os primeiros ndims-1 na última dimensão do resultado.
flat_outer_dims () const
TTypes< T, NDIMS >::ConstTensor
matrix ()
TTypes< T >::Matrix
matrix () const
TTypes< T >::ConstMatrix
operator= (const Tensor & other)
Tensor &
operador Atribuir. Esse tensor ações de outras subjacentes armazenamento.
operator= ( Tensor && other)
Tensor &
Mova operador. Veja construtor movimento para mais detalhes.
reinterpret_last_dimension ()
TTypes< T, NDIMS >:: Tensor
Retornar os dados de tensores para um Eigen::Tensor com os últimos elementos de dimensão convertidos em elementos individuais de um tipo maior.
reinterpret_last_dimension () const
TTypes< T, NDIMS >::ConstTensor
Retornar os dados de tensores para um Eigen::Tensor com os últimos elementos de dimensão convertidos em elementos individuais de um tipo maior.
scalar ()
TTypes< T >::Scalar
Devolver os Tensor dados como um TensorMap de tamanho fixo 1: TensorMap > TensorMap > .
scalar () const
TTypes< T >::ConstScalar
shape () const
const TensorShape &
Retorna a forma do 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
Retorna uma StringPiece mapear o buffer do tensor de corrente.
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
Retornar os dados tensores como um Eigen::Tensor com o tipo e tamanhos de este Tensor .
vec () const
TTypes< T >::ConstVec
Const versões de todos os métodos acima.

funções públicas

AllocatedBytes

size_t AllocatedBytes() const 

AsProtoField

void AsProtoField(
  TensorProto *proto
) const 

Preenche proto com *this conteúdo do tensor.

AsProtoField() preenche o campo repetido para proto.dtype() , enquanto AsProtoTensorContent() codifica o conteúdo em proto.tensor_content() de uma forma compacta.

AsProtoTensorContent

void AsProtoTensorContent(
  TensorProto *proto
) const 

BitcastFrom

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

Copie o outro tensor para este tensor, remodelá-lo e reinterpretar tipo de dados do buffer.

Se o Status :: OK () é retornado, os dois tensores agora compartilham o mesmo armazenamento subjacente.

Esta chamada requer que o other tensor e do tipo de dado e a forma são "compatível" (ou seja, que ocupam o mesmo número de bytes).

Especificamente:

shape.num_elements () * DataTypeSize (tipo)

deve ser igual

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

Além disso, esta função requer:

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

Se algum dos requisitos não forem cumpridos, os erros :: InvalidArgument é retornado.

Copiar de

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

Copie o outro tensor para este tensor e remodelá-lo.

Esse tensor ações de outras subjacentes armazenamento. Retornos true sse other.shape() tem o mesmo número de elementos da dada shape .

DebugString

std::string DebugString(
  int num_values
) const 

Um resumo legível do tensor apropriado para a depuração.

DebugString

std::string DebugString() const 

DeviceSafeDebugString

std::string DeviceSafeDebugString() const 

FillDescription

void FillDescription(
  TensorDescription *description
) const 

Preencha o TensorDescription proto com metadados sobre o tensor que é útil para monitorar e depurar.

FromProto

bool FromProto(
  const TensorProto & other
) TF_MUST_USE_RESULT

Analisar other e construir o tensor.

Retorna true sse a análise for bem-sucedido. Se a análise falhar, o estado de *this não é alterada.

FromProto

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

IsAligned

bool IsAligned() const 

Retorna true se e somente se este tensor está alinhado.

IsInitialized

bool IsInitialized() const 

Se necessário, tem este Tensor foi inicializado?

Tensores Zero-elemento são sempre considerados inicializado, mesmo que nunca foram atribuídos e não têm qualquer memória alocada.

IsSameSize

bool IsSameSize(
  const Tensor & b
) const 

numElements

int64 NumElements() const 

acessor conveniência para a forma tensor.

RefCountIsOne

bool RefCountIsOne() const 

SharesBufferWith

bool SharesBufferWith(
  const Tensor & b
) const 

Fatia

 Tensor Slice(
  int64 dim0_start,
  int64 dim0_limit
) const 

Divida este tensor ao longo da 1ª dimensão.

Ou seja, os satisfaz tensor voltou devolvidos [i, ...] == este [dim0_start + i, ...]. As ações tensor devolvidos o tampão tensor subjacente com este tensor.

NOTA: O tensor retornado pode não satisfazer a mesma exigência de alinhamento como este tensor dependendo da forma. O chamador deve verificar o alinhamento do tensor retornou antes de chamar certos métodos que têm exigência de alinhamento (por exemplo, flat() , tensor() ).

NOTA: Quando alimentados com um tensor dimensional-N, este método retorna um tensor também com N dimensões. Se você quiser selecionar um sub tensor, consulte SubSlice.

RODA: dims() > = 1 requer: 0 <= dim0_start <= dim0_limit <= dim_size(0)

SubSlice

 Tensor SubSlice(
  int64 index
) const 

Selecione um subslice deste tensor ao longo da primeira dimensão.

Quando alimentada com um tensor de N-dimensional, este método retorna um tensor com N-1, onde as dimensões do tensor é devolvido um subslice do tensor de entrada ao longo da primeira dimensão. As dimensões N-1 do tensor devolvido são os últimos n -1 dimensões do tensor de entrada.

NOTA: O tensor retornado pode não satisfazer a mesma exigência de alinhamento como este tensor dependendo da forma. O chamador deve verificar o alinhamento do tensor retornou antes de chamar certos métodos que têm exigência de alinhamento (por exemplo, flat() , tensor() ).

RODA: dims() > = 1 requer: 0 <= index < dim_size(0)

SummarizeValue

std::string SummarizeValue(
  int64 max_entries,
  bool print_v2
) const 

Prestar os primeiros max_entries valores *this em uma string.

tensor

 Tensor()

Cria um 1-dimensional, 0-elemento flutuador tensor.

A devolvido Tensor não é um escalar (forma {}), mas em vez disso é um vazio unidimensional Tensor (forma {0}, numElements () == 0). Uma vez que não tem elementos, ele não precisa ser atribuído um valor e é inicializado por padrão ( IsInitialized () é verdadeiro). Se este é indesejável, considerar a criação de um escalar um elemento que requer inicialização:

 Tensor (DT_FLOAT, TensorShape({}))

      

tensor

 Tensor(
  DataType type,
  const TensorShape & shape
)

Cria um tensor de um determinado type e shape .

Se LogMemory :: IsEnabled () a alocação é registrada como vinda de um kernel do desconhecido e passo. Chamando o Tensor construtor diretamente de dentro de uma Op está obsoleta: usar o OpKernelConstruction / OpKernelContext allocate_ * métodos para alocar um novo tensor, que registram o kernel e passo.

O tampão subjacente é atribuída utilizando um CPUAllocator .

tensor

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

Cria um tensor com a entrada de type e shape , usando o alocador a alocar o tampão subjacente.

Se LogMemory :: IsEnabled () a alocação é registrada como vinda de um kernel do desconhecido e passo. Chamando o Tensor construtor diretamente de dentro de uma Op está obsoleta: usar o OpKernelConstruction / OpKernelContext allocate_ * métodos para alocar um novo tensor, que registram o kernel e passo.

a deve sobreviver a vigência do presente Tensor .

tensor

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

Cria um tensor com a entrada de type e shape , usando o alocador a e o "allocation_attr" para alocar o buffer subjacente especificado.

Se o kernel e passo são conhecidos allocation_attr.allocation_will_be_logged deve ser definido como verdadeiro e LogMemory :: RecordTensorAllocation deve ser chamado após o tensor é construído. Chamando o Tensor construtor diretamente de dentro de uma Op está obsoleta: usar o OpKernelConstruction / OpKernelContext allocate_ * métodos para alocar um novo tensor, que registram o kernel e passo.

a deve sobreviver a vigência do presente Tensor .

tensor

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

Cria um tensor com o tipo de dados de entrada, forma e buf.

Adquire uma ref em buf que pertence a esse Tensor .

tensor

 Tensor(
  DataType type
)

Cria um vazio Tensor do dado tipo de dados.

Como Tensor () , retorna 1-dimensional, 0 elemento Tensor com IsInitialized () retornar True. Veja a Tensor () documentação para mais detalhes.

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(
  const Tensor & other
)

construtor de cópia.

tensor

 Tensor(
  Tensor && other
)

Mova construtor.

Após esta chamada, é seguramente destrutível e pode ser atribuído, mas outras chamadas sobre ele (por exemplo, forma de manipulação) não são válidos.

tensor

 Tensor(
  T *t
)=delete

TotalBytes

size_t TotalBytes() const 

Retorna o uso de memória estimado deste tensor.

UnsafeCopyFromInternal

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

Como BitcastFrom, mas verificação falhar se quaisquer pré-condições não forem atendidas.

Descontinuada. Use BitcastFrom vez e verifique o status retornado.

bit_casted_shaped

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

Retornar os dados de tensores para um Eigen::Tensor com a nova forma especificada no new_sizes e elenco para um novo dtipo T .

Usando um bitcast é útil para operações de mover e copiar. O bitcast permitida é a única diferença da shaped() .

bit_casted_shaped

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

Retornar os dados de tensores para um Eigen::Tensor com a nova forma especificada no new_sizes e elenco para um novo dtipo T .

Usando um bitcast é útil para operações de mover e copiar. O bitcast permitida é a única diferença da shaped() .

bit_casted_tensor

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

Retornar os dados de tensores para um Eigen::Tensor com o mesmo tamanho, mas um elenco bit a bit para o dtipo especificado T .

Usando um bitcast é útil para operações de mover e copiar. NOTA: este é o mesmo que tensor() , exceto uma bitcast é permitido.

bit_casted_tensor

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

Retornar os dados de tensores para um Eigen::Tensor com o mesmo tamanho, mas um elenco bit a bit para o dtipo especificado T .

Usando um bitcast é útil para operações de mover e copiar. NOTA: este é o mesmo que tensor() , exceto uma bitcast é permitido.

dados

void * data() const 

dim_size

int64 dim_size(
  int d
) const 

acessor conveniência para a forma tensor.

escurece

int dims() const 

acessor conveniência para a forma tensor.

Para todos os acessores forma, ver os comentários de métodos de TensorShape em tensor_shape.h .

dtipo

DataType dtype() const 

Retorna o tipo de dados.

plano

TTypes< T >::Flat flat()

Retornar os dados tensores como um Eigen::Tensor do tipo de dados e uma forma especificada.

Estes métodos permitem acessar os dados com as dimensões e tamanhos de sua escolha. Você não precisa saber o número de dimensões do Tensor de chamá-los. No entanto, eles CHECK que os jogos do tipo e as dimensões requeridas cria um Eigen::Tensor com o mesmo número de elementos como o tensor.

Exemplo:

  
    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();

      

plano

TTypes< T >::ConstFlat flat() const 

flat_inner_dims

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

Retorna os dados como um Eigen :: Tensor com dimensões ndims, caindo todos Tensor dimensões, mas os últimos ndims-1 na primeira dimensão do resultado.

Se ndims> DIMS () seguida principais dimensões de tamanho 1 vai ser adicionados para tornar o posto de saída ndims.

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
)

Retorna os dados como um Eigen :: Tensor com dimensões ndims, caindo o primeiro 'começar' Tensor dimensões na primeira dimensão do resultado e os Tensor dimensões dos últimos escurece () - 'começar' - ndims na última dimensão do resultado.

Se 'começar' <0 então a | 'começar' | será adicionado principais dimensões de tamanho 1. Se 'começar' + ndims> DIMS () , em seguida, 'começar' + ndims - DIMS () arrastando dimensões de tamanho 1 vai ser adicionado.

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()

Retorna os dados como um Eigen :: Tensor com dimensões ndims, caindo todos Tensor dimensões, mas os primeiros ndims-1 na última dimensão do resultado.

Se ndims> DIMS () , em seguida, à direita dimensões de tamanho 1 vai ser adicionados para tornar o posto de saída ndims.

flat_outer_dims

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

matriz

TTypes< T >::Matrix matrix()

matriz

TTypes< T >::ConstMatrix matrix() const 

= operador

 Tensor & operator=(
  const Tensor & other
)

operador Atribuir. Esse tensor ações de outras subjacentes armazenamento.

= operador

 Tensor & operator=(
  Tensor && other
)

Mova operador. Veja construtor movimento para mais detalhes.

reinterpret_last_dimension

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

Retornar os dados de tensores para um Eigen::Tensor com os últimos elementos de dimensão convertidos em elementos individuais de um tipo maior.

Por exemplo, isso é útil para grãos que podem tratar NCHW_VECT_C int8 tensores como tensores Int32 NCHW. O sizeof (T) deve ser igual ao tamanho do original tipo de elemento elementos * NUM na última dimensão original. Ndims deve ser de 1 a menos do que o número original de dimensões.

reinterpret_last_dimension

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

Retornar os dados de tensores para um Eigen::Tensor com os últimos elementos de dimensão convertidos em elementos individuais de um tipo maior.

Por exemplo, isso é útil para grãos que podem tratar NCHW_VECT_C int8 tensores como tensores Int32 NCHW. O sizeof (T) deve ser igual ao tamanho do original tipo de elemento elementos * NUM na última dimensão original. Ndims deve ser de 1 a menos do que o número original de dimensões.

escalar

TTypes< T >::Scalar scalar()

Devolver os Tensor dados como um TensorMap de tamanho fixo 1: TensorMap > TensorMap > .

Usando scalar() permite que o compilador para executar optimizações como o tamanho do tensor é conhecida em tempo de compilação.

escalar

TTypes< T >::ConstScalar scalar() const 

forma

const TensorShape & shape() const 

Retorna a forma do tensor.

em forma

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

em forma

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 

Retorna uma StringPiece mapear o buffer do tensor de corrente.

O retornado StringPiece pode apontar ao local de memória em dispositivos que a CPU não pode abordar diretamente.

NOTA: O tampão tensor subjacente é refcounted, de modo que o tempo de vida dos conteúdos mapeadas pelo StringPiece coincide com o tempo de vida do tampão; chamadores deve providenciar para garantir que o tampão não se destruiu enquanto o StringPiece ainda é usado.

RODA: DataTypeCanUseMemcpy(dtype()) .

unaligned_flat

TTypes< T >::UnalignedFlat unaligned_flat()

unaligned_flat

TTypes< T >::UnalignedConstFlat unaligned_flat() const 

unaligned_shaped

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

unaligned_shaped

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

vec

 TTypes <T> :: Vec VEC () 

Retornar os dados tensores como um Eigen :: Tensor com o tipo e tamanhos de este Tensor.

Usar esses métodos quando você sabe o tipo de dados eo número de dimensões do Tensor e você quer um Eigen :: Tensor dimensionado automaticamente para os tamanhos Tensor. A verificação de implementação falhar se qualquer tipo ou tamanhos incompatibilidade.

Exemplo:

 typedef flutuar T; Tensor my_mat (... construído com forma {linhas: 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  (); // verificação falhar como my_mat é 2D. auto VEC = my_mat.tensor  (); // verificação falhar como my_mat é 2D. auto mat = my_mat.matrix  (); // teste falhar como incompatibilidade de tipo. 

vec

 TTypes <T> :: ConstVec VEC () const 

Const versões de todos os métodos acima.

~ Tensor

 Tensor ~ ()