Menu
CoddyTech

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

Часть раздела Статистика для машинного обучения путешествия по Machine Learning на Coddy. Урок 13 из 64.

Спам-фильтр сообщает: «90% спама»; на пакете семян написано: «80% прорастут». Вероятность — это доля при большом числе испытаний, от 0 (никогда) до 1 (всегда). Вот 50 семян:

50 семян в виде сетки из ячеек: 41 тёмная ячейка проросла, а 9 светлых ячеек, отмеченных x, не проросли; доля составляет 0,82 при вероятности 0,8

rng.random(n) генерирует десятичные числа от 0 до 1, и 80% из них оказываются меньше 0.8. Поэтому одно сравнение высаживает 1000 семян:

rng = np.random.default_rng(3)
sprouted = rng.random(1000) < 0.8
print(sprouted.sum())
print(sprouted.mean())

Это выводит:

814
0.814

Среднее значение логических значений — это доля значений True: 0.814, что близко к 0.8. К концу этой главы с помощью этого приёма можно будет оценить весь игровой лоток с костями.

challenge icon

Задание

Средне

Нападающий забивает пенальти с некоторой вероятностью. Программа считывает вероятность (от 0 до 1), затем количество ударов; в начальном коде создаётся rng.

  1. Смоделируй удары: гол засчитывается, если значение rng.random меньше вероятности.
  2. Выведи количество голов и оценочную вероятность, округлённую до 3 знаков после запятой.

Для 0.5 и 10 ударов — короткий запуск, в котором результат сильно отклоняется от 0.5:

Goals: 3 of 10
Estimated chance: 0.3

Попробуйте сами

import numpy as np

chance = float(input())
kicks = int(input())

# Не изменяйте строку ниже
rng = np.random.default_rng(21)

# Напишите свой код ниже
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Статистика для машинного обучения

Потренируйтесь самостоятельно: Онлайн-компилятор Python