Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Bernoulli Distribution

Boost , Math Toolkit 2.5.0 , Distributions

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext
#include <boost/math/distributions/bernoulli.hpp>
namespace boost{ namespace math{
 template <class RealType = double,
           class Policy   = policies::policy<> >
 class bernoulli_distribution;
 typedef bernoulli_distribution<> bernoulli;
 template <class RealType, class Policy>
 class bernoulli_distribution
 {
 public:
    typedef RealType  value_type;
    typedef Policy    policy_type;
    bernoulli_distribution(RealType p); // Constructor.
    // Accessor function.
    RealType success_fraction() const
    // Probability of success (as a fraction).
 };
}} // namespaces

Распределение Бернулли является дискретным распределением результатов одного испытания с только двумя результатами, 0 (незаконность) или 1 (успешность), с вероятностью успеха p.

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

Бернулли является биномиальным распределением (k = 1, p) с только одним испытанием.

Функция плотности вероятностей pdf f(0) = 1 - p, f(1) = p. Cumulative distribution function D(k) = если (k == 0) 1 - p 1.

Следующий график иллюстрирует, как функция вероятности pdf варьируется в зависимости от результата одного испытания:

и функция распределения Cumulative

Member Functions
bernoulli_distribution(RealType p);

Конструирует распределение bernoulli с успехом_fraction p.

RealType success_fraction() const

Description.

Non-member Accessors

Поддерживаются все обычные функции, не являющиеся членами , которые являются общими для всех дистрибутивов: Камулятивная распределительная функция, Функция плотности , Quantile, Hazard Function, Cumulative Hazard Function, mean, median, mode, вариант, стандартное отклонение,скьюнесс, rt>.

Домен случайной переменной составляет 0 и 1, а полезный поддерживаемый диапазон составляет всего 0 или 1.

Вне этого диапазона функции не определены, или могут бросить исключение domain_error и сделать сообщение об ошибке доступным.

Accuracy

Распределение Бернулли осуществляется с помощью простых арифметических операторов и поэтому должно иметь ошибки в эпсилоне или двух.

Implementation

В следующей таблице p - вероятность успеха и q = 1-p. k - случайная вариат, либо 0, либо 1.

[Note] Note

Распределение Бернулли реализовано здесь как ограниченное распределение. Если требуется обобщенная версия, позволяющая k быть какой-либо реальной, то следует использовать биномиальное распределение с одним испытанием, например:

binomial_ distribution(1, 0.25)

Функция

Введение

Поддерживаемый диапазон

{0, 1}

pdf

Использование отношение: pdf = 1 - p для k = 0, а также p

cdf

Использование отношения: cdf = 1 - p для k = 0, в остальном 1

cdf

q = 1 - p

quantile

если x <=(1-p) 1

квартильность из дополнения

если x <=(1-p) 1 0

mean

p

дисперсия

p * (1 - p)

режим

если (p < 0,5) 0 еще 1

скьюнесс

(1 - 2 * p) / квадрат (p * q)

куртоз

6 * p * p - 6 * p +1/ p * q

избыток куртоза

куртоз -3

References

PrevUpHomeNext

Статья Bernoulli Distribution раздела Math Toolkit 2.5.0 Distributions может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Distributions ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-07-04 23:19:23/0.006788969039917/0