本文档为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
TensorShapefrom the provided sizes. REQUIRES:dim_sizes[i] >= 0
- Construct a
tensorflow::TensorShape::TensorShape(std::initializer_list< int64 > dim_sizes)-
tensorflow::TensorShape::TensorShape(const TensorShapeProto &proto)- REQUIRES:
IsValid(proto)
- REQUIRES:
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
- Add a dimension to the end ("inner-most"). REQUIRES:
-
void tensorflow::TensorShape::AppendShape(const TensorShape &shape)- Appends all the dimensions from
shape.
- Appends all the dimensions from
-
void tensorflow::TensorShape::InsertDim(int d, int64 size)- Insert a dimension somewhere in the
TensorShape. REQUIRES:0 <= d <= dims()REQUIRES:size >= 0
- Insert a dimension somewhere in the
-
void tensorflow::TensorShape::set_dim(int d, int64 size)- Modifies the size of the dimension
dto besizeREQUIRES:0 <= d < dims()REQUIRES:size >= 0
- Modifies the size of the dimension
-
void tensorflow::TensorShape::RemoveDim(int d)- Removes dimension
dfrom theTensorShape. REQUIRES:0 <= d < dims()
- Removes dimension
-
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()
- Returns the number of elements in dimension
-
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
*protofrom*this.
- Fill
-
Eigen::DSizes< Eigen::DenseIndex, NDIMS > tensorflow::TensorShape::AsEigenDSizes() const- Fill
*dsizesfrom*this.
- Fill
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
trueiffprotois a valid tensor shape.
- Returns
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.