Spec-Zone.ru › TensorFlow 1.15

tf.contrib.distributions.BetaWithSoftplusConcentration

Бета-распределение с преобразованием softplus для concentration1 и concentration0.

Наследуется от: Beta

tf.contrib.distributions.BetaWithSoftplusConcentration(
    concentration1, concentration0, validate_args=False, allow_nan_stats=True,
    name='BetaWithSoftplusConcentration'
)
Атрибуты
allow_nan_stats Python bool описывающий поведение, когда статистическое значение неопределено.

Статистики возвращают +/- бесконечность, когда это имеет смысл. Например, дисперсия распределения Коши равна бесконечности. Однако иногда статистика неопределена, например, если плотность распределения не достигает максимума в области определения распределения, мода неопределена. Если среднее значение неопределено, то по определению дисперсия также неопределена. Например, среднее значение распределения Стьюдента для df = 1 неопределено (нет ясного способа сказать, что оно равно + или - бесконечности), поэтому дисперсия = E[(X - среднее значение)**2] также неопределена.

batch_shape Размерность одного выборки из одного индекса события, представленная как TensorShape.

Может быть частично определена или неизвестна.

Размерности пакет представляют индексы в независимых, но не идентичных параметризациях этого распределения.

concentration0 Параметр концентрации, связанный с 0 результатом.
concentration1 Параметр концентрации, связанный с 1 результатом.
dtype Размерность Tensor, обрабатываемых этим Distribution.
event_shape Размерность одного выборки из одного пакета, представленная как TensorShape.

Может быть частично определена или неизвестна.

name Имя, добавляемое ко всем операциям, созданным этим Distribution.
parameters Словарь параметров, используемых для создания этого Distribution.
reparameterization_type Описание способа перепараметризации выборок из распределения.

В настоящее время это один из статических экземпляров distributions.FULLY_REPARAMETERIZED или distributions.NOT_REPARAMETERIZED.

total_concentration Сумма параметров концентрации.
validate_args Python bool указывающий, возможно, на включение дорогостоящих проверок.

Методы

batch_shape_tensor

Посмотреть исходный код

batch_shape_tensor(
    name='batch_shape_tensor'
)

Размерность одной выборки из одного индекса события, представленная как 1-мерный Tensor.

Размерности пакета представляют индексы в независимых, но не идентичных параметризациях этого распределения.

Аргументы
name имя для операции
Возвращаемое значение
batch_shape Tensor.

cdf

Посмотреть исходный код

cdf(
    value, name='cdf'
)

Функция кумулятивного распределения.

Для случайной величины X, функция кумулятивного распределения cdf определяется как:

cdf(x) := P[X <= x]

Дополнительная документация из Beta:

Примечание: x должен иметь тип self.dtype и находиться в [0, 1].. Он должен иметь размерность, совместимую с self.batch_shape().
Аргументы
value float или double Tensor.
name Python str добавляемое к именам операций, созданных этой функцией.
Возвращаемое значение
cdf массив Tensor размерности sample_shape(x) + self.batch_shape с значениями типа self.dtype.

copy

Посмотреть исходный код

copy(
    **override_parameters_kwargs
)

Создает глубокую копию распределения.

Примечание: скопированное распределение может продолжать зависеть от исходных аргументов инициализации.
Аргументы
**override_parameters_kwargs Словарь строк/значений аргументов инициализации для переопределения новыми значениями.
Возвращаемое значение
distribution Новый экземпляр type(self), инициализированный из объединения self.parameters и override_parameters_kwargs, т.е. dict(self.parameters, **override_parameters_kwargs).

covariance

Посмотреть исходный код

covariance(
    name='covariance'
)

Ковариация.

Ковариация (возможно) определяется только для распределений с нескалярными событиями.

Например, для векторного распределения длиной k, она вычисляется как,

Cov[i, j] = Covariance(X_i, X_j) = E[(X_i - E[X_i]) (X_j - E[X_j])]

где Cov — (пакет) k x k матрица, 0 <= (i, j) < k, а E обозначает математическое ожидание.

В альтернативе, для не-векторных, многомерных распределений (например, матричных, Вишарта), Covariance вернет (пакет) матриц при некоторой векторизации событий, т.е.,

Cov[i, j] = Covariance(Vec(X)_i, Vec(X)_j) = [as above]

где Cov — (пакет) k' x k' матриц, 0 <= (i, j) < k' = reduce_prod(event_shape), а Vec — некоторая функция, отображающая индексы размерностей событий этого распределения на индексы длины-k' вектора.

Аргументы
name Python str добавляемое к именам операций, созданных этой функцией.
Возвращаемое значение
covariance Вещественный Tensor с размерностью [B1, ..., Bn, k', k'] где первые n измерения — координаты пакета, и k' = reduce_prod(self.event_shape).

cross_entropy

Посмотреть исходный код

cross_entropy(
    other, name='cross_entropy'
)

