# Create the Y=g(X)=X transform which is intended for Tensors with 1 batch
# ndim and 1 event ndim (i.e., vector of vectors).
identity = Identity()
x = [[1., 2],
[3, 4]]
x == identity.forward(x) == identity.inverse(x)
Атрибуты
dtype
Тип данных Tensor преобразуемых с помощью этого распределения.
forward_min_event_ndims
Возвращает минимальное количество измерений, на которых bijector.forward работает.
graph_parents
Возвращает список graph_parents этого Bijector.
inverse_min_event_ndims
Возвращает минимальное количество измерений, на которых bijector.inverse работает.
is_constant_jacobian
Возвращает true, если матрица Якоби не является функцией от x.
Примечание: Матрица Якоби либо постоянна для прямой, либо обратной функции, либо ни для той, ни для другой.
name
Возвращает строковое имя этого Bijector.
validate_args
Возвращает True, если аргументы Tensor будут валидироваться.
Tensor. Вход для вычисления определителя якобиана "прямого" преобразования.
event_ndims
Количество измерений в преобразуемых вероятностных событиях. Должно быть больше или равно self.forward_min_event_ndims. Результат суммируется по последним измерениям, чтобы получить скалярный определитель якобиана для каждого события, т. е. он имеет размерность x.shape.ndims - event_ndims.
name
Имя для данного оператора.
Возвращаемое значение
Tensor, если этот биджектор инъективен. Если не инъективен, это не реализовано.
Исключения
TypeError
если self.dtype указано, а y.dtype не self.dtype.
NotImplementedError
если не реализовано ни _forward_log_det_jacobian, ни {_inverse, _inverse_log_det_jacobian}, или это биджектор, не являющийся инъективным.
Обратите внимание, что forward_log_det_jacobian является отрицанием этой функции, вычисленной в g^{-1}(y).
Аргументы
y
Tensor. Вход для вычисления определителя якобиана обратного преобразования.
event_ndims
Количество измерений в преобразуемых вероятностных событиях. Должно быть больше или равно self.inverse_min_event_ndims. Результат суммируется по последним измерениям, чтобы получить скалярный определитель якобиана для каждого события, т. е. он имеет размерность y.shape.ndims - event_ndims.
name
Имя для данного оператора.
Возвращаемое значение
Tensor, если этот биектор инъективен. Если не инъективен, возвращает кортеж локальных логарифмов определителей Якоби, log(det(Dg_i^{-1}(y))), где g_i — ограничение g на ith разбиение Di.