Модуль random. Часть 3 | Программирование на Питоне

Модуль random. Часть 3

Все курсы > Программирование на Питоне > Занятие 10 (часть 3)

Рассмотрим равномерное и нормальное распределения непрерывной случайной величины.

Продолжим работать в том же ноутбуке

Непрерывное вероятностное распределение

Как уже было сказано, в отличие от дискретной величины, непрерывная величина может принимать любое значение в заданном интервале.

Непрерывное равноемерное распределение

Непрерывное равномерное распределение (continuous uniform distribution) описывает случайную величину, вероятность значений которой одинакова на заданном интервале от a до b.

$$ X \sim U(a, b) $$

Например, если мы знаем, что автобус приходит на остановку каждые 12 минут, то время ожидания автобуса на остановке равномерно распределено между 0 и 12 минутами.

$$ X \sim U(0, 12) $$

Плотность вероятности

Непрерывное распределение (в отличие от дискретного) задается плотностью вероятности (probability density function, pdf). Для равномерного непрерывного распределения плотность вероятности задается вот такой несложной функцией.

$$ pdf(x) = \begin{cases} \frac{1}{b-a}, x \in [a, b] \ 0, x \notin [a, b] \end{cases} $$

В примере с ожиданием автобуса вероятность его приезда в любой момент в пределах заданного интервала равна

$$ pdf(x) = \begin{cases} \frac{1}{12-0} = \frac{1}{12}, x \in [0, 12] \ 0, x \notin [0, 12] \end{cases} $$

На графике равномерное распределение представляет собой прямоугольник, площадь которого всегда равна единице.

непрерывное равномерное распределение

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

Например, вероятность приезда автобуса при ожидании до 12 минут включительно составляет 1.00 или 100%, потому что такой промежуток включает всю площадь прямоугольника.

Теперь давайте рассчитаем вероятность ожидания автобуса до 7 минут включительно. Нас будет интересовать интервал от 0 до 7 минут и соответствующий участок площади прямоугольника.

непрерывное равномерное распределение (пример)

Применив несложную формулу, мы без труда вычислим площадь этого участка.

$$ P(7) = \frac{1}{12} \times 7 \approx 0,583 $$

Матожидание и дисперсия

Остается рассчитать матожидание (среднее время ожидания автобуса) и дисперсию.

$$ {\mathbb E}[X] = \frac{a + b}{2} = \frac{0 + 12}{2} = 6 $$

$$ {\mathbb D}[X] = \frac{(b-a)^2}{12} = \frac{(12-0)^2}{12} = 12 $$

Реализация на Питоне

Воспользуемся функцией np.random.uniform() для того, чтобы создать равномерное распределение с параметрами U(0, 12).

Посмотрим на результат с помощью гистограммы.

непрерывное равномерное распределение на Питоне

Посмотрим на среднее значение и дисперсию.

Теперь экспериметнальным путем найдем вероятность ожидания автобуса до семи минут включительно.

Разница между np.random.random(), np.random.rand() и np.random.uniform()

Как вы заметили, мы использовали три функции для генерирования равномерного распределения.

Функция np.random.random(size = None) создает равномерное распределение в полуоткрытом интервале [0, 1). Параметр size задает размер этого распределения (количество экспериментов).

Функция np.random.rand() практически идентична.

Для функции np.random.uniform(low = 0.0, high = 1.0, size = None) интервал [0, 1) является интервалом по умолчанию, при этом можно задать любой другой промежуток (как мы и сделали выше).

Приведем несколько примеров.

Напоследок замечу, что равномерное непрерывное распределение является частным случаем бета-распределения с параметрами Beta(1, 1). О том что это такое мы поговорим с вами на курсе статистики вывода.

Нормальное распределение

На занятии по описательной статистике мы начали изучать количественные данные с примера роста мужчин в России. При этом интересно, что рост людей, как и многие другие величины (например, вес человека, артериальное давление, некоторые природные явления и многое другое) имеют так называемое нормальное распределение (normal distribution).

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

Функция плотности (pdf) нормального распределения случайной величины X определяется функцией Гаусса и поэтому нормальное распределение также называется распределением Гаусса (Gauss distribution).

