Ответ
Вероятность (Probability) — это мера того, насколько вероятно получить определенные наблюдаемые данные при заданных фиксированных параметрах модели. Это функция от данных.
Правдоподобие (Likelihood) — это функция от параметров модели при фиксированных наблюдаемых данных. Она показывает, насколько правдоподобны те или иные значения параметров, учитывая то, что мы уже увидели.
Ключевое отличие:
- Вероятность:
P(Данные | Параметры)— «Какова вероятность увидеть эти данные, если параметры такие-то?» - Правдоподобие:
L(Параметры | Данные)— «Насколько правдоподобны эти параметры, если мы увидели такие данные?»
Практический пример на Python:
Допустим, мы подбрасываем монету 10 раз и получаем 7 орлов. Мы хотим оценить параметр p — вероятность выпадения орла.
import numpy as np
from scipy.stats import binom
import matplotlib.pyplot as plt
# Наши фиксированные данные: 7 успехов из 10 попыток
k, n = 7, 10
# Рассчитаем вероятность получить наши данные для разных гипотез о p
p_values = np.linspace(0, 1, 100)
likelihoods = binom.pmf(k, n, p_values) # Это именно правдоподобие!
# Построим график функции правдоподобия
plt.plot(p_values, likelihoods)
plt.xlabel('Вероятность орла (p)')
plt.ylabel('Правдоподобие L(p | k=7, n=10)')
plt.title('Функция правдоподобия для биномиального эксперимента')
plt.grid(True)
plt.show()
# Максимум правдоподобия (MLE) будет при p = 0.7
mle = p_values[np.argmax(likelihoods)]
print(f"Оценка максимального правдоподобия (MLE) для p: {mle:.2f}")
В машинном обучении и статистике мы часто используем принцип максимального правдоподобия (MLE) для нахождения наилучших параметров модели, то есть ищем параметры, которые максимизируют функцию правдоподобия для наших данных.