本文档为TensorFlow参考文档,本转载已得到TensorFlow中文社区授权。
Class tensorflow::TensorShape
Manages the dimensions of a Tensor and their sizes.
Member Summary
tensorflow::TensorShape::TensorShape(gtl::ArraySlice< int64 > dim_sizes)
Construct a TensorShape from the provided sizes. REQUIRES: dim_sizes[i] >= 0 tensorflow::TensorShape::TensorShape(std::initializer_list< int64 > dim_sizes) tensorflow::TensorShape::TensorShape(const TensorShapeProto &proto)
REQUIRES: IsValid(proto) tensorflow::TensorShape::TensorShape() void tensorflow::TensorShape::Clear()
Clear a tensor shape. void tensorflow::TensorShape::AddDim(int64 size)
Add a dimension to the end ("inner-most"). REQUIRES: size >= 0 void tensorflow::TensorShape::AppendShape(const TensorShape &shape)
Appends all the dimensions from shape. void tensorflow::TensorShape::InsertDim(int d, int64 size)
Insert a dimension somewhere in the TensorShape. REQUIRES: 0 <= d <= dims()REQUIRES: size >= 0 void tensorflow::TensorShape::set_dim(int d, int64 size)
Modifies the size of the dimension d to be size REQUIRES: 0 <= d < dims() REQUIRES: size >= 0 void tensorflow::TensorShape::RemoveDim(int d)
Removes dimension d from the TensorShape. REQUIRES: 0 <= d < dims() int tensorflow::TensorShape::dims() const
Return the number of dimensions in the tensor. int64 tensorflow::TensorShape::dim_size(int d) const
Returns the number of elements in dimension d. REQUIRES: 0 <= d < dims() gtl::ArraySlice<int64> tensorflow::TensorShape::dim_sizes() const
Returns sizes of all dimensions. int64 tensorflow::TensorShape::num_elements() const
Returns the number of elements in the tensor.bool tensorflow::TensorShape::IsSameSize(const TensorShape &b) constbool tensorflow::TensorShape::operator==(const TensorShape &b) const void tensorflow::TensorShape::AsProto(TensorShapeProto *proto) const
Fill *proto from *this. Eigen::DSizes< Eigen::DenseIndex, NDIMS > tensorflow::TensorShape::AsEigenDSizes() const
Fill *dsizes from *this.Eigen::DSizes< Eigen::DenseIndex, NDIMS > tensorflow::TensorShape::AsEigenDSizesWithPadding() const TensorShapeIter tensorflow::TensorShape::begin() const
For iterating through the dimensions.TensorShapeIter tensorflow::TensorShape::end() const string tensorflow::TensorShape::DebugString() const
For error messages.string tensorflow::TensorShape::ShortDebugString() const static bool tensorflow::TensorShape::IsValid(const TensorShapeProto &proto)
Returns true iff proto is a valid tensor shape.
Member Details
tensorflow::TensorShape::TensorShape(gtl::ArraySlice< int64 > dim_sizes)
Construct a TensorShape from the provided sizes. REQUIRES: dim_sizes[i] >= 0
tensorflow::TensorShape::TensorShape(std::initializer_list< int64 > dim_sizes)
tensorflow::TensorShape::TensorShape(const TensorShapeProto &proto)
REQUIRES: IsValid(proto)
tensorflow::TensorShape::TensorShape()
Create a tensor shape with no dimensions and one element, which you can then call AddDim() on.
void tensorflow::TensorShape::Clear()
Clear a tensor shape.
void tensorflow::TensorShape::AddDim(int64 size)
Add a dimension to the end ("inner-most"). REQUIRES: size >= 0
void tensorflow::TensorShape::AppendShape(const TensorShape &shape)
Appends all the dimensions from shape.
void tensorflow::TensorShape::InsertDim(int d, int64 size)
Insert a dimension somewhere in the TensorShape. REQUIRES: 0 <= d <= dims() REQUIRES: size >= 0
void tensorflow::TensorShape::set_dim(int d, int64 size)
Modifies the size of the dimension d to be size REQUIRES: 0 <= d < dims() REQUIRES: size >= 0
void tensorflow::TensorShape::RemoveDim(int d)
Removes dimension d from the TensorShape. REQUIRES: 0 <= d < dims()
int tensorflow::TensorShape::dims() const
Return the number of dimensions in the tensor.
int64 tensorflow::TensorShape::dim_size(int d) const
Returns the number of elements in dimension d. REQUIRES: 0 <= d < dims()
gtl::ArraySlice<int64> tensorflow::TensorShape::dim_sizes() const
Returns sizes of all dimensions.
int64 tensorflow::TensorShape::num_elements() const
Returns the number of elements in the tensor.
We use int64 and not size_t to be compatible with Eigen::Tensor which uses ptrdiff_t.
bool tensorflow::TensorShape::IsSameSize(const TensorShape &b) const
Returns true if *this and b have the same sizes. Ignores dimension names.
bool tensorflow::TensorShape::operator==(const TensorShape &b) const
void tensorflow::TensorShape::AsProto(TensorShapeProto *proto) const
Fill *proto from *this.
Eigen::DSizes< Eigen::DenseIndex, NDIMS > tensorflow::TensorShape::AsEigenDSizes() const
Fill *dsizes from *this.
Eigen::DSizes< Eigen::DenseIndex, NDIMS > tensorflow::TensorShape::AsEigenDSizesWithPadding() const
Same as AsEigenDSizes() but allows for NDIMS > dims() in which case we pad the rest of the sizes with 1.
TensorShapeIter tensorflow::TensorShape::begin() const
For iterating through the dimensions.
TensorShapeIter tensorflow::TensorShape::end() const
string tensorflow::TensorShape::DebugString() const
For error messages.
string tensorflow::TensorShape::ShortDebugString() const
static bool tensorflow::TensorShape::IsValid(const TensorShapeProto &proto)
Returns true iff proto is a valid tensor shape.