$$ pdf(x, \mu, \sigma) = \frac{1}{\sigma \sqrt{2\pi}} e^{-\frac{1}{2} (\frac{x-\mu}{\sigma})^2} $$

Как видно из формулы, единственными неизвестными параметрами являются μ («мю», матожидание) и σ («сигма», среднее квадратическое отклонение, СКО). Именно они и определяют нормальное распределение.

$$ X \sim {\mathcal N}(\mu, \sigma) $$

Здесь важно напомнить, что среднее квадратическое отклонение (standard deviation) равно квадратному корню из дисперсии (variance).

$$ \sigma = \sqrt{\sigma^2} $$

Функция np.random.normal()

На Питоне нормальное распределение создается с помощью функции np.random.normal(). Мы уже использовали ее, в частности, для создания данных о росте мужчин и женщин в ноутбуке⧉ к десятому занятию вводного курса. Повторим этот код, увеличив размер массива до 100 000.

Посмотрим на результат.

Для визуализации нормального распределения можно использовать несколько типов графиков. Например, можно использовать уже знакомую нам гистограмму.

два нормальных распределения (гистограммы)

Также можно использовать график плотности (density plot) распределения случайной величины.

два нормальных распределения (графики плотности)

Еще одной полезной визуализацией является так называемый boxplot (ящик с усами или диаграмма размаха).

данные роста мужчин и женщин
распределение роста мужчин и женщин в России (boxplots)

Boxplot позволяет увидеть медиану (median), первый и третий квартили (Quartile 1, Q1 и Quartile 3, Q3), межквартильный размах (Interquartile Range, IQR), а также, что очень важно, так называемые выбросы (outliers), то есть значения, сильно отличающиеся от среднего (на графике выше они обозначены точками). Ни гистограмма, ни график плотности вероятности этой информации не выводят.

На рисунке ниже можно увидеть связь между boxplot и графиком плотности вероятности.

связь между boxplot и графиком плотности вероятности
Источник: Википедия

С σ («сигма»), обозначающей среднее квадратическое отклонение мы уже знакомы, а вот что такое квартиль, межквартильный размах и о том, что измеряют Q1 − 1.5 x IQR и Q3 + 1.5 x IQR мы поговорим на следующем курсе по анализу и обработке данных.

Дополнительно приведу пример того, как можно совместить boxplot с гистограммой на Питоне.

boxplot и гистограмма на одном графике

Расчет вероятности

Теперь давайте рассчитаем вероятность того, что рост случайно встретившегося нам человека на улице составляет менее 190 см.

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

Вначале рассчитаем теоретическую вероятность. Для создания «идеального» теоретического распределения воспользуемся библиотекой scipy.

теоретическая вероятность нормального распределения

Как и в случае с равномерным распределением задача сводится к нахождению площади под кривой от минус бесконечности до 190 включительно.

нахождение площади под кривой нормального распределения

Для нахождения площади можно воспользоваться одним из многочисленных онлайн-калькуляторов⧉.

онлайн-калькулятор нахождения площади под кривой нормального распределения

На Питоне это вычисление можно выполнить с помощью функции распределения (cumulative density function, cdf).

Обратное вычисление, то есть нахождение значения (роста) по площади выполняется с помощью квантиль-функции (percent point function, ppf).

Рассчитать вероятность того, что нам встретится человек выше 190 см очень просто. Так как мы знаем, что площадь под кривой нормального распределения равна единице, нам достаточно вычесть найденную площадь слева от 190 см из одного.

Так мы получим площадь справа от заданной границы. Посмотрим, как это выглядит на графике.

площадь справа от заданной границы

Если нужно вычислить площадь между двумя значениями a и b, например, между 170 и 190 см, из большего, находящегося правее значения функции распределения, можно вычесть меньшее, находящееся левее.

Посмотрим на этот участок на графике.

площадь между двумя значениями

Теперь вернемся к нашим данным и рассчитаем эмпирическую вероятность встретить человека с ростом не более 190 см.

В целом результат близок к найденному аналитическому решению.

Функция плотности и функция распределения

Рассмотрим связь функции плотности (pdf) и функции распределения (cdf). Напомню, что функция плотности нормального распределения определяется по формуле

$$ P(x) = \frac{1}{\sigma \sqrt{2\pi}} e^{-\frac{1}{2} (\frac{x-\mu}{\sigma})^2} $$

