module TensorStream::OpStub
Public Instance Methods
Returns x + y element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 18 def add(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:add, input_a, input_b, name: name) end
Returns the index with the largest value across axes of a tensor.
@param input_a tensor X (of type NUMERIC_TYPES) @param axis Describes which axis of the input tensor to reduce across. For vectors, use axis = 0 (of type INTEGER_TYPES)
Options: @option name Optional name @option dimension Same as axis @option output_type Output data type defaults to int32 default (:int32) @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 36 def argmax(input_a, axis = nil, name: nil, dimension: nil, output_type: :int32) check_allowed_types(input_a, TensorStream::Ops::NUMERIC_TYPES) check_allowed_types(axis, TensorStream::Ops::INTEGER_TYPES) _op(:argmax, input_a, axis, name: name, dimension: dimension, output_type: output_type) end
Returns the index with the smallest value across axes of a tensor.
@param input_a tensor X (of type NUMERIC_TYPES) @param axis Describes which axis of the input tensor to reduce across. For vectors, use axis = 0 (of type INTEGER_TYPES)
Options: @option name Optional name @option dimension Same as axis @option output_type Output data type defaults to int32 default (:int32) @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 55 def argmin(input_a, axis = nil, name: nil, dimension: nil, output_type: :int32) check_allowed_types(input_a, TensorStream::Ops::NUMERIC_TYPES) check_allowed_types(axis, TensorStream::Ops::INTEGER_TYPES) _op(:argmin, input_a, axis, name: name, dimension: dimension, output_type: output_type) end
Returns element-wise smallest integer in not less than x
@param input_a tensor X (of type FLOATING_POINT_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 71 def ceil(input_a, name: nil) check_allowed_types(input_a, TensorStream::Ops::FLOATING_POINT_TYPES) _op(:ceil, input_a, name: name) end
Computes cos of input element-wise.
@param input_a tensor X (of type FLOATING_POINT_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 86 def cos(input_a, name: nil) check_allowed_types(input_a, TensorStream::Ops::FLOATING_POINT_TYPES) _op(:cos, input_a, name: name) end
Returns x / y element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 103 def div(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:div, input_a, input_b, name: name) end
Returns the truth value of (x == y) element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 120 def equal(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:equal, input_a, input_b, name: name) end
Inserts a dimension of 1 into a tensor's shape. Given a tensor input, this operation inserts a dimension of 1 at the dimension index axis of input's shape. The dimension index axis starts at zero; if you specify a negative number for axis it is counted backward from the end.
@param input A tensor @param axis Specifies the dimension index at which to expand the shape of input. Must be in the range [-rank(input) - 1, rank(input)].
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 138 def expand_dims(input, axis, name: nil) _op(:expand_dims, input, axis, name: name) end
This operation creates a tensor of shape dims and fills it with value.
@param dims tensor shape @param value scalar value to fill with
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 153 def fill(dims, value, name: nil) _op(:fill, dims, value, name: name) end
Returns element-wise largest integer not greater than x.
@param input_a tensor X (of type FLOATING_POINT_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 167 def floor(input_a, name: nil) check_allowed_types(input_a, TensorStream::Ops::FLOATING_POINT_TYPES) _op(:floor, input_a, name: name) end
Returns element-wise integer divistion.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 184 def floor_div(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:floor_div, input_a, input_b, name: name) end
Returns the truth value of (x > y) element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 201 def greater(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:greater, input_a, input_b, name: name) end
Returns the truth value of (x >= y) element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 218 def greater_equal(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:greater_equal, input_a, input_b, name: name) end
Returns the truth value of (x < y) element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 235 def less(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:less, input_a, input_b, name: name) end
Returns the truth value of (x <= y) element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 252 def less_equal(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:less_equal, input_a, input_b, name: name) end
Computes natural logarithm of x element-wise.
@param input tensor X
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 267 def log(input, name: nil) _op(:log, input, name: name) end
Multiplies matrix a by matrix b, producing a * b. The inputs must, following any transpositions, be tensors of rank 2 .
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option transpose_a Transpose matrix A first default (false) @option transpose_b Transpose matrix B first default (false) @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 285 def mat_mul(input_a, input_b, transpose_a: false, transpose_b: false, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:mat_mul, input_a, input_b, transpose_a: transpose_a, transpose_b: transpose_b, name: name) end
Returns the max of x and y (i.e. x > y ? x : y) element-wise.
This operation supports broadcasting
@param input_a tensor X (of type NUMERIC_TYPES) @param input_b tensor Y (of type NUMERIC_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 303 def max(input_a, input_b, name: nil) check_allowed_types(input_a, TensorStream::Ops::NUMERIC_TYPES) check_allowed_types(input_b, TensorStream::Ops::NUMERIC_TYPES) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:max, input_a, input_b, name: name) end
Returns the min of x and y (i.e. x < y ? x : y) element-wise.
This operation supports broadcasting
@param input_a tensor X (of type NUMERIC_TYPES) @param input_b tensor Y (of type NUMERIC_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 322 def min(input_a, input_b, name: nil) check_allowed_types(input_a, TensorStream::Ops::NUMERIC_TYPES) check_allowed_types(input_b, TensorStream::Ops::NUMERIC_TYPES) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:min, input_a, input_b, name: name) end
Returns element-wise remainder of division.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 341 def mod(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:mod, input_a, input_b, name: name) end
Returns x * y element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 358 def mul(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:mul, input_a, input_b, name: name) end
Computes numerical negative value element-wise.
@param input tensor X
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 373 def negate(input, name: nil) _op(:negate, input, name: name) end
Returns the truth value of (x != y) element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 389 def not_equal(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:not_equal, input_a, input_b, name: name) end
Creates a tensor with all elements set to 1. Given a single tensor (tensor), this operation returns a tensor of the same type and shape as tensor with all elements set to 1. Optionally, you can specify a new type (dtype) for the returned tensor.
@param input A tensor
Options: @option dtype Optional new data type to cast into @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 408 def ones_like(input, dtype: nil, name: nil) _op(:ones_like, input, data_type: dtype, name: name) end
Computes the power of one value to another X^Y element wise
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 424 def pow(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:pow, input_a, input_b, name: name) end
Computes the product of elements across dimensions of a tensor. Reduces input_tensor along the dimensions given in axis. Unless keepdims is true, the rank of the tensor is reduced by 1 for each entry in axis. If keepdims is true, the reduced dimensions are retained with length 1. If axis has no entries, all dimensions are reduced, and a tensor with a single element is returned.
@param input_a tensor X @param axis tensor X (of type INTEGER_TYPES)
Options: @option name Optional name @option keepdims If true, retains reduced dimensions with length 1. default (false) @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 445 def prod(input_a, axis = nil, name: nil, keepdims: false) check_allowed_types(axis, TensorStream::Ops::INTEGER_TYPES) input_a = TensorStream.convert_to_tensor(input_a) return input_a if input_a.shape.scalar? axis = cast_axis(input_a, axis) _op(:prod, input_a, axis, name: name, keepdims: keepdims) end
Outputs random values from a uniform distribution.
@param shape A 1-D integer Tensor
or array. The shape of the output tensor.
Options: @option name Optional name @option dtype The type of the output: float16, float32, float64, int32, or int64 default (:float32) @option minval A 0-D Tensor
or ruby value of type dtype. The lower bound on the range of random values to generate. Defaults to 0. default (0) @option maxval A 0-D Tensor
or ruby value of type dtype. The upper bound on the range of random values to generate. Defaults to 1 if dtype is floating point. default (1) @option seed A ruby integer. Used to create a random seed for the distribution. See set_random_seed for behavior. @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 468 def random_uniform(shape, name: nil, dtype: :float32, minval: 0, maxval: 1, seed: nil) _op(:random_uniform, shape, name: name, dtype: dtype, minval: minval, maxval: maxval, seed: seed) end
Creates a sequence of numbers. Creates a sequence of numbers that begins at start and extends by increments of delta up to but not including limit.
@param start Acts as first entry in the range if limit is not nil; otherwise, acts as range limit and first entry defaults to 0. @param limit Upper limit of sequence, exclusive. If nil, defaults to the value of start while the first entry of the range defaults to 0. @param delta Number that increments start. Defaults to 1.
Options: @option name A name for the operation. Defaults to “range”. default (“range”) @option dtype The type of the elements of the resulting tensor. @option output_type Output data type defaults to int32 default (:int32) @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 487 def range(start = 0, limit = 0, delta = 1, name: "range", dtype: nil, output_type: :int32) _op(:range, start, limit, delta, name: name, dtype: dtype, output_type: output_type) end
Returns the rank of a tensor
@param input A tensor
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 501 def rank(input, name: nil) input = convert_to_tensor(input) return cons(input.shape.ndims) if input.shape.known? _op(:rank, input, name: name) end
Reshapes a tensor. Given tensor, this operation returns a tensor that has the same values as tensor with shape shape.
@param input A tensor @param shape A new tensor shape
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 519 def reshape(input, shape, name: nil) _op(:reshape, input, shape, name: name) end
Rounds the values of a tensor to the nearest integer, element-wise
@param input_a tensor X (of type FLOATING_POINT_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 533 def round(input_a, name: nil) check_allowed_types(input_a, TensorStream::Ops::FLOATING_POINT_TYPES) _op(:round, input_a, name: name) end
Computes reciprocal of square root of x element-wise.
@param input_a tensor X (of type FLOATING_POINT_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 548 def rsqrt(input_a, name: nil) check_allowed_types(input_a, TensorStream::Ops::FLOATING_POINT_TYPES) _op(:rsqrt, input_a, name: name) end
This operation returns a 1-D integer tensor representing the shape of input
@param input A tensor
Options: @option name Optional name @option out_type Optional output type default (:int32) @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 564 def shape(input, name: nil, out_type: :int32) return constant(shape_eval(input, out_type), dtype: out_type, name: "Shape/#{name}") if input.is_a?(Array) && !input[0].is_a?(Tensor) return constant(input.shape.shape, dtype: out_type, name: "Shape/#{input.name}_c") if shape_full_specified(input) _op(:shape, input, name: name, out_type: out_type) end
Computes sigmoid of x element-wise.
@param input_a tensor X (of type FLOATING_POINT_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 580 def sigmoid(input_a, name: nil) check_allowed_types(input_a, TensorStream::Ops::FLOATING_POINT_TYPES) _op(:sigmoid, input_a, name: name) end
Computes sign of input element-wise. y = sign(x) = -1 if x < 0; 0 if x == 0 or tf.is_nan(x); 1 if x > 0.
Zero is returned for NaN inputs.
@param input_a tensor X
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 597 def sign(input_a, name: nil) _op(:sign, input_a, name: name) end
Computes sin of input element-wise.
@param input_a tensor X (of type FLOATING_POINT_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 611 def sin(input_a, name: nil) check_allowed_types(input_a, TensorStream::Ops::FLOATING_POINT_TYPES) _op(:sin, input_a, name: name) end
Returns the size of a tensor. Returns a 0-D Tensor
representing the number of elements in input of type out_type. Defaults to :int32.
@param input A tensor
Options: @option name Optional name @option out_type Optional output type default (:int32) @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 628 def size(input, name: nil, out_type: :int32) _op(:size, input, name: name, out_type: out_type) end
Extracts a strided slice of a tensor this op extracts a slice of size `(end-begin)/stride`
from the given `input_` tensor. Starting at the location specified by `begin` the slice continues by adding `stride` to the index until all dimensions are not less than `end`. Note that a stride can be negative, which causes a reverse slice.
@param input A tensor @param _begin start index @param _end end index @param strides end index
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 650 def strided_slice(input, _begin, _end, strides = nil, name: nil) _op(:strided_slice, input, _begin, _end, strides, name: name) end
Returns x - y element-wise.
This operation supports broadcasting
@param input_a tensor X @param input_b tensor Y
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 666 def sub(input_a, input_b, name: nil) input_a, input_b = apply_data_type_coercion(input_a, input_b) _op(:sub, input_a, input_b, name: name) end
Computes the sum of elements across dimensions of a tensor. Reduces input_tensor along the dimensions given in axis. Unless keepdims is true, the rank of the tensor is reduced by 1 for each entry in axis. If keepdims is true, the reduced dimensions are retained with length 1. If axis has no entries, all dimensions are reduced, and a tensor with a single element is returned.
@param input_a tensor X @param axis_p tensor X (of type INTEGER_TYPES)
Options: @option axis axis @option name Optional name @option keepdims If true, retains reduced dimensions with length 1. default (false) @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 689 def sum(input_a, axis_p = nil, axis: nil, name: nil, keepdims: false) check_allowed_types(axis_p, TensorStream::Ops::INTEGER_TYPES) input_a = TensorStream.convert_to_tensor(input_a) return input_a if input_a.shape.scalar? axis_p = axis_p || axis axis_p = cast_axis(input_a, axis_p) _op(:sum, input_a, axis_p, name: name, keepdims: keepdims) end
Computes tan of input element-wise.
@param input_a tensor X (of type FLOATING_POINT_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 709 def tan(input_a, name: nil) check_allowed_types(input_a, TensorStream::Ops::FLOATING_POINT_TYPES) _op(:tan, input_a, name: name) end
Computes tanh of input element-wise.
@param input_a tensor X (of type FLOATING_POINT_TYPES)
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 724 def tanh(input_a, name: nil) check_allowed_types(input_a, TensorStream::Ops::FLOATING_POINT_TYPES) _op(:tanh, input_a, name: name) end
Constructs a tensor by tiling a given tensor. This operation creates a new tensor by replicating input multiples times. The output tensor's i'th dimension has input.dims(i) * multiples elements, and the values of input are replicated multiples times along the 'i'th dimension. For example, tiling [a b c d] by [2] produces [a b c d a b c d].
@param input A tensor @param multiples Must be one of the following types: int32, int64. 1-D. Length must be the same as the number of dimensions in input
Options: @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 743 def tile(input, multiples, name: nil) _op(:tile, input, multiples, name: name) end
Finds values and indices of the `k` largest entries for the last dimension.
@param input 1-D or higher `Tensor` with last dimension at least `k`. @param k 0-D `int32` `Tensor`. Number of top elements to look for along the last dimension (along each row for matrices)
Options: @option sorted If true the resulting `k` elements will be sorted by the values in descending order. default (true) @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 759 def top_k(input, k = 1, sorted: true, name: nil) result = _op(:top_k, input, k, sorted: sorted, name: name) [result[0], result[1]] end
Creates a tensor with all elements set to zero
@param shape A 1-D integer Tensor
or ruby array. The shape of the output tensor.
Options: @option dtype Optional name default (:float32) @option name Optional name @return Tensor
# File lib/tensor_stream/generated_stub/ops.rb, line 775 def zeros(shape, dtype: :float32, name: nil) _op(:zeros, shape, dtype: dtype, name: name) end