Если вы выполняете вычисления максимального правдоподобия, первый шаг, который вам нужно сделать, заключается в следующем: Предположите распределение, которое зависит от некоторых параметров. Поскольку вы generate
свои данные (вы даже знаете свои параметры), вы "говорите" своей программе принять гауссово распределение. Однако вы не указываете своей программе свои параметры (0 и 1), а оставляете их априори неизвестными и затем вычисляете их.
Теперь у вас есть примерный вектор (назовем его x
, его элементы от x[0]
до x[100]
), и вы должны его обработать. Для этого необходимо вычислить следующее (f
обозначает функцию плотности вероятности гауссовского распределения ):
f(x[0]) * ... * f(x[100])
Как вы можете видеть в приведенной мной ссылке, f
использует два параметра (греческие буквы µ и σ). Вы теперь должны вычислить значения для µ и σ таким образом, чтобы f(x[0]) * ... * f(x[100])
принял максимально возможное значение.
Когда вы это сделаете, µ - это максимальное значение вероятности для среднего значения, а σ - максимальное значение вероятности для стандартного отклонения.
Обратите внимание, что я не говорю вам явно , как вычислять значения для µ и σ, поскольку это довольно математическая процедура, которой у меня нет под рукой (и, вероятно, я бы ее не понял ); Я просто расскажу вам технику получения значений, которая может быть применена и к любым другим дистрибутивам.
Поскольку вы хотите максимизировать исходный термин, вы можете «просто» максимизировать логарифм исходного термина - это избавит вас от обращения со всеми этими продуктами и преобразует исходный термин в сумму с некоторыми слагаемыми.
Если вы действительно хотите рассчитать его, вы можете сделать несколько упрощений, которые приведут к следующему термину (надеюсь, я ничего не испортил):
Теперь вы должны найти значения для µ и σ такие, чтобы вышеупомянутый зверь был максимальным. Это очень нетривиальная задача, называемая нелинейной оптимизацией.
Можно упростить одно из следующих упрощений: исправить один параметр и попытаться вычислить другой. Это избавляет вас от одновременной работы с двумя переменными.