При этом вот что мы успели про нее узнать:

  1. Вероятность того, что случайная величина примет значение не более заданного в интервале (−∞; x] равна площади под кривой функции плотности на этом промежутке
  2. Эта площадь вычисляется с помощью функции распределения

Одновременно, известно, что площадь под кривой определяется как интеграл функции этой кривой на заданном промежутке.

Значит функция распределения (cdf) есть интеграл функции плотности (pdf).

Математически это выражается так.

$$ D(x) = \int_{-\infty}^{x} P(x) dx $$

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

pdf vs. cdf

Вначале обратимся к графику слева. Как мы видим, вероятность встретить человека не более 180 см составляет 0,5 (закрашенный синим участок). Одновременно, проинтегрировав функцию плотности на интервале (−∞; 180], на графике справа мы видим, что «накопленная» вероятность составляет 0,5, и именно эту вероятность нам показывает график функции распределения на отметке x = 180.

Продолжим исследовать связь функции плотности и функции распределения.

Если функция распределения есть интеграл функции плотности, то плотность вероятности (pdf) является производной функции распределения (cdf).

Приведем формулу.

$$ P(x) = D'(x) $$

Хотя опять же тему дифференцирования (то есть нахождения производной) мы будем разбирать на курсе по оптимизации, ничто не мешает нам начать знакомиться с ней прямо сейчас.

Совместим обе функции на одном графике.

pdf vs. cdf 2

Здесь вначале посмотрим на функцию распределения (cdf, оранжевый график). В промежутке от 150 до 210 см эта функция непрерывно возрастает, при этом она возрастает с разной скоростью. До точки x = 180 (она называется точкой перегиба, inflection point) скорость возрастания функции увеличивается, после нее убывает.

Именно это изменение описывает производная от нее функция плотности (pdf, синий график). На участке от 150 до 180 она возрастает, а потом в интервале от 180 до 210 постоянно убывает.

Таким образом, плотность вероятности описывает скорость изменения функции распределения.

Дополнительно продемонстрирую взаимосвязь двух рассматриваемых функций с помощью Питона.

Как вы видите, результат, найденный через интегрирование, ничем не отличается от результата, полученного через функцию распределения.

Вероятность конкретного значения

Важный и немного контринтуитивный момент. Вероятность того, что случайная величина непрерывного распределения примет конкретное значение (то есть нам встретится человек определенного роста) равна нулю. Это легко продемонстрировать. Ранее мы находили вероятность встретить человека ростом от 170 до 190 сантиметров, вычитая меньшую площадь под кривой из большей.

$$ P(170 \leq x \leq 190) = P(x \leq 190)-P(x \leq 170) \approx 0,68 $$

При этом если мы таким же способом постараемся найти вероятность встретить человека ростом ровно 190 сантиметров, то она очевидно будет равна нулю.

$$ P(x = 190) = P(x \leq 190)-P(x \leq 190) = 0 $$

Формирование выборки

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

формирование выборки

Пусть таким набором элементов будет мешок с разноцветными шарами.

При этом формировать выборку можно двумя способами. В первом случае мы случайным образом достаем элемент, но, прежде чем взять следующий, кладем этот элемент обратно. Такой процесс называют выборкой с возвращением (sampling with replacement), и имитировать его можно с помощью функции np.random.choice().

Обратите внимание, белый шар повторяется дважды.

Кроме того, можно сформировать выборку без возвращения (sampling without replacement). В этом случае мы не кладем элемент обратно, а откладываем в сторону и только потом достаем следующий элемент. Для этого функции np.random.choice() нужно задать параметр replace = False.

Теперь при том же seed ни один элемент не повторяется. Дополнительно замечу, что эта функция работает также и с числами.

Центральная предельная теорема

Помимо процессов в организме и природных явлений, нормальное распределение имеет большое значение для Центральной предельной теоремы (Central Limit Theorem).

Определения и нотация

Вначале вспомним несколько терминов и введем полезные обозначения.

Во-первых, напомню, что данные могут представлять собой генеральную совокупность (population) или выборку из нее (sample). Если мы берем несколько выборок из одной генеральной совокупности и измеряем для каждой из них определенный параметр (например, среднее арифметическое, sample mean), то совокупность этих средних формирует выборочное распределение (sampling distribution).

