as_lazy_tensor(x,...)## S3 method for class 'dataset'as_lazy_tensor(x, dataset_shapes =NULL, ids =NULL,...)
Arguments
x: (any)
Object to convert to a lazy_tensor
...: (any)
Additional arguments passed to the method.
dataset_shapes: (named list() of (integer() or NULL))
The shapes of the output. Names are the elements of the list returned by the dataset. If the shape is not NULL (unknown, e.g. for images of different sizes) the first dimension must be NA to indicate the batch dimension.
ids: (integer())
Which ids to include in the lazy tensor.
Examples
iris_ds = dataset("iris", initialize =function(){ self$iris = iris[,-5]}, .getbatch =function(i){ list(x = torch_tensor(as.matrix(self$iris[i,])))}, .length =function() nrow(self$iris))()# no need to specify the dataset shapes as they can be inferred from the .getbatch method# only first 5 observationsas_lazy_tensor(iris_ds, ids =1:5)# all observationshead(as_lazy_tensor(iris_ds))iris_ds2 = dataset("iris", initialize =function() self$iris = iris[,-5], .getitem =function(i) list(x = torch_tensor(as.numeric(self$iris[i,]))), .length =function() nrow(self$iris))()# if .getitem is implemented we cannot infer the shapes as they might vary,# so we have to annotate them explicitlyas_lazy_tensor(iris_ds2, dataset_shapes = list(x = c(NA,4L)))[1:5]# Convert a matrixlt = as_lazy_tensor(matrix(rnorm(100), nrow =20))materialize(lt[1:5], rbind =TRUE)