Вычисляет перекрестную энтропию (Шеннона).

Обозначим это распределение (self) через P и распределение other через Q. Предполагая, что P, Q абсолютно непрерывны друг относительно друга и допускают плотности p(x) dr(x) и q(x) dr(x), перекрестная энтропия (Шеннона) определяется как:

H[P, Q] = E_p[-log q(X)] = -int_F p(x) log q(x) dr(x)

где F обозначает область определения случайной величины X ~ P.

Аргументы
other Экземпляр tfp.distributions.Distribution.
name Python str добавляемое к именам операций, созданных этой функцией.
Возвращаемое значение
cross_entropy self.dtype Tensor с размерностью [B1, ..., Bn] представляющей n различные вычисления перекрестной энтропии (Шеннона).

entropy

Посмотреть исходный код

entropy(
    name='entropy'
)

Энтропия Шеннона в натах.

event_shape_tensor

Посмотреть исходный код

event_shape_tensor(
    name='event_shape_tensor'
)

Размерность одной выборки из одного пакета, представленная как 1-мерный целочисленный Tensor.

Аргументы
name имя для операции
Возвращаемое значение
event_shape Tensor.

is_scalar_batch

Посмотреть исходный код

is_scalar_batch(
    name='is_scalar_batch'
)

Указывает, что batch_shape == [].

Аргументы
name Python str добавляемое к именам операций, созданных этой функцией.
Возвращает
is_scalar_batch bool скаляр Tensor.

is_scalar_event

Просмотреть исходный код

is_scalar_event(
    name='is_scalar_event'
)

Указывает, что event_shape == [].

Аргументы
name Python str добавленное в имена операций, созданных этой функцией.
Возвращает
is_scalar_event bool скаляр Tensor.

kl_divergence

Просмотреть исходный код

kl_divergence(
    other, name='kl_divergence'
)

Вычисляет расхождение Кульбака — Лейблера.

Обозначим это распределение (self) как p, а распределение other — как q. Предполагая, что p, q абсолютно непрерывны относительно опорной меры r, расхождение Кульбака — Лейблера определяется как:

KL[p, q] = E_p[log(p(X)/q(X))]
         = -int_F p(x) log q(x) dr(x) + int_F p(x) log p(x) dr(x)
         = H[p, q] - H[p]

где F обозначает область определения случайной величины X ~ p, H[., .] обозначает (кросс-)энтропию Шеннона, а H[.] обозначает энтропию Шеннона.

Аргументы
other tfp.distributions.Distribution экземпляр.
name Python str добавленное в имена операций, созданных этой функцией.
Возвращает
kl_divergence self.dtype Tensor с формой [B1, ..., Bn], представляющей собой n различные вычисления расхождения Кульбака-Лейблера.

log_cdf

Просмотреть исходный код

log_cdf(
    value, name='log_cdf'
)

Логарифмическая функция кумулятивного распределения.

Для случайной величины X, функция кумулятивного распределения cdf имеет вид:

log_cdf(x) := Log[ P[X <= x] ]

Часто для log_cdf(x) используется численное приближение, которое дает более точный результат, чем просто взятие логарифма cdf при x << -1.

Дополнительная документация из Beta:

Примечание: x должен иметь тип self.dtype и находиться в [0, 1]. Он должен иметь форму, совместимую с self.batch_shape().
Аргументы
value float или double Tensor.
name Python str добавленное в имена операций, созданных этой функцией.
Возвращает
logcdf массив Tensor с формой sample_shape(x) + self.batch_shape и значениями типа self.dtype.

log_prob

Просмотреть исходный код

log_prob(
    value, name='log_prob'
)

Логарифмическая плотность/вероятность.

Дополнительная документация из Beta:

Примечание: x должен иметь тип self.dtype и находиться в [0, 1]. Он должен иметь форму, совместимую с self.batch_shape().
Аргументы
value float или double Tensor.
name Python str добавленное в имена операций, созданных этой функцией.
Возвращает
log_prob массив Tensor с формой sample_shape(x) + self.batch_shape и значениями типа self.dtype.

log_survival_function

Просмотреть исходный код

log_survival_function(
    value, name='log_survival_function'
)

Логарифмическая функция выживания.

Для случайной величины X, функция выживания определяется как:

log_survival_function(x) = Log[ P[X > x] ]
                         = Log[ 1 - P[X <= x] ]
                         = Log[ 1 - cdf(x) ]

Обычно для логарифмической функции выживания можно использовать различные численные приближения, которые более точны, чем 1 - cdf(x) при x >> 1.

Аргументы
value float или double Tensor.
name Python str добавленное в имена операций, созданных этой функцией.
Возвращает
массив Tensor с формой sample_shape(x) + self.batch_shape и значениями типа self.dtype.

mean

Просмотреть исходный код

mean(
    name='mean'
)

Среднее значение.

mode

Просмотреть исходный код

mode(
    name='mode'
)