При изучении Центральной предельной теоремы нас будет интересовать поведение именно этого распределения, его среднее арифметическое и среднее квадратическое отклонение.

центральная предельная теорема

Теперь перейдем к сути.

ЦПТ и нормальное распределение

Мы уже знаем, что среднее средних нескольких выборок (mean of sampling distribution of sample means) из одной генеральной совокупности будет стремиться к истинному среднему этой генеральной совокупности.

$$ \mu_\bar{x} = \mu $$

Однако это не все. При соблюдении двух условий, а именно, (1) выборки сформированы случайным образом, (2) размер каждой выборки составляет не менее 30 элементов, выборочные средние будут следовать нормальному распределению.

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

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

$$ \sigma_\bar{x} = \frac{\sigma}{\sqrt{n}} $$

Математически эти выводы можно записать так

$$ X \sim dist(\mu, \sigma) \rightarrow \bar{X} \sim {\mathcal N}(\mu, \frac{\sigma}{\sqrt{n}}) $$

Проверим на Питоне

А теперь давайте проверим истинность ЦПТ с помощью Питона. Для начала создадим скошенное вправо распределение (right skewed distribution). Такое распределение может характеризовать, например, зарплаты людей.

Посмотрим на график этого распределения.

распределение заработной платы

Большая часть зарплат находится в нижней границе диапазона, при этом справа есть большой хвост тех немногих, чья заработная плата существенно выше среднего. Рассчитаем среднее значение и медиану.

Как и должно быть, медианное значение меньше среднего арифметического, на которое влияют небольшое количество очень высоких зарплат. По этой причине, как мы уже говорили, для измерения средней зарплаты предпочтительнее использовать медиану.

Рассчитаем СКО.

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

Посмотрим на результат.

распределение выборочных средних

Обратите внимание, распределение выборочных средних гораздо ближе к нормальному распределению, нежели исходное распределение salaries. Остается рассчитать значения, к которым, согласно ЦПТ, должны стремиться среднее значение и СКО выборочных средних.

Посмотрим так ли это.

Как мы видим, ЦПТ выполняется.

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

Кроме того, на этот раз будем делать выборку без возвращения, потому что если вы обратите внимание, несмотря на указанный параметр replace = False, на каждой итерации приведенного выше алгоритма мы формировали выборку из одной и той же генеральной совокупности, а значит элементы могли повторяться.

Важно, что при формировании выборки без возвращения ЦПТ будет выполняться, если размер одной выборки состаляет не более 5% от размера генеральной совокупности.

Для формирования распределения выборок без возвращения напишем собственную функцию sample_means(). На входе она будет принимать следующие параметры:

  • data — набор данных (генеральную совокупность)
  • n_samples — количество выборок
  • sample_size — размер одной выборки
  • replace = True — с возвращением делать выборки или без
  • random_state = None — воспроизводимость результата

Протестируем эту функцию.

распределение выборочных средних (выборка без возвращения)

Теперь сгенерируем несколько распределений выборочных средних с 20, 100 и 500 выборками в распределении и размером выборки в 2, 10 и 30 значений.

распределения выборочных средних с 20, 100 и 500 выборками и размером выборки в 2, 10 и 30 значений

Кроме того, давайте посмотрим на параметры этих распределений в табличной форме и сравним с «целевыми» показателями, основанными на ЦПТ.

параметры распределений

Как мы видим, на выполняемость ЦПТ влияет не только размер выборки, но и количество этих выборок. Очевидно, что наибольшую близость к расчетным показателям демонстрируют распределения из 500 выборок.

Стандартное нормальное распределение

Любое нормальное распределение со средним значением μ и СКО σ можно привести к стандартному нормальному распределению (standard normal distribution) со средним значением ноль и СКО равным единице.

$$ Z \sim {\mathcal N}(0, 1) $$

Для этого воспользуемся следующей формулой.

$$ z = \frac{x-\mu}{\sigma} $$

Таким образом мы приводим каждое значение x к соответствующей z-оценке (z-score), вычитая среднее μ и деля результат на СКО σ. Например, приведем данные о росте мужчин к стандартному виду (для этого воспользуемся векторизацией и трансляцией кода).

Посмотрим на результат на графике.

