tensor
startorch.tensor ¶
Contain tensor generators.
startorch.tensor.Abs ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the absolute value of a tensor.
This tensor generator is equivalent to: output = abs(tensor)
Example usage:
>>> from startorch.tensor import Abs, RandNormal
>>> generator = Abs(RandNormal())
>>> generator
AbsTensorGenerator(
(tensor): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.AbsTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the absolute value of a tensor.
This tensor generator is equivalent to: output = abs(tensor)
Example usage:
>>> from startorch.tensor import Abs, RandNormal
>>> generator = Abs(RandNormal())
>>> generator
AbsTensorGenerator(
(tensor): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Acosh ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the inverse hyperbolic cosine (arccosh) of each value.
Example usage:
>>> from startorch.tensor import Acosh, RandUniform
>>> generator = Acosh(RandUniform(low=1.0, high=5.0))
>>> generator
AcoshTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=5.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.AcoshTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the inverse hyperbolic cosine (arccosh) of each value.
Example usage:
>>> from startorch.tensor import Acosh, RandUniform
>>> generator = Acosh(RandUniform(low=1.0, high=5.0))
>>> generator
AcoshTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=5.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Add ¶
Bases: BaseTensorGenerator
Implement a tensor generator that adds several tensor.
This tensor generator is equivalent to:
output = tensor_1 + tensor_2 + ... + tensor_n
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generators |
Sequence[BaseTensorGenerator | dict]
|
The tensor generators. |
required |
Raises:
Type | Description |
---|---|
ValueError
|
if no sequence generator is provided. |
Example usage:
>>> from startorch.tensor import Add, RandNormal, RandUniform
>>> generator = Add([RandUniform(), RandNormal()])
>>> generator
AddTensorGenerator(
(0): RandUniformTensorGenerator(low=0.0, high=1.0)
(1): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.AddScalar ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that adds a scalar value to a generated batch of tensors.
This tensor generator is equivalent to:
output = tensor + scalar
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generator |
BaseTensorGenerator | dict
|
The tensor generator or its configuration. |
required |
value |
float
|
The scalar value to add. |
required |
Example usage:
>>> from startorch.tensor import AddScalar, RandUniform
>>> generator = AddScalar(RandUniform(), 10.0)
>>> generator
AddScalarTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
(value): 10.0
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.AddScalarTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that adds a scalar value to a generated batch of tensors.
This tensor generator is equivalent to:
output = tensor + scalar
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generator |
BaseTensorGenerator | dict
|
The tensor generator or its configuration. |
required |
value |
float
|
The scalar value to add. |
required |
Example usage:
>>> from startorch.tensor import AddScalar, RandUniform
>>> generator = AddScalar(RandUniform(), 10.0)
>>> generator
AddScalarTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
(value): 10.0
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.AddTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator that adds several tensor.
This tensor generator is equivalent to:
output = tensor_1 + tensor_2 + ... + tensor_n
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generators |
Sequence[BaseTensorGenerator | dict]
|
The tensor generators. |
required |
Raises:
Type | Description |
---|---|
ValueError
|
if no sequence generator is provided. |
Example usage:
>>> from startorch.tensor import Add, RandNormal, RandUniform
>>> generator = Add([RandUniform(), RandNormal()])
>>> generator
AddTensorGenerator(
(0): RandUniformTensorGenerator(low=0.0, high=1.0)
(1): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Asinh ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the inverse hyperbolic sine (arcsinh) of each value.
Example usage:
>>> from startorch.tensor import Asinh, RandUniform
>>> generator = Asinh(RandUniform(low=0.0, high=1000.0))
>>> generator
AsinhTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1000.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.AsinhTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the inverse hyperbolic sine (arcsinh) of each value.
Example usage:
>>> from startorch.tensor import Asinh, RandUniform
>>> generator = Asinh(RandUniform(low=0.0, high=1000.0))
>>> generator
AsinhTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1000.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.AsinhUniform ¶
Bases: BaseTensorGenerator
Implement a tensor generator to generate tensors by sampling values from an asinh-uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (inclusive). |
required |
high |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, AsinhUniform
>>> generator = AsinhUniform(
... low=RandUniform(low=-1000, high=-100), high=RandUniform(low=100, high=1000)
... )
>>> generator
AsinhUniformTensorGenerator(
(low): RandUniformTensorGenerator(low=-1000.0, high=-100.0)
(high): RandUniformTensorGenerator(low=100.0, high=1000.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.AsinhUniformTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator to generate tensors by sampling values from an asinh-uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (inclusive). |
required |
high |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, AsinhUniform
>>> generator = AsinhUniform(
... low=RandUniform(low=-1000, high=-100), high=RandUniform(low=100, high=1000)
... )
>>> generator
AsinhUniformTensorGenerator(
(low): RandUniformTensorGenerator(low=-1000.0, high=-100.0)
(high): RandUniformTensorGenerator(low=100.0, high=1000.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Atanh ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the inverse hyperbolic tangent (arctanh) of each value.
Example usage:
>>> from startorch.tensor import Atanh, RandUniform
>>> generator = Atanh(RandUniform(low=-0.5, high=0.5))
>>> generator
AtanhTensorGenerator(
(tensor): RandUniformTensorGenerator(low=-0.5, high=0.5)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.AtanhTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the inverse hyperbolic tangent (arctanh) of each value.
Example usage:
>>> from startorch.tensor import Atanh, RandUniform
>>> generator = Atanh(RandUniform(low=-0.5, high=0.5))
>>> generator
AtanhTensorGenerator(
(tensor): RandUniformTensorGenerator(low=-0.5, high=0.5)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.BaseTensorGenerator ¶
Bases: ABC
Define the base class to generate tensor.
A child class has to implement the generate
method.
Example usage:
>>> import torch
>>> from startorch.tensor import RandUniform
>>> generator = RandUniform()
>>> generator
RandUniformTensorGenerator(low=0.0, high=1.0)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.BaseTensorGenerator.generate
abstractmethod
¶
generate(
size: tuple[int, ...], rng: Generator | None = None
) -> Tensor
Generate a tensor.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
size |
tuple[int, ...]
|
The size of the tensor to generate. |
required |
rng |
Generator | None
|
An optional random number generator. |
None
|
Returns:
Type | Description |
---|---|
Tensor
|
The generated tensor with the specified size. |
Example usage:
>>> import torch
>>> from startorch.tensor import RandUniform
>>> generator = RandUniform()
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.BaseWrapperTensorGenerator ¶
Bases: BaseTensorGenerator
Define a base class to easily wrap a tensor generator into another tensor generator.
Note
It is possible to wrap a tensor generator into another tensor generator without using this base class. This class makes it more convenient and reduce duplicate code.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generator |
BaseTensorGenerator | dict
|
The tensor generator or its configuration. |
required |
startorch.tensor.Cauchy ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
loc |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the location. |
required |
scale |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the scale. |
required |
Example usage:
>>> from startorch.tensor import Cauchy, RandUniform
>>> generator = Cauchy(
... loc=RandUniform(low=-1.0, high=1.0), scale=RandUniform(low=1.0, high=2.0)
... )
>>> generator
CauchyTensorGenerator(
(loc): RandUniformTensorGenerator(low=-1.0, high=1.0)
(scale): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.CauchyTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
loc |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the location. |
required |
scale |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the scale. |
required |
Example usage:
>>> from startorch.tensor import Cauchy, RandUniform
>>> generator = Cauchy(
... loc=RandUniform(low=-1.0, high=1.0), scale=RandUniform(low=1.0, high=2.0)
... )
>>> generator
CauchyTensorGenerator(
(loc): RandUniformTensorGenerator(low=-1.0, high=1.0)
(scale): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Clamp ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator to generate tensors where the values are clamped.
Note: min_value
and max_value
cannot be both None
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generator |
BaseTensorGenerator | dict
|
The tensor generator or its configuration. |
required |
min_value |
float | None
|
The lower bound. If |
required |
max_value |
float | None
|
The upper bound. If |
required |
Raises:
Type | Description |
---|---|
ValueError
|
if both |
Example usage:
>>> from startorch.tensor import Clamp, RandUniform
>>> generator = Clamp(RandUniform(low=1.0, high=50.0), min_value=2.0, max_value=10.0)
>>> generator
ClampTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=50.0)
(min_value): 2.0
(max_value): 10.0
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.ClampTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator to generate tensors where the values are clamped.
Note: min_value
and max_value
cannot be both None
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generator |
BaseTensorGenerator | dict
|
The tensor generator or its configuration. |
required |
min_value |
float | None
|
The lower bound. If |
required |
max_value |
float | None
|
The upper bound. If |
required |
Raises:
Type | Description |
---|---|
ValueError
|
if both |
Example usage:
>>> from startorch.tensor import Clamp, RandUniform
>>> generator = Clamp(RandUniform(low=1.0, high=50.0), min_value=2.0, max_value=10.0)
>>> generator
ClampTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=50.0)
(min_value): 2.0
(max_value): 10.0
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Cosh ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the hyperbolic cosine (cosh) of each value.
Example usage:
>>> from startorch.tensor import Cosh, RandUniform
>>> generator = Cosh(RandUniform())
>>> generator
CoshTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.CoshTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the hyperbolic cosine (cosh) of each value.
Example usage:
>>> from startorch.tensor import Cosh, RandUniform
>>> generator = Cosh(RandUniform())
>>> generator
CoshTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Div ¶
Bases: BaseTensorGenerator
Implement a tensor generator that divides one tensor by another one.
This tensor generator is equivalent to
output = dividend / divisor
(a.k.a. true division)output = dividend // divisor
(a.k.a. floor division)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
dividend |
BaseTensorGenerator | dict
|
The dividend tensor generator or its configuration. |
required |
divisor |
BaseTensorGenerator | dict
|
The divisor tensor generator or its configuration. |
required |
rounding_mode |
str | None
|
The
type of rounding applied to the result.
- |
None
|
Example usage:
>>> from startorch.tensor import Div, RandUniform
>>> generator = Div(RandUniform(), RandUniform(low=1.0, high=10.0))
>>> generator
DivTensorGenerator(
(dividend): RandUniformTensorGenerator(low=0.0, high=1.0)
(divisor): RandUniformTensorGenerator(low=1.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.DivTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator that divides one tensor by another one.
This tensor generator is equivalent to
output = dividend / divisor
(a.k.a. true division)output = dividend // divisor
(a.k.a. floor division)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
dividend |
BaseTensorGenerator | dict
|
The dividend tensor generator or its configuration. |
required |
divisor |
BaseTensorGenerator | dict
|
The divisor tensor generator or its configuration. |
required |
rounding_mode |
str | None
|
The
type of rounding applied to the result.
- |
None
|
Example usage:
>>> from startorch.tensor import Div, RandUniform
>>> generator = Div(RandUniform(), RandUniform(low=1.0, high=10.0))
>>> generator
DivTensorGenerator(
(dividend): RandUniformTensorGenerator(low=0.0, high=1.0)
(divisor): RandUniformTensorGenerator(low=1.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Exp ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the exponential of a tensor.
This tensor generator is equivalent to: output = exp(tensor)
Example usage:
>>> from startorch.tensor import Exp, RandUniform
>>> generator = Exp(RandUniform(low=1.0, high=5.0))
>>> generator
ExpTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=5.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.ExpTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the exponential of a tensor.
This tensor generator is equivalent to: output = exp(tensor)
Example usage:
>>> from startorch.tensor import Exp, RandUniform
>>> generator = Exp(RandUniform(low=1.0, high=5.0))
>>> generator
ExpTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=5.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Exponential ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors by sampling values from an Exponential distribution.
The rates of the Exponential distribution are generated by the rate generator. The rate generator should return the rate for each value in the sequence.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
BaseTensorGenerator | dict
|
The rate generator or its configuration. The rate generator should return valid rate values. |
required |
Example usage:
>>> from startorch.tensor import Exponential, RandUniform
>>> generator = Exponential(rate=RandUniform(low=1.0, high=100.0))
>>> generator
ExponentialTensorGenerator(
(rate): RandUniformTensorGenerator(low=1.0, high=100.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.ExponentialTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors by sampling values from an Exponential distribution.
The rates of the Exponential distribution are generated by the rate generator. The rate generator should return the rate for each value in the sequence.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
BaseTensorGenerator | dict
|
The rate generator or its configuration. The rate generator should return valid rate values. |
required |
Example usage:
>>> from startorch.tensor import Exponential, RandUniform
>>> generator = Exponential(rate=RandUniform(low=1.0, high=100.0))
>>> generator
ExponentialTensorGenerator(
(rate): RandUniformTensorGenerator(low=1.0, high=100.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Float ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that converts tensor values to float.
Example usage:
>>> from startorch.tensor import Float, RandInt
>>> generator = Float(RandInt(low=0, high=10))
>>> generator
FloatTensorGenerator(
(tensor): RandIntTensorGenerator(low=0, high=10)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.FloatTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that converts tensor values to float.
Example usage:
>>> from startorch.tensor import Float, RandInt
>>> generator = Float(RandInt(low=0, high=10))
>>> generator
FloatTensorGenerator(
(tensor): RandIntTensorGenerator(low=0, high=10)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Fmod ¶
Bases: BaseTensorGenerator
Implement a tensor generator that computes the element-wise remainder of division.
This tensor generator is equivalent to:
output = dividend % divisor
Parameters:
Name | Type | Description | Default |
---|---|---|---|
dividend |
BaseTensorGenerator | dict
|
The tensor generator (or its configuration) that generates the dividend values. |
required |
divisor |
BaseTensorGenerator | dict | float
|
The divisor. |
required |
Example usage:
>>> from startorch.tensor import Fmod, RandUniform
>>> generator = Fmod(dividend=RandUniform(low=-100, high=100), divisor=10.0)
>>> generator
FmodTensorGenerator(
(dividend): RandUniformTensorGenerator(low=-100.0, high=100.0)
(divisor): 10.0
)
>>> generator.generate((2, 6))
tensor([[...]])
>>> generator = Fmod(
... dividend=RandUniform(low=-100, high=100), divisor=RandUniform(low=1, high=10)
... )
>>> generator
FmodTensorGenerator(
(dividend): RandUniformTensorGenerator(low=-100.0, high=100.0)
(divisor): RandUniformTensorGenerator(low=1.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.FmodTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator that computes the element-wise remainder of division.
This tensor generator is equivalent to:
output = dividend % divisor
Parameters:
Name | Type | Description | Default |
---|---|---|---|
dividend |
BaseTensorGenerator | dict
|
The tensor generator (or its configuration) that generates the dividend values. |
required |
divisor |
BaseTensorGenerator | dict | float
|
The divisor. |
required |
Example usage:
>>> from startorch.tensor import Fmod, RandUniform
>>> generator = Fmod(dividend=RandUniform(low=-100, high=100), divisor=10.0)
>>> generator
FmodTensorGenerator(
(dividend): RandUniformTensorGenerator(low=-100.0, high=100.0)
(divisor): 10.0
)
>>> generator.generate((2, 6))
tensor([[...]])
>>> generator = Fmod(
... dividend=RandUniform(low=-100, high=100), divisor=RandUniform(low=1, high=10)
... )
>>> generator
FmodTensorGenerator(
(dividend): RandUniformTensorGenerator(low=-100.0, high=100.0)
(divisor): RandUniformTensorGenerator(low=1.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Full ¶
Bases: BaseTensorGenerator
Implement a tensor generator that fills the tensor with a given value.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
value |
bool | float
|
The fill value. |
required |
dtype |
dtype | None
|
The target dtype. |
None
|
Example usage:
>>> from startorch.tensor import Full
>>> generator = Full(value=42)
>>> generator
FullTensorGenerator(value=42, dtype=None)
>>> generator.generate((2, 6))
tensor([[42, 42, 42, 42, 42, 42],
[42, 42, 42, 42, 42, 42]])
startorch.tensor.FullTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator that fills the tensor with a given value.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
value |
bool | float
|
The fill value. |
required |
dtype |
dtype | None
|
The target dtype. |
None
|
Example usage:
>>> from startorch.tensor import Full
>>> generator = Full(value=42)
>>> generator
FullTensorGenerator(value=42, dtype=None)
>>> generator.generate((2, 6))
tensor([[42, 42, 42, 42, 42, 42],
[42, 42, 42, 42, 42, 42]])
startorch.tensor.HalfCauchy ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
scale |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the scale. |
required |
Example usage:
>>> from startorch.tensor import HalfCauchy, RandUniform
>>> generator = HalfCauchy(scale=RandUniform(low=1.0, high=2.0))
>>> generator
HalfCauchyTensorGenerator(
(scale): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.HalfCauchyTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
scale |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the scale. |
required |
Example usage:
>>> from startorch.tensor import HalfCauchy, RandUniform
>>> generator = HalfCauchy(scale=RandUniform(low=1.0, high=2.0))
>>> generator
HalfCauchyTensorGenerator(
(scale): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.HalfNormal ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the standard deviation. |
required |
Example usage:
>>> from startorch.tensor import HalfNormal, RandUniform
>>> generator = HalfNormal(std=RandUniform(low=1.0, high=2.0))
>>> generator
HalfNormalTensorGenerator(
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.HalfNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the standard deviation. |
required |
Example usage:
>>> from startorch.tensor import HalfNormal, RandUniform
>>> generator = HalfNormal(std=RandUniform(low=1.0, high=2.0))
>>> generator
HalfNormalTensorGenerator(
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.Log ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the logarithm of a tensor.
This tensor generator is equivalent to: output = log(tensor)
Example usage:
>>> from startorch.tensor import Log, RandUniform
>>> generator = Log(RandUniform(low=1.0, high=100.0))
>>> generator
LogTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=100.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.LogNormal ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a log-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the mean of the underlying Normal distribution. |
required |
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the standard deviation of the underlying Normal distribution. |
required |
Example usage:
>>> from startorch.tensor import LogNormal, RandUniform
>>> generator = LogNormal(
... mean=RandUniform(low=-1.0, high=1.0), std=RandUniform(low=1.0, high=2.0)
... )
>>> generator
LogNormalTensorGenerator(
(mean): RandUniformTensorGenerator(low=-1.0, high=1.0)
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.LogNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a log-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the mean of the underlying Normal distribution. |
required |
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the standard deviation of the underlying Normal distribution. |
required |
Example usage:
>>> from startorch.tensor import LogNormal, RandUniform
>>> generator = LogNormal(
... mean=RandUniform(low=-1.0, high=1.0), std=RandUniform(low=1.0, high=2.0)
... )
>>> generator
LogNormalTensorGenerator(
(mean): RandUniformTensorGenerator(low=-1.0, high=1.0)
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.LogTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the logarithm of a tensor.
This tensor generator is equivalent to: output = log(tensor)
Example usage:
>>> from startorch.tensor import Log, RandUniform
>>> generator = Log(RandUniform(low=1.0, high=100.0))
>>> generator
LogTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=100.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.LogUniform ¶
Bases: BaseTensorGenerator
Implement a tensor generator to generate tensors by sampling values from a log-uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (inclusive). |
required |
high |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, LogUniform
>>> generator = LogUniform(
... low=RandUniform(low=0.1, high=1.0), high=RandUniform(low=100, high=1000)
... )
>>> generator
LogUniformTensorGenerator(
(low): RandUniformTensorGenerator(low=0.1, high=1.0)
(high): RandUniformTensorGenerator(low=100.0, high=1000.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.LogUniformTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator to generate tensors by sampling values from a log-uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (inclusive). |
required |
high |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, LogUniform
>>> generator = LogUniform(
... low=RandUniform(low=0.1, high=1.0), high=RandUniform(low=100, high=1000)
... )
>>> generator
LogUniformTensorGenerator(
(low): RandUniformTensorGenerator(low=0.1, high=1.0)
(high): RandUniformTensorGenerator(low=100.0, high=1000.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Long ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that converts a tensor values to long.
Example usage:
>>> from startorch.tensor import Long, RandUniform
>>> generator = Long(RandUniform(low=0, high=10))
>>> generator
LongTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.LongTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that converts a tensor values to long.
Example usage:
>>> from startorch.tensor import Long, RandUniform
>>> generator = Long(RandUniform(low=0, high=10))
>>> generator
LongTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Mul ¶
Bases: BaseTensorGenerator
Implement a tensor generator that multiplies multiple tensors.
This tensor generator is equivalent to:
output = tensor_1 * tensor_2 * ... * tensor_n
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generators |
Sequence[BaseTensorGenerator | dict]
|
The tensor generators. |
required |
Raises:
Type | Description |
---|---|
ValueError
|
if no sequence generator is provided. |
Example usage:
>>> import torch
>>> from startorch.tensor import Mul, RandUniform, RandNormal
>>> generator = Mul([RandUniform(), RandNormal()])
>>> generator
MulTensorGenerator(
(0): RandUniformTensorGenerator(low=0.0, high=1.0)
(1): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.MulScalar ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that multiplies a scalar value to a generated batch of tensors.
This tensor generator is equivalent to:
output = tensor * scalar
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generator |
BaseTensorGenerator | dict
|
The tensor generator or its configuration. |
required |
value |
float
|
The scalar value to multiply. |
required |
Example usage:
>>> import torch
>>> from startorch.tensor import MulScalar, RandUniform, RandNormal
>>> generator = MulScalar(RandUniform(), 42)
>>> generator
MulScalarTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.MulScalarTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that multiplies a scalar value to a generated batch of tensors.
This tensor generator is equivalent to:
output = tensor * scalar
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generator |
BaseTensorGenerator | dict
|
The tensor generator or its configuration. |
required |
value |
float
|
The scalar value to multiply. |
required |
Example usage:
>>> import torch
>>> from startorch.tensor import MulScalar, RandUniform, RandNormal
>>> generator = MulScalar(RandUniform(), 42)
>>> generator
MulScalarTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.MulTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator that multiplies multiple tensors.
This tensor generator is equivalent to:
output = tensor_1 * tensor_2 * ... * tensor_n
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generators |
Sequence[BaseTensorGenerator | dict]
|
The tensor generators. |
required |
Raises:
Type | Description |
---|---|
ValueError
|
if no sequence generator is provided. |
Example usage:
>>> import torch
>>> from startorch.tensor import Mul, RandUniform, RandNormal
>>> generator = Mul([RandUniform(), RandNormal()])
>>> generator
MulTensorGenerator(
(0): RandUniformTensorGenerator(low=0.0, high=1.0)
(1): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Multinomial ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors of categorical variables where each value is sampled from a multinomial distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
weights |
Tensor | Sequence[float]
|
The vector of weights associated at each
category. It must be a float tensor of shape
|
required |
Example usage:
>>> import torch
>>> from startorch.tensor import Multinomial
>>> generator = Multinomial(torch.ones(10))
>>> generator
MultinomialTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.Multinomial.create_exp_weights
classmethod
¶
create_exp_weights(
num_categories: int, scale: float = 0.1
) -> MultinomialTensorGenerator
Instantiate the weights with an exponential pattern.
The weight of the i
-th category (w_i
) is generated with
the rule: w_i = exp(-scale * i)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
num_categories |
int
|
The number of categories. |
required |
scale |
float
|
The scale parameter that controls the exponential function. |
0.1
|
Returns:
Type | Description |
---|---|
MultinomialTensorGenerator
|
A tensor generator where the weights of the multinomial distribution follow an exponential pattern. |
Example usage:
>>> import torch
>>> from startorch.tensor import Multinomial
>>> generator = Multinomial.create_exp_weights(10)
>>> generator
MultinomialTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.Multinomial.create_linear_weights
classmethod
¶
create_linear_weights(
num_categories: int,
) -> MultinomialTensorGenerator
Instantiate the weights with a linear pattern.
The weight of the i
-th category (w_i
) is generated
with the rule: w_i = num_categories - i
Parameters:
Name | Type | Description | Default |
---|---|---|---|
num_categories |
int
|
The number of categories. |
required |
Returns:
Type | Description |
---|---|
MultinomialTensorGenerator
|
A tensor generator where the weights of the multinomial distribution follow a linear pattern. |
Example usage:
>>> import torch
>>> from startorch.tensor import Multinomial
>>> generator = Multinomial.create_linear_weights(10)
>>> generator
MultinomialTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.Multinomial.create_uniform_weights
classmethod
¶
create_uniform_weights(
num_categories: int,
) -> MultinomialTensorGenerator
Instantiate the weights with a uniform pattern.
All the categories have the same probability.
The weight of the i
-th category (w_i
) is generated
with the rule: w_i = 1
Parameters:
Name | Type | Description | Default |
---|---|---|---|
num_categories |
int
|
The number of categories. |
required |
Returns:
Type | Description |
---|---|
MultinomialTensorGenerator
|
A tensor generator where the weights of the multinomial distribution follow a uniform pattern. |
Example usage:
>>> import torch
>>> from startorch.tensor import Multinomial
>>> generator = Multinomial.create_uniform_weights(10)
>>> generator
MultinomialTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.MultinomialChoice ¶
Bases: BaseTensorGenerator
Implement a tensor generator that select a tensor generator at each batch.
This tensor generator is used to generate tensors with different
generation processes. The user can specify a list of tensor
generators with an associated weight. The weight is used to sample
the tensor generator with a multinomial distribution. Higher
weight means that the tensor generator has a higher probability
to be selected at each batch. Each dictionary in the
generators
input should have the following items:
- a key ``'generator'`` which indicates the tensor generator
or its configuration.
- an optional key ``'weight'`` with a float value which
indicates the weight of the tensor generator.
If this key is absent, the weight is set to ``1.0``.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generators |
Sequence[dict[str, BaseTensorGenerator | dict]]
|
The tensor generators and their weights. See above to learn about the expected format. |
required |
Example usage:
>>> from startorch.tensor import MultinomialChoice, RandUniform, RandNormal
>>> generator = MultinomialChoice(
... (
... {"weight": 2.0, "generator": RandUniform()},
... {"weight": 1.0, "generator": RandNormal()},
... )
... )
>>> generator
MultinomialChoiceTensorGenerator(
(0) [weight=2.0] RandUniformTensorGenerator(low=0.0, high=1.0)
(1) [weight=1.0] RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.MultinomialChoiceTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator that select a tensor generator at each batch.
This tensor generator is used to generate tensors with different
generation processes. The user can specify a list of tensor
generators with an associated weight. The weight is used to sample
the tensor generator with a multinomial distribution. Higher
weight means that the tensor generator has a higher probability
to be selected at each batch. Each dictionary in the
generators
input should have the following items:
- a key ``'generator'`` which indicates the tensor generator
or its configuration.
- an optional key ``'weight'`` with a float value which
indicates the weight of the tensor generator.
If this key is absent, the weight is set to ``1.0``.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generators |
Sequence[dict[str, BaseTensorGenerator | dict]]
|
The tensor generators and their weights. See above to learn about the expected format. |
required |
Example usage:
>>> from startorch.tensor import MultinomialChoice, RandUniform, RandNormal
>>> generator = MultinomialChoice(
... (
... {"weight": 2.0, "generator": RandUniform()},
... {"weight": 1.0, "generator": RandNormal()},
... )
... )
>>> generator
MultinomialChoiceTensorGenerator(
(0) [weight=2.0] RandUniformTensorGenerator(low=0.0, high=1.0)
(1) [weight=1.0] RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.MultinomialTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors of categorical variables where each value is sampled from a multinomial distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
weights |
Tensor | Sequence[float]
|
The vector of weights associated at each
category. It must be a float tensor of shape
|
required |
Example usage:
>>> import torch
>>> from startorch.tensor import Multinomial
>>> generator = Multinomial(torch.ones(10))
>>> generator
MultinomialTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.MultinomialTensorGenerator.create_exp_weights
classmethod
¶
create_exp_weights(
num_categories: int, scale: float = 0.1
) -> MultinomialTensorGenerator
Instantiate the weights with an exponential pattern.
The weight of the i
-th category (w_i
) is generated with
the rule: w_i = exp(-scale * i)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
num_categories |
int
|
The number of categories. |
required |
scale |
float
|
The scale parameter that controls the exponential function. |
0.1
|
Returns:
Type | Description |
---|---|
MultinomialTensorGenerator
|
A tensor generator where the weights of the multinomial distribution follow an exponential pattern. |
Example usage:
>>> import torch
>>> from startorch.tensor import Multinomial
>>> generator = Multinomial.create_exp_weights(10)
>>> generator
MultinomialTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.MultinomialTensorGenerator.create_linear_weights
classmethod
¶
create_linear_weights(
num_categories: int,
) -> MultinomialTensorGenerator
Instantiate the weights with a linear pattern.
The weight of the i
-th category (w_i
) is generated
with the rule: w_i = num_categories - i
Parameters:
Name | Type | Description | Default |
---|---|---|---|
num_categories |
int
|
The number of categories. |
required |
Returns:
Type | Description |
---|---|
MultinomialTensorGenerator
|
A tensor generator where the weights of the multinomial distribution follow a linear pattern. |
Example usage:
>>> import torch
>>> from startorch.tensor import Multinomial
>>> generator = Multinomial.create_linear_weights(10)
>>> generator
MultinomialTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.MultinomialTensorGenerator.create_uniform_weights
classmethod
¶
create_uniform_weights(
num_categories: int,
) -> MultinomialTensorGenerator
Instantiate the weights with a uniform pattern.
All the categories have the same probability.
The weight of the i
-th category (w_i
) is generated
with the rule: w_i = 1
Parameters:
Name | Type | Description | Default |
---|---|---|---|
num_categories |
int
|
The number of categories. |
required |
Returns:
Type | Description |
---|---|
MultinomialTensorGenerator
|
A tensor generator where the weights of the multinomial distribution follow a uniform pattern. |
Example usage:
>>> import torch
>>> from startorch.tensor import Multinomial
>>> generator = Multinomial.create_uniform_weights(10)
>>> generator
MultinomialTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.Neg ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the negation of a generated tensor.
This tensor generator is equivalent to: output = -tensor
Example usage:
>>> import torch
>>> from startorch.tensor import Neg, RandNormal
>>> generator = Neg(RandNormal())
>>> generator
NegTensorGenerator(
(tensor): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.NegTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the negation of a generated tensor.
This tensor generator is equivalent to: output = -tensor
Example usage:
>>> import torch
>>> from startorch.tensor import Neg, RandNormal
>>> generator = Neg(RandNormal())
>>> generator
NegTensorGenerator(
(tensor): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Normal ¶
Bases: BaseTensorGenerator
Implement a class to generate sequence by sampling values from a Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the mean. |
required |
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the standard deviation. |
required |
Example usage:
>>> from startorch.tensor import Normal, RandUniform
>>> generator = Normal(
... mean=RandUniform(low=-1.0, high=1.0), std=RandUniform(low=1.0, high=2.0)
... )
>>> generator
NormalTensorGenerator(
(mean): RandUniformTensorGenerator(low=-1.0, high=1.0)
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.NormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate sequence by sampling values from a Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the mean. |
required |
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the standard deviation. |
required |
Example usage:
>>> from startorch.tensor import Normal, RandUniform
>>> generator = Normal(
... mean=RandUniform(low=-1.0, high=1.0), std=RandUniform(low=1.0, high=2.0)
... )
>>> generator
NormalTensorGenerator(
(mean): RandUniformTensorGenerator(low=-1.0, high=1.0)
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Poisson ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors by sampling values from a Poisson distribution.
The rates of the Poisson distribution are generated by the rate generator. The rate generator should return the rate for each value in the tensor. The rate values should be greater than 0.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
BaseTensorGenerator | dict
|
The rate generator or its configuration. The rate generator should return valid rate values. |
required |
Example usage:
>>> from startorch.tensor import RandUniform, Poisson
>>> generator = Poisson(rate=RandUniform(low=1.0, high=2.0))
>>> generator
PoissonTensorGenerator(
(rate): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.PoissonTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors by sampling values from a Poisson distribution.
The rates of the Poisson distribution are generated by the rate generator. The rate generator should return the rate for each value in the tensor. The rate values should be greater than 0.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
BaseTensorGenerator | dict
|
The rate generator or its configuration. The rate generator should return valid rate values. |
required |
Example usage:
>>> from startorch.tensor import RandUniform, Poisson
>>> generator = Poisson(rate=RandUniform(low=1.0, high=2.0))
>>> generator
PoissonTensorGenerator(
(rate): RandUniformTensorGenerator(low=1.0, high=2.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandAsinhUniform ¶
Bases: BaseTensorGenerator
Implement a tensor generator by sampling values from an asinh- uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
float
|
The minimum value (inclusive). |
required |
high |
float
|
The maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandAsinhUniform
>>> generator = RandAsinhUniform(low=-1000, high=1000)
>>> generator
RandAsinhUniformTensorGenerator(low=-1000.0, high=1000.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandAsinhUniformTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator by sampling values from an asinh- uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
float
|
The minimum value (inclusive). |
required |
high |
float
|
The maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandAsinhUniform
>>> generator = RandAsinhUniform(low=-1000, high=1000)
>>> generator
RandAsinhUniformTensorGenerator(low=-1000.0, high=1000.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandCauchy ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
loc |
float
|
The location/median of the Cauchy distribution. |
0.0
|
scale |
float
|
The scale of the distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandCauchy
>>> generator = RandCauchy(loc=0.0, scale=1.0)
>>> generator
RandCauchyTensorGenerator(loc=0.0, scale=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandCauchyTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
loc |
float
|
The location/median of the Cauchy distribution. |
0.0
|
scale |
float
|
The scale of the distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandCauchy
>>> generator = RandCauchy(loc=0.0, scale=1.0)
>>> generator
RandCauchyTensorGenerator(loc=0.0, scale=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandExponential ¶
Bases: BaseTensorGenerator
Implement a class to generate sequences by sampling values from an Exponential distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
float
|
The rate of the Exponential distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandExponential
>>> generator = RandExponential(rate=1.0)
>>> generator
RandExponentialTensorGenerator(rate=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandExponentialTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate sequences by sampling values from an Exponential distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
float
|
The rate of the Exponential distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandExponential
>>> generator = RandExponential(rate=1.0)
>>> generator
RandExponentialTensorGenerator(rate=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandHalfCauchy ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
scale |
float
|
The scale of the distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandHalfCauchy
>>> generator = RandHalfCauchy(scale=1.0)
>>> generator
RandHalfCauchyTensorGenerator(scale=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandHalfCauchyTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
scale |
float
|
The scale of the distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandHalfCauchy
>>> generator = RandHalfCauchy(scale=1.0)
>>> generator
RandHalfCauchyTensorGenerator(scale=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandHalfNormal ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std |
float
|
The std of the distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandHalfNormal
>>> generator = RandHalfNormal(std=1.0)
>>> generator
RandHalfNormalTensorGenerator(std=1.0)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.RandHalfNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std |
float
|
The std of the distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandHalfNormal
>>> generator = RandHalfNormal(std=1.0)
>>> generator
RandHalfNormalTensorGenerator(std=1.0)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.RandInt ¶
Bases: BaseTensorGenerator
Implement a tensor generator by sampling integer values from a uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
int
|
The minimum value (inclusive). |
required |
high |
int
|
The maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandInt
>>> generator = RandInt(low=0, high=10)
>>> generator
RandIntTensorGenerator(low=0, high=10)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandIntTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator by sampling integer values from a uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
int
|
The minimum value (inclusive). |
required |
high |
int
|
The maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandInt
>>> generator = RandInt(low=0, high=10)
>>> generator
RandIntTensorGenerator(low=0, high=10)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandLogNormal ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a log-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
float
|
The mean of the underlying Normal distribution. |
0.0
|
std |
float
|
The standard deviation of the underlying Normal distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandLogNormal
>>> generator = RandLogNormal(mean=0.0, std=1.0)
>>> generator
RandLogNormalTensorGenerator(mean=0.0, std=1.0)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.RandLogNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a log-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
float
|
The mean of the underlying Normal distribution. |
0.0
|
std |
float
|
The standard deviation of the underlying Normal distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandLogNormal
>>> generator = RandLogNormal(mean=0.0, std=1.0)
>>> generator
RandLogNormalTensorGenerator(mean=0.0, std=1.0)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.RandLogUniform ¶
Bases: BaseTensorGenerator
Implement a tensor generator to generate tensors by sampling values from a log-uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
float
|
The minimum value (inclusive). |
required |
high |
float
|
The maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandLogUniform
>>> generator = RandLogUniform(low=0.1, high=100.0)
>>> generator
RandLogUniformTensorGenerator(low=0.1, high=100.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandLogUniformTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator to generate tensors by sampling values from a log-uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
float
|
The minimum value (inclusive). |
required |
high |
float
|
The maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandLogUniform
>>> generator = RandLogUniform(low=0.1, high=100.0)
>>> generator
RandLogUniformTensorGenerator(low=0.1, high=100.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandNormal ¶
Bases: BaseTensorGenerator
Implement a sequence generator to generate cyclic sequences by sampling values from a Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
float
|
The mean of the Normal distribution. |
0.0
|
std |
float
|
The standard deviation of the Normal distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandNormal
>>> generator = RandNormal(mean=0.0, std=1.0)
>>> generator
RandNormalTensorGenerator(mean=0.0, std=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a sequence generator to generate cyclic sequences by sampling values from a Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
float
|
The mean of the Normal distribution. |
0.0
|
std |
float
|
The standard deviation of the Normal distribution. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandNormal
>>> generator = RandNormal(mean=0.0, std=1.0)
>>> generator
RandNormalTensorGenerator(mean=0.0, std=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandPoisson ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors by sampling values from a Poisson distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
float
|
The rate of the Poisson distribution. This value has to be greater than 0. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandPoisson
>>> generator = RandPoisson(rate=1.0)
>>> generator
RandPoissonTensorGenerator(rate=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandPoissonTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors by sampling values from a Poisson distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
float
|
The rate of the Poisson distribution. This value has to be greater than 0. |
1.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandPoisson
>>> generator = RandPoisson(rate=1.0)
>>> generator
RandPoissonTensorGenerator(rate=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandTruncCauchy ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a truncated Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
loc |
float
|
The location/median of the Cauchy distribution. |
0.0
|
scale |
float
|
The scale of the distribution. |
1.0
|
min_value |
float
|
The minimum value (included). |
-2.0
|
max_value |
float
|
The maximum value (excluded). |
2.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncCauchy
>>> generator = RandTruncCauchy(loc=0.0, scale=1.0, min_value=-1.0, max_value=1.0)
>>> generator
RandTruncCauchyTensorGenerator(loc=0.0, scale=1.0, min_value=-1.0, max_value=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandTruncCauchyTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a truncated Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
loc |
float
|
The location/median of the Cauchy distribution. |
0.0
|
scale |
float
|
The scale of the distribution. |
1.0
|
min_value |
float
|
The minimum value (included). |
-2.0
|
max_value |
float
|
The maximum value (excluded). |
2.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncCauchy
>>> generator = RandTruncCauchy(loc=0.0, scale=1.0, min_value=-1.0, max_value=1.0)
>>> generator
RandTruncCauchyTensorGenerator(loc=0.0, scale=1.0, min_value=-1.0, max_value=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandTruncExponential ¶
Bases: BaseTensorGenerator
Implement a class to generate sequences by sampling values from a truncated Exponential distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
float
|
The rate of the Exponential distribution. |
1.0
|
max_value |
float
|
The maximum value. |
5.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncExponential
>>> generator = RandTruncExponential(rate=1.0, max_value=3.0)
>>> generator
RandTruncExponentialTensorGenerator(rate=1.0, max_value=3.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandTruncExponentialTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate sequences by sampling values from a truncated Exponential distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
float
|
The rate of the Exponential distribution. |
1.0
|
max_value |
float
|
The maximum value. |
5.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncExponential
>>> generator = RandTruncExponential(rate=1.0, max_value=3.0)
>>> generator
RandTruncExponentialTensorGenerator(rate=1.0, max_value=3.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandTruncHalfCauchy ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a truncated half-Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
scale |
float
|
The scale of the distribution. |
1.0
|
max_value |
float
|
The maximum value. |
4.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncHalfCauchy
>>> generator = RandTruncHalfCauchy(scale=1.0, max_value=5.0)
>>> generator
RandTruncHalfCauchyTensorGenerator(scale=1.0, max_value=5.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandTruncHalfCauchyTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a truncated half-Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
scale |
float
|
The scale of the distribution. |
1.0
|
max_value |
float
|
The maximum value. |
4.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncHalfCauchy
>>> generator = RandTruncHalfCauchy(scale=1.0, max_value=5.0)
>>> generator
RandTruncHalfCauchyTensorGenerator(scale=1.0, max_value=5.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandTruncHalfNormal ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a truncated half-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std |
float
|
The std of the distribution. |
1.0
|
max_value |
float
|
The maximum value. |
3.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncHalfNormal
>>> generator = RandTruncHalfNormal(std=1.0, max_value=1.0)
>>> generator
RandTruncHalfNormalTensorGenerator(std=1.0, max_value=1.0)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.RandTruncHalfNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a truncated half-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std |
float
|
The std of the distribution. |
1.0
|
max_value |
float
|
The maximum value. |
3.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncHalfNormal
>>> generator = RandTruncHalfNormal(std=1.0, max_value=1.0)
>>> generator
RandTruncHalfNormalTensorGenerator(std=1.0, max_value=1.0)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.RandTruncLogNormal ¶
Bases: BaseTensorGenerator
Implement a tensor generator to generate cyclic tensors by sampling values from a truncated log-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
float
|
The mean of the log-Normal distribution. |
0.0
|
std |
float
|
The standard deviation of the log-Normal distribution. |
1.0
|
min_value |
float
|
The minimum value. |
0.0
|
max_value |
float
|
The maximum value. |
5.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncLogNormal
>>> generator = RandTruncLogNormal(mean=0.0, std=1.0, min_value=0.0, max_value=1.0)
>>> generator
RandTruncLogNormalTensorGenerator(mean=0.0, std=1.0, min_value=0.0, max_value=1.0)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.RandTruncLogNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator to generate cyclic tensors by sampling values from a truncated log-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
float
|
The mean of the log-Normal distribution. |
0.0
|
std |
float
|
The standard deviation of the log-Normal distribution. |
1.0
|
min_value |
float
|
The minimum value. |
0.0
|
max_value |
float
|
The maximum value. |
5.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncLogNormal
>>> generator = RandTruncLogNormal(mean=0.0, std=1.0, min_value=0.0, max_value=1.0)
>>> generator
RandTruncLogNormalTensorGenerator(mean=0.0, std=1.0, min_value=0.0, max_value=1.0)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.RandTruncNormal ¶
Bases: BaseTensorGenerator
Implement a sequence generator to generate cyclic sequences by sampling values from a truncated Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
float
|
The mean of the Normal distribution. |
0.0
|
std |
float
|
The standard deviation of the Normal distribution. |
1.0
|
min_value |
float
|
The minimum value. |
-3.0
|
max_value |
float
|
The maximum value. |
3.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncNormal
>>> generator = RandTruncNormal(mean=0.0, std=1.0, min_value=-1.0, max_value=1.0)
>>> generator
RandTruncNormalTensorGenerator(mean=0.0, std=1.0, min_value=-1.0, max_value=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandTruncNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a sequence generator to generate cyclic sequences by sampling values from a truncated Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
float
|
The mean of the Normal distribution. |
0.0
|
std |
float
|
The standard deviation of the Normal distribution. |
1.0
|
min_value |
float
|
The minimum value. |
-3.0
|
max_value |
float
|
The maximum value. |
3.0
|
Raises:
Type | Description |
---|---|
ValueError
|
if |
ValueError
|
if |
Example usage:
>>> from startorch.tensor import RandTruncNormal
>>> generator = RandTruncNormal(mean=0.0, std=1.0, min_value=-1.0, max_value=1.0)
>>> generator
RandTruncNormalTensorGenerator(mean=0.0, std=1.0, min_value=-1.0, max_value=1.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandUniform ¶
Bases: BaseTensorGenerator
Implement a tensor generator by sampling values from a uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
float
|
The minimum value (inclusive). |
0.0
|
high |
float
|
The maximum value (exclusive). |
1.0
|
Example usage:
>>> from startorch.tensor import RandUniform
>>> generator = RandUniform(low=0, high=10)
>>> generator
RandUniformTensorGenerator(low=0.0, high=10.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.RandUniformTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator by sampling values from a uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
float
|
The minimum value (inclusive). |
0.0
|
high |
float
|
The maximum value (exclusive). |
1.0
|
Example usage:
>>> from startorch.tensor import RandUniform
>>> generator = RandUniform(low=0, high=10)
>>> generator
RandUniformTensorGenerator(low=0.0, high=10.0)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Sinh ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the hyperbolic sine (sinh) of each value.
Example usage:
>>> from startorch.tensor import RandUniform, Sinh
>>> generator = Sinh(RandUniform(low=0.0, high=1.0))
>>> generator
SinhTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.SinhTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the hyperbolic sine (sinh) of each value.
Example usage:
>>> from startorch.tensor import RandUniform, Sinh
>>> generator = Sinh(RandUniform(low=0.0, high=1.0))
>>> generator
SinhTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Sqrt ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the squared root of a tensor.
This tensor generator is equivalent to: output = sqrt(tensor)
Example usage:
>>> from startorch.tensor import RandUniform, Sqrt
>>> generator = Sqrt(RandUniform(low=1.0, high=100.0))
>>> generator
SqrtTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=100.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.SqrtTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the squared root of a tensor.
This tensor generator is equivalent to: output = sqrt(tensor)
Example usage:
>>> from startorch.tensor import RandUniform, Sqrt
>>> generator = Sqrt(RandUniform(low=1.0, high=100.0))
>>> generator
SqrtTensorGenerator(
(tensor): RandUniformTensorGenerator(low=1.0, high=100.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Sub ¶
Bases: BaseTensorGenerator
Implement a tensor generator that subtracts two tensors.
This tensor generator is equivalent to:
output = tensor_1 - tensor_2
Parameters:
Name | Type | Description | Default |
---|---|---|---|
tensor1 |
BaseTensorGenerator | dict
|
The first tensor generator or its configuration. |
required |
tensor2 |
BaseTensorGenerator | dict
|
The second tensor generator or its configuration. |
required |
Example usage:
>>> from startorch.tensor import RandNormal, RandUniform, Sub
>>> generator = Sub(RandUniform(), RandNormal())
>>> generator
SubTensorGenerator(
(tensor1): RandUniformTensorGenerator(low=0.0, high=1.0)
(tensor2): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.SubTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator that subtracts two tensors.
This tensor generator is equivalent to:
output = tensor_1 - tensor_2
Parameters:
Name | Type | Description | Default |
---|---|---|---|
tensor1 |
BaseTensorGenerator | dict
|
The first tensor generator or its configuration. |
required |
tensor2 |
BaseTensorGenerator | dict
|
The second tensor generator or its configuration. |
required |
Example usage:
>>> from startorch.tensor import RandNormal, RandUniform, Sub
>>> generator = Sub(RandUniform(), RandNormal())
>>> generator
SubTensorGenerator(
(tensor1): RandUniformTensorGenerator(low=0.0, high=1.0)
(tensor2): RandNormalTensorGenerator(mean=0.0, std=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Tanh ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the hyperbolic tangent (tanh) of each value.
Example usage:
>>> from startorch.tensor import RandUniform, Tanh
>>> generator = Tanh(RandUniform(low=0.0, high=1.0))
>>> generator
TanhTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.TanhTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that computes the hyperbolic tangent (tanh) of each value.
Example usage:
>>> from startorch.tensor import RandUniform, Tanh
>>> generator = Tanh(RandUniform(low=0.0, high=1.0))
>>> generator
TanhTensorGenerator(
(tensor): RandUniformTensorGenerator(low=0.0, high=1.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.TransformTensorGenerator ¶
Bases: BaseWrapperTensorGenerator
Implement a tensor generator that generates a tensor and then transform it.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generator |
BaseTensorGenerator | dict
|
The tensor generator or its configuration. |
required |
transformer |
BaseTensorTransformer | dict
|
The tensor transformer or its configuration. |
required |
Example usage:
>>> from startorch.tensor import TransformTensorGenerator, Full
>>> from startorch.tensor.transformer import Abs
>>> generator = TransformTensorGenerator(generator=Full(-1), transformer=Abs())
>>> generator
TransformTensorGenerator(
(generator): FullTensorGenerator(value=-1, dtype=None)
(transformer): AbsTensorTransformer()
)
>>> generator.generate(size=(2, 6))
tensor([[1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1]])
startorch.tensor.TruncCauchy ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
loc |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the location. |
required |
scale |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the scale. |
required |
min_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (included). |
required |
max_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncCauchy
>>> generator = TruncCauchy(
... loc=RandUniform(low=-1.0, high=1.0),
... scale=RandUniform(low=1.0, high=2.0),
... min_value=RandUniform(low=-10.0, high=-5.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncCauchyTensorGenerator(
(loc): RandUniformTensorGenerator(low=-1.0, high=1.0)
(scale): RandUniformTensorGenerator(low=1.0, high=2.0)
(min_value): RandUniformTensorGenerator(low=-10.0, high=-5.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.TruncCauchyTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
loc |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the location. |
required |
scale |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the scale. |
required |
min_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (included). |
required |
max_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncCauchy
>>> generator = TruncCauchy(
... loc=RandUniform(low=-1.0, high=1.0),
... scale=RandUniform(low=1.0, high=2.0),
... min_value=RandUniform(low=-10.0, high=-5.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncCauchyTensorGenerator(
(loc): RandUniformTensorGenerator(low=-1.0, high=1.0)
(scale): RandUniformTensorGenerator(low=1.0, high=2.0)
(min_value): RandUniformTensorGenerator(low=-10.0, high=-5.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.TruncExponential ¶
Bases: BaseTensorGenerator
Implement a class to generate sequence by sampling values from an Exponential distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the rate. |
required |
max_value |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncExponential
>>> generator = TruncExponential(
... rate=RandUniform(low=1.0, high=10.0),
... max_value=RandUniform(low=1.0, high=100.0),
... )
>>> generator
TruncExponentialTensorGenerator(
(rate): RandUniformTensorGenerator(low=1.0, high=10.0)
(max_value): RandUniformTensorGenerator(low=1.0, high=100.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.TruncExponentialTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate sequence by sampling values from an Exponential distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rate |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the rate. |
required |
max_value |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncExponential
>>> generator = TruncExponential(
... rate=RandUniform(low=1.0, high=10.0),
... max_value=RandUniform(low=1.0, high=100.0),
... )
>>> generator
TruncExponentialTensorGenerator(
(rate): RandUniformTensorGenerator(low=1.0, high=10.0)
(max_value): RandUniformTensorGenerator(low=1.0, high=100.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.TruncHalfCauchy ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
scale |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the scale. |
required |
max_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncHalfCauchy
>>> generator = TruncHalfCauchy(
... scale=RandUniform(low=1.0, high=2.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncHalfCauchyTensorGenerator(
(scale): RandUniformTensorGenerator(low=1.0, high=2.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.TruncHalfCauchyTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Cauchy distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
scale |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the scale. |
required |
max_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncHalfCauchy
>>> generator = TruncHalfCauchy(
... scale=RandUniform(low=1.0, high=2.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncHalfCauchyTensorGenerator(
(scale): RandUniformTensorGenerator(low=1.0, high=2.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.TruncHalfNormal ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the std. |
required |
max_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncHalfNormal
>>> generator = TruncHalfNormal(
... std=RandUniform(low=1.0, high=2.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncHalfNormalTensorGenerator(
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.TruncHalfNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a half-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the std. |
required |
max_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncHalfNormal
>>> generator = TruncHalfNormal(
... std=RandUniform(low=1.0, high=2.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncHalfNormalTensorGenerator(
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.TruncLogNormal ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a truncated log-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the mean of the underlying Normal distribution. |
required |
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the standard deviation of the underlying Normal distribution. |
required |
min_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (included). |
required |
max_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncLogNormal
>>> generator = TruncLogNormal(
... mean=RandUniform(low=-1.0, high=1.0),
... std=RandUniform(low=1.0, high=2.0),
... min_value=RandUniform(low=0.0, high=2.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncLogNormalTensorGenerator(
(mean): RandUniformTensorGenerator(low=-1.0, high=1.0)
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
(min_value): RandUniformTensorGenerator(low=0.0, high=2.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.TruncLogNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensor by sampling values from a truncated log-Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the mean of the underlying Normal distribution. |
required |
std |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the standard deviation of the underlying Normal distribution. |
required |
min_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (included). |
required |
max_value |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncLogNormal
>>> generator = TruncLogNormal(
... mean=RandUniform(low=-1.0, high=1.0),
... std=RandUniform(low=1.0, high=2.0),
... min_value=RandUniform(low=0.0, high=2.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncLogNormalTensorGenerator(
(mean): RandUniformTensorGenerator(low=-1.0, high=1.0)
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
(min_value): RandUniformTensorGenerator(low=0.0, high=2.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate(size=(2, 6))
tensor([[...]])
startorch.tensor.TruncNormal ¶
Bases: BaseTensorGenerator
Implement a class to generate sequence by sampling values from a truncated Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the mean. |
required |
std |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the standard deviation. |
required |
min_value |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the minimum value (included). |
required |
max_value |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncNormal
>>> generator = TruncNormal(
... mean=RandUniform(low=-1.0, high=1.0),
... std=RandUniform(low=1.0, high=2.0),
... min_value=RandUniform(low=-10.0, high=-5.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncNormalTensorGenerator(
(mean): RandUniformTensorGenerator(low=-1.0, high=1.0)
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
(min_value): RandUniformTensorGenerator(low=-10.0, high=-5.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.TruncNormalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate sequence by sampling values from a truncated Normal distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mean |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the mean. |
required |
std |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the standard deviation. |
required |
min_value |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the minimum value (included). |
required |
max_value |
BaseTensorGenerator | dict
|
A sequence generator (or its configuration) to generate the maximum value (excluded). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, TruncNormal
>>> generator = TruncNormal(
... mean=RandUniform(low=-1.0, high=1.0),
... std=RandUniform(low=1.0, high=2.0),
... min_value=RandUniform(low=-10.0, high=-5.0),
... max_value=RandUniform(low=5.0, high=10.0),
... )
>>> generator
TruncNormalTensorGenerator(
(mean): RandUniformTensorGenerator(low=-1.0, high=1.0)
(std): RandUniformTensorGenerator(low=1.0, high=2.0)
(min_value): RandUniformTensorGenerator(low=-10.0, high=-5.0)
(max_value): RandUniformTensorGenerator(low=5.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.Uniform ¶
Bases: BaseTensorGenerator
Implement a tensor generator by sampling values from a uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (inclusive). |
required |
high |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, Uniform
>>> generator = UniformTensorGenerator(
... low=RandUniform(low=0, high=2), high=RandUniform(low=8, high=10)
... )
>>> generator
UniformTensorGenerator(
(low): RandUniformTensorGenerator(low=0.0, high=2.0)
(high): RandUniformTensorGenerator(low=8.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.UniformCategorical ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors of uniformly distributed categorical variables.
All the categories have the same probability.
Note: it is a more efficient implementation of
Multinomial.generate_uniform_weights
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
num_categories |
int
|
The number of categories. |
required |
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> import torch
>>> from startorch.tensor import UniformCategorical
>>> generator = UniformCategorical(10)
>>> generator
UniformCategoricalTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.UniformCategoricalTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a class to generate tensors of uniformly distributed categorical variables.
All the categories have the same probability.
Note: it is a more efficient implementation of
Multinomial.generate_uniform_weights
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
num_categories |
int
|
The number of categories. |
required |
Raises:
Type | Description |
---|---|
ValueError
|
if |
Example usage:
>>> import torch
>>> from startorch.tensor import UniformCategorical
>>> generator = UniformCategorical(10)
>>> generator
UniformCategoricalTensorGenerator(num_categories=10)
>>> generator.generate(size=(4, 12))
tensor([[...]])
startorch.tensor.UniformTensorGenerator ¶
Bases: BaseTensorGenerator
Implement a tensor generator by sampling values from a uniform distribution.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
low |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the minimum value (inclusive). |
required |
high |
BaseTensorGenerator | dict
|
A tensor generator (or its configuration) to generate the maximum value (exclusive). |
required |
Example usage:
>>> from startorch.tensor import RandUniform, Uniform
>>> generator = UniformTensorGenerator(
... low=RandUniform(low=0, high=2), high=RandUniform(low=8, high=10)
... )
>>> generator
UniformTensorGenerator(
(low): RandUniformTensorGenerator(low=0.0, high=2.0)
(high): RandUniformTensorGenerator(low=8.0, high=10.0)
)
>>> generator.generate((2, 6))
tensor([[...]])
startorch.tensor.is_tensor_generator_config ¶
is_tensor_generator_config(config: dict) -> bool
Indicate if the input configuration is a configuration for a
BaseTensorGenerator
.
This function only checks if the value of the key _target_
is valid. It does not check the other values. If _target_
indicates a function, the returned type hint is used to check
the class.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
config |
dict
|
The configuration to check. |
required |
Returns:
Type | Description |
---|---|
bool
|
|
Example usage:
>>> from startorch.tensor import is_tensor_generator_config
>>> is_tensor_generator_config({"_target_": "startorch.tensor.RandUniform"})
True
startorch.tensor.setup_tensor_generator ¶
setup_tensor_generator(
generator: BaseTensorGenerator | dict,
) -> BaseTensorGenerator
Set up a tensor generator.
The tensor generator is instantiated from its configuration by
using the BaseTensorGenerator
factory function.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
generator |
BaseTensorGenerator | dict
|
A tensor generator or its configuration. |
required |
Returns:
Type | Description |
---|---|
BaseTensorGenerator
|
A tensor generator. |
Example usage:
>>> from startorch.tensor import setup_tensor_generator
>>> setup_tensor_generator({"_target_": "startorch.tensor.RandUniform"})
RandUniformTensorGenerator(low=0.0, high=1.0)