Мода.

Дополнительная документация из Beta:

Примечание: Мода не определена, когда concentration1 <= 1 или concentration0 <= 1. Если self.allow_nan_stats есть True, NaN используется для неопределённых мод. Если self.allow_nan_stats есть False, при попытке получить одну или несколько мод будет вызвано исключение.

param_shapes

Просмотреть исходный код

@classmethod
param_shapes(
    sample_shape, name='DistributionParamShapes'
)

Формы параметров, учитывая желаемую форму вызова sample().

Это метод класса, который описывает, какие аргументы ключ/значение требуются для создания данного Distribution экземпляра, чтобы получить определённую форму вызова sample().

Подклассы должны переопределять метод класса _param_shapes.

Аргументы
sample_shape Tensor или список/кортеж Python. Желаемая форма вызова sample().
name имя для добавления в имена операций.
Возвращает
словарь, сопоставляющий имя параметра с формой Tensor

param_static_shapes

Просмотреть исходный код

@classmethod
param_static_shapes(
    sample_shape
)

_param_shapes с фиксированными (т.е. TensorShape) формами.

Это метод класса, который описывает, какие аргументы ключ/значение требуются для создания данного Distribution экземпляра, чтобы получить определённую форму вызова sample(). Предполагается, что форма выборки известна статически.

Подклассы должны переопределить метод класса _param_shapes для возврата тензоров с постоянными значениями при подаче постоянных значений.

Аргументы
sample_shape TensorShape или список/кортеж Python. Желаемая форма вызова sample().
Возвращает
словарь, сопоставляющий имя параметра с формой TensorShape
Возможные исключения
ValueError если sample_shape является TensorShape и не полностью определён.

prob

Просмотреть исходный код

prob(
    value, name='prob'
)

Плотность/масса вероятности.

Дополнительная документация из Beta:

Примечание: x должен иметь тип self.dtype и находиться в [0, 1]. Он должен иметь форму, совместимую с self.batch_shape().
Аргументы
value float или double Tensor.
name Префикс Python str добавляется к именам операций, созданных этой функцией.
Возвращаемое значение
prob Tensor формы sample_shape(x) + self.batch_shape со значениями типа self.dtype.

quantile

Просмотреть исходный код

quantile(
    value, name='quantile'
)

Функция квантиля. Также известна как «обратная функция распределения» или «функция процентиля».

Для случайной величины X и p in [0, 1], quantile вычисляется следующим образом:

quantile(p) := x such that P[X <= x] == p
Аргументы
value float или double Tensor.
name Префикс Python str добавляется к именам операций, созданных этой функцией.
Возвращаемое значение
quantile Tensor формы sample_shape(x) + self.batch_shape со значениями типа self.dtype.

sample

Просмотреть исходный код

sample(
    sample_shape=(), seed=None, name='sample'
)

Генерирует образцы указанной формы.

Обратите внимание, что вызов sample() без аргументов сгенерирует один образец.

Аргументы
sample_shape 0D или 1D int32 Tensor. Форма генерируемых образцов.
seed Целое число Python для начального значения генератора псевдослучайных чисел (RNG).
name Имя для операции.
Возвращаемое значение
samples Tensor с добавленными размерностями sample_shape.

stddev

Просмотреть исходный код

stddev(
    name='stddev'
)

Среднее квадратическое отклонение.

Среднее квадратическое отклонение определяется как,

stddev = E[(X - E[X])**2]**0.5

где X — случайная величина, связанная с этим распределением, E обозначает математическое ожидание, а stddev.shape = batch_shape + event_shape.

Аргументы
name Префикс Python str добавляется к именам операций, созданных этой функцией.
Возвращаемое значение
stddev Вещественное число с плавающей точкой Tensor с формой, идентичной batch_shape + event_shape, т.е. такой же формы, как self.mean().

survival_function

Просмотреть исходный код

survival_function(
    value, name='survival_function'
)

Функция выживания.

Для случайной величины X, функция выживания определяется следующим образом:

survival_function(x) = P[X > x]
                     = 1 - P[X <= x]
                     = 1 - cdf(x).
Аргументы
value float или double Tensor.
name Префикс Python str добавляется к именам операций, созданных этой функцией.
Возвращаемое значение
Tensor формы sample_shape(x) + self.batch_shape со значениями типа self.dtype.

variance

Просмотреть исходный код

variance(
    name='variance'
)

Дисперсия.

Дисперсия определяется как,

Var = E[(X - E[X])**2]

где X — случайная величина, связанная с этим распределением, E обозначает математическое ожидание, а Var.shape = batch_shape + event_shape.

Аргументы
name Префикс Python str добавляется к именам операций, созданных этой функцией.
Возвращаемое значение
variance Вещественное число с плавающей точкой Tensor с формой, идентичной batch_shape + event_shape, т.е. такой же формы, как self.mean().

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/contrib/distributions/BetaWithSoftplusConcentration

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API