стандартизированное распределение роста мужчин

Стоит сказать, что ровно такого же результата можно добиться, применив метод .fit_transform() класса ScandardScaler модуля preprocessing библиотеки sklearn.

Мы уже использовали этот инструмент для нормализации данных в рамках вводного курса (в задачах классификации и кластеризации), а также при работе с файлами в Google Colab.

Добавлю, что стандартное нормальное распределение можно также создать с помощью функции np.random.standard_normal().

Посмотрим на результат.

стандартное нормальное распределение

Создаваемый массив также может быть многомерным.

Как и в случае обычного нормального распределения, мы можем найти значение (в данном случае z-score) по площади с помощью квантиль-функции.

Убедиться в верности результата можно с помощью функции распределения.

Критерии нормальности распределения

Давайте еще раз посмотрим на распределение выборочных средних. Мы сказали, что при определенных условиях оно стремится к нормальному.

Одновременно пока что мы определяли нормальность распределения «на глаз» (с помощью гистограммы, графика плотности или boxplot), хотя в некоторых случаях полезно иметь более надежный критерий нормальности. Это важно, например, при оценке:

  • Распределения остатков модели линейной регрессии
  • Распределения наблюдений в классах модели линейного дискриминантного анализа (Linear Discriminant Analysis, LDA)

Рассмотрим два способа оценки нормальности распределения.

Способ 1. График нормальной вероятности

График нормальной вероятности (normal probability plot) показывает соотношение упорядоченных по возрастанию данных и соответствующих им квантилей нормального распределения.

Если данные распределены нормально, все точки будут лежать на одной прямой, если нет — мы будем наблюдать отклонения.

Алгоритм создания графика нормальной вероятности следующий:

  1. Сортируем исходные данные по возрастанию
  2. Находим накопленную вероятность (cumulative probability) каждого значения
  3. С помощью квантиль-функции выясняем, какому квантилю соответствовала бы эта вероятность, если бы распределение было нормальным
  4. По оси x отмечаем квантили, по оси y — отсортированные данные

Накопленную вероятность будем вычислять по формуле

$$ P = \frac{i-0.375}{n+0.25} $$

где i — это индекс (начиная с единицы) значения в перечне отсортированных данных, а n — количество наблюдений.

С помощью Питона построим график нормальной вероятности для данных о росте.

график нормальной вероятности

Как мы видим, в целом данные распределены нормально (что разумеется ожидаемо, потому что мы генерировали их с помощью функции np.random.normal()).

Можно также воспользоваться функцией probplot() модуля stats библиотеки scipy.

Построим график для тех же данных о росте.

функция probplot()

Эта функция использует другую формулу для вычисления накопленной вероятности (а именно Filliben’s estimate), поэтому квантили незначительно, но будут отличаться от написанного нами алгоритма.

Давайте построим график нормальной вероятности для скошенного вправо распределения (мы договорились, что это распределение зарплат).

график нормальной вероятности для скошенного вправо распределения

Здесь мы видим, что график нормальной вероятности довольно сильно отклоняется от «идеальных» значений, лежащих на диагонали.

Остается построить график для распределения выборочных средних.

график нормальной вероятности для распределения выборочных средних

Как и должно быть, это распределение гораздо ближе к нормальному.

Способ 2. Тест Шапиро-Уилка

Тест Шапиро-Уилка (Shapiro-Wilk test) позволяет сделать статистически значимый вывод о нормальности распределения.

  • Нулевая гипотеза предполагает, что распределение нормально
  • Альтернативная гипотеза утверждает обратное

Тест Шапиро-Уилка чувствителен к количеству элементов (N) в наборе данных и теряет точность при N > 5000.

Проведем тест для распределений роста и распределения зарплат при пороговом значении 0,05, однако вначале создадим распределения с меньшим количеством элементов.

Начнем с роста.

Теперь посмотрим на зарплаты.

Как и ожидалось, в первом случае мы не смогли отвергнуть нулевую гипотезу о нормальном распределении (p-value > 0,05), во втором случае мы можем это сделать (p-value < 0,05).

Нормальное приближение биномиального распределения

Теорема Муавра-Лапласа

Теорема Муавра-Лапласа (de Moivre–Laplace theorem), частный случай Центральной предельной теоремы, утверждает, что при определенных условиях нормальное распределение может быть использовано в качестве приближения биномиального распределения (Normal Approximation to Binomial Distribution).

