类似于pandas_df.shape,有没有tensorflow.data.Dataset的对应方法?谢谢。
回答:
我不知道有没有内置的方法,但是可以通过Dataset._tensors
属性来获取形状。示例:
import tensorflow as tfdef dataset_shapes(dataset): try: return [x.get_shape().as_list() for x in dataset._tensors] except TypeError: return dataset._tensors.get_shape().as_list()
使用方法如下:
from sklearn.datasets import make_blobsx_train, y_train = make_blobs(n_samples=10, n_features=2, centers=[[1, 1], [-1, -1]], cluster_std=0.5)dataset = tf.data.Dataset.from_tensor_slices(x_train)print(dataset_shapes(dataset)) # [10, 2]dataset = tf.data.Dataset.from_tensor_slices((x_train, y_train))print(dataset_shapes(dataset)) # [[10, 2], [10]]