Напомню формулу биномиального распределения

$$ P(X = k) = \binom{n}{k} p^k (1-p)^{n-k} $$

где n — количество испытаний, k — количество успехов, а p — вероятность успеха. Так вот если np ≥ 5 и n(1−p) ≥ 5, то выполняется следующее

$$ B(n, p) \sim {\mathcal N}(np, \sqrt{np(1-p)}) $$

Другими словами, если взять вероятность успеха p близкое к 0,5, либо достаточно большое количество испытаний n, то биномиальное распределение по мере увеличения n будет приближаться нормальному распределению.

Проиллюстрируем теорему с помощью Питона. Будем подбрасывать несимметричную монету (p = 0,8) по 3, 5, 10, 15, 25 и 50 раз и сравнивать получившиеся распределения с нормальным.

теорема Муавра-Лапласа

Как мы видим, вначале (например, при n = 3), распределение было ожидаемо скошенным, при этом по мере увеличения количества бросков оно стало все больше «вписываться» в график плотности нормального распределения.

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

Нормальное приближение биномиального распределения удобно использовать, когда нужно посчитать вероятность большого числа исходов. Однако прежде внесем одно уточнение.

На графике ниже видно, что для расчета биномиальной вероятности нам нужно сложить площади столбцов гистограммы. Например, чтобы найти вероятность выпадения не более одного орла при трех последовательных подбрасываниях монеты, нужно сложить первый и второй столбцы.

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

Получаем

$$ P_B(X ≤ 1) = P_B(X = 0) + P_B(X = 1) = \frac{1}{8} + \frac{3}{8} = \frac{4}{8} = \frac{1}{2} $$

При этом, если мы хотим рассчитать эту же площадь с помощью кривой нормального распределения, нам нужно сместить границу таким образом, чтобы захватить все интересующие нас столбцы. В данном случае прибавить 0,5. То есть PN (X < 1,5).

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

Воспользуемся теоремой Муавра-Лапласа для расчета среднего и СКО (напомню n = 3, p = 0,5).

$$ \mu = np = 3 \times 0,5 = 1,5 $$

$$ \sigma = \sqrt{np(1-p)} = \sqrt{3 \times 0,5 \times 0,5} = 0,75 $$

Остается воспользоваться Питоном для нахождения площади под кривой нормального распределения.

Посмотрим на результат на графике.

площадь под кривой нормального распределения (нормальное приближение биномиального распределения)

Если же нас попросят найти вероятность конкретного значения, например, выпадения двух орлов PB(X = 2) (то есть площадь одного столбца гистограммы), то при расчете площади под кривой нормального распределения нужен интервал PN(1,5 < X < 2,5). Другими словами мы прибавили по 0,5 с обеих сторон.

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

Рассчитаем площадь с помощью Питона.

Напомню, площадь столбца составляет PB(X = 2) = 3/8 или 0,375, что довольно существенно отличается от площади под кривой. Это связано с тем, что мы взяли слишком маленькое n и условия $np \geq 5$ и $ n(1-p) \geq 5 $ в данном случае не выполняются.

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

Выведем результат на графике.

площадь под кривой нормального распределения (нормальное приближение биномиального распределения) 2
Пример приближения

Для закрепления пройденного материала рассмотрим более жизненный пример. Предположим, вам поставили партию из 500 единиц оборудования. При этом вам известно, что в среднем 2% (то есть 0,02) оборудования имеют различные дефекты. Какова вероятность того, что в партии не менее 15 бракованных единиц оборудования?

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

$$ B(n, p) = B(500; 0,02) \rightarrow P_B(X \geq 15) $$

Теперь решим эту задачу с помощью нормального приближения. По теореме Муавра-Лапласа выводим следующее.

$$ B(500; 0,02) \sim {\mathcal N}(10; \sqrt{9.8}) \rightarrow P_N(X > 14,5) $$

Таким образом, задача сводится к нахождению площади под кривой с учетом внесенной поправки на непрерывность распределения (15 − 0,5 = 14,5).

Посмотрим, как это выглядит на графике.

нормальное приближение биномиального распределения (пример)

Перейдем к комбинаторике.