Оценки максимального правдоподобия
задает параметры, использующие аргументы пары имя-значение в дополнение к любому из входных аргументов в предыдущих синтаксисах. Например, можно указать цензурированные данные, частоту наблюдений и уровень достоверности.phat = mle(___,Name,Value)
Загрузите образцы данных.
load carbigПеременная MPG имеет мили на галлон для различных моделей автомобилей.
Нарисовать гистограмму MPG данные.
histogram(MPG)

Распределение несколько правильно искажено. Симметричное распределение, такое как нормальное распределение, может быть неправильным.
Оценка параметров распределения Burr Type XII для MPG данные.
phat = mle(MPG,'distribution','burr')
phat = 1×3
34.6447 3.7898 3.5722
Максимальные оценки правдоподобия для параметра шкалы α составляют 34,6447. Оценки для двух параметров и распределения типа Burr XII составляют 3,7898 и 3,5722 соответственно.
Создайте данные выборки размера 1000 из нецентрального распределения хи-квадрат со степенями свободы 8 и параметром нецентральности 3.
rng default % for reproducibility x = ncx2rnd(8,3,1000,1);
Оцените параметры нецентрального распределения хи-квадрат по данным выборки. Для этого пользовательское определение нецентрального хи-квадрата pdf с помощью pdf входной аргумент.
[phat,pci] = mle(x,'pdf',@(x,v,d)ncx2pdf(x,v,d),'start',[1,1])
phat = 1×2
8.1052 2.6693
pci = 2×2
7.1120 1.6025
9.0983 3.7362
Оценка степеней свободы равна 8.1052, а параметр нецентральности - 2.6693. 95% доверительный интервал для степеней свободы составляет (7,1121,9,0983), а параметр нецентральности - (1,6025,3,7362). Доверительные интервалы включают истинные значения параметров 8 и 3 соответственно.
Загрузите образцы данных.
load('readmissiontimes.mat');Данные включают ReadmissionTime, которое имеет время реадмиссии для 100 пациентов. Вектор столбца Censored имеет цензурную информацию для каждого пациента, где 1 указывает цензурное наблюдение, а 0 указывает точное время реадмиссии. Это смоделированные данные.
Определите пользовательскую плотность вероятности и кумулятивную функцию распределения.
custpdf = @(data,lambda) lambda*exp(-lambda*data); custcdf = @(data,lambda) 1-exp(-lambda*data);
Оцените параметр, lambda, пользовательского распределения для цензурированных выборочных данных.
phat = mle(ReadmissionTime,'pdf',custpdf,'cdf',custcdf,'start',0.05,'Censoring',Censored)
phat = 0.1096
Загрузите образцы данных.
load('readmissiontimes.mat');Данные включают ReadmissionTime, которое имеет время реадмиссии для 100 пациентов. Вектор столбца Censored имеет цензурную информацию для каждого пациента, где 1 указывает цензурное наблюдение, а 0 указывает точное время реадмиссии. Это смоделированные данные.
Определите пользовательскую логарифмическую плотность вероятности и функцию выживания.
custlogpdf = @(data,lambda,k) log(k)-k*log(lambda)+(k-1)*log(data)-(data/lambda).^k; custlogsf = @(data,lambda,k) -(data/lambda).^k;
Оцените параметры, lambda и k, пользовательского распределения для цензурированных выборочных данных.
phat = mle(ReadmissionTime,'logpdf',custlogpdf,'logsf',custlogsf,... 'start',[1,0.75],'Censoring',Censored)
phat = 1×2
9.2090 1.4223
Параметры масштаба и формы пользовательского распределения - 9.2090 и 1.4223 соответственно.
Загрузите образцы данных.
load('readmissiontimes.mat')Данные включают ReadmissionTime, которое имеет время реадмиссии для 100 пациентов. Это смоделированные данные.
Определите функцию отрицательного логарифмического правдоподобия.
custnloglf = @(lambda,data,cens,freq) - length(data)*log(lambda) + sum(lambda*data,'omitnan');Оцените параметры определенного распределения.
phat = mle(ReadmissionTime,'nloglf',custnloglf,'start',0.05)
phat = 0.1462
Создайте 100 случайных наблюдений из биномиального распределения с числом испытаний, = 20, и вероятностью успеха, = 0,75.
data = binornd(20,0.75,100,1);
Оцените вероятность успеха и 95% доверительные пределы, используя смоделированные данные выборки.
[phat,pci] = mle(data,'distribution','binomial','alpha',.05,'ntrials',20)
phat = 0.7615
pci = 2×1
0.7422
0.7800
Оценка вероятности успеха составляет 0,7615, а нижний и верхний пределы 95% доверительного интервала составляют 0,7422 и 0,78. Этот интервал охватывает истинное значение, используемое для моделирования данных.
Создайте данные выборки размера 1000 из нецентрального распределения хи-квадрат со степенями свободы 10 и параметром нецентральности 5.
rng default % for reproducibility x = ncx2rnd(10,5,1000,1);
Предположим, что параметр noncentrality зафиксирован значением 5. Оцените степени свободы нецентрального распределения хи-квадрат по данным выборки. Для этого пользовательское определение нецентрального хи-квадрата pdf с помощью pdf входной аргумент.
[phat,pci] = mle(x,'pdf',@(x,v,d)ncx2pdf(x,v,5),'start',1)
phat = 9.9307
pci = 2×1
9.5626
10.2989
Оценка для параметра нецентральности составляет 9,9307, с 95% доверительным интервалом 9,5626 и 10,2989. Доверительный интервал включает в себя истинное значение параметра, равное 10.
Создайте данные выборки размера 1000 из распределения Rician с параметром нецентральности 8 и параметром масштаба 5. Сначала создайте дистрибутив Rician.
r = makedist('Rician','s',8,'sigma',5);
Теперь создайте образец данных из созданного выше распределения.
rng default % For reproducibility x = random(r,1000,1);
Предположим, что параметр масштаба известен, и оцените параметр нецентральности по данным выборки. Для этого используйте mle, необходимо задать пользовательскую функцию плотности вероятности Rician.
[phat,pci] = mle(x,'pdf',@(x,s,sigma) pdf('rician',x,s,5),'start',10)
phat = 7.8953
pci = 2×1
7.5405
8.2501
Оценка для параметра нецентральности составляет 7,8953, с 95% доверительным интервалом 7,5404 и 8,2501. Доверительный интервал включает истинное значение параметра, равное 8.
Добавьте параметр масштаба в распределение хи-квадрат для адаптации к масштабу данных и подгоните его. Во-первых, сформировать данные выборки размера 1000 из распределения хи-квадрат со степенями свободы 5 и масштабировать их в 100 раз.
rng default % For reproducibility x = 100*chi2rnd(5,1000,1);
Оцените степени свободы и коэффициент масштабирования. Для этого пользователь определяет функцию плотности вероятности хи-квадрат с помощью pdf входной аргумент. Для функции плотности требуется коэффициент 1/с для данных, масштабированных на .
[phat,pci] = mle(x,'pdf',@(x,v,s)chi2pdf(x/s,v)/s,'start',[1,200])
phat = 1×2
5.1079 99.1681
pci = 2×2
4.6862 90.1215
5.5297 108.2146
Оценка степеней свободы составляет 5.1079, а шкала 99.1681. Доверительный интервал 95% для степеней свободы равен (4,6862,5,5279), а параметр масштаба - (90.1215 108.2146). Доверительные интервалы включают истинные значения параметров 5 и 100 соответственно.
data - Образцы данныхОбразец данных mle используется для оценки параметров распределения, заданных как вектор.
Типы данных: single | double
dist - Тип распределения'normal' (по умолчанию) | вектор символов или строковый скаляр типа распределенияТип распределения для оценки параметров, указанный как один из следующих.
dist | Описание | Параметр 1 | Параметр 2 | Параметр 3 | Параметр 4 |
|---|---|---|---|---|---|
'Bernoulli' | Распределение Бернулли | pВероятность успеха для каждого испытания | — | — | — |
'Beta' | Бета-дистрибутив | a: первый параметр формы | b: параметр второй формы | — | — |
'bino' или 'Binomial' | Биномиальное распределение | n: количество испытаний | pВероятность успеха для каждого испытания | — | — |
'BirnbaumSaunders' | Распределение Бирнбаум-Сондерс | β: параметр масштаба | γ: параметр формы | — | — |
'Burr' | Распределение Burr типа XII | α: параметр масштаба | c: первый параметр формы | k: параметр второй формы | — |
'Discrete Uniform' или 'unid' | Равномерное распределение (дискретное) | n: максимальное наблюдаемое значение | — | — | — |
'exp' или 'Exponential' | Экспоненциальное распределение | λ: среднее значение | — | — | — |
'ev' или 'Extreme Value' | Распределение экстремальных значений | λ: параметр местоположения | start: параметр scale | — | — |
'gam' или 'Gamma' | Гамма-распределение | a: параметр формы | b: параметр масштаба | — | — |
'gev' или 'Generalized Extreme Value' | Обобщенное распределение экстремальных значений | k: параметр формы | start: параметр scale | λ: параметр местоположения | — |
'gp' или 'Generalized Pareto' | Обобщенное распределение Парето | k: параметр индекса хвоста (форма) | start: параметр scale | start: параметр threshold (местоположение) | — |
'geo' или 'Geometric' | Геометрическое распределение | p: параметр вероятности | — | — | — |
'hn' или 'Half Normal' | Распределение половинной нормы | λ: параметр местоположения | start: параметр scale | — | — |
'InverseGaussian' | Обратное гауссово распределение | λ: параметр масштаба | λ: параметр формы | — | — |
'Logistic' | Логистическое распределение | λ: среднее значение | start: параметр scale | — | — |
'LogLogistic' | Логистическое распределение | λ: среднее логарифмических значений | λ: параметр шкалы логарифмических значений | — | — |
'logn' или 'LogNormal' | Логнормальное распределение | λ: среднее логарифмических значений | λ: стандартное отклонение логарифмических значений | — | — |
'Nakagami' | Распределение Накагами | λ: параметр формы | start: параметр scale | — | — |
'nbin' или 'Negative Binomial' | Отрицательное биномиальное распределение | r: число успешных операций | pВероятность успеха в одном испытании | — | — |
'norm' или 'Normal' | Нормальное распределение | λ: среднее значение | λ: стандартное отклонение | — | — |
'poiss' или 'Poisson' | Распределение Пуассона | λ: среднее значение | — | — | — |
'rayl' или 'Rayleigh' | Распределение Рэлея | b: параметр масштаба | — | — | — |
'Rician' | Распределение Rician | s: параметр нецентральности | start: параметр scale | — | — |
'Stable' | Стабильное распределение | α: первый параметр формы | β: параметр второй формы | γ: параметр масштаба | δ: параметр местоположения |
'tLocationScale' | t Распределение по местоположению и масштабированию | λ: параметр местоположения | start: параметр scale | start: параметр shape | — |
'unif' или 'Uniform' | Равномерное распределение (непрерывное) | a: нижняя конечная точка (минимум) | b: верхняя конечная точка (максимум) | — | — |
'wbl' или 'Weibull' | Распределение Вейбулла | a: параметр масштаба | b: параметр формы | — | — |
Пример: 'rician'
pdf - Пользовательская функция плотности вероятностиПользовательская функция распределения вероятности, заданная как дескриптор функции, созданный с помощью @.
Эта пользовательская функция принимает вектор data и один или более индивидуальных параметров распределения в качестве входных параметров и возвращает вектор значений плотности вероятности.
Например, если имя пользовательской функции плотности вероятности равно newpdf, то можно указать дескриптор функции в mle следующим образом.
Пример: @newpdf
Типы данных: function_handle
cdf - Пользовательская кумулятивная функция распределенияПользовательская кумулятивная функция распределения, заданная как дескриптор функции, созданный с помощью @.
Эта пользовательская функция принимает вектор data и один или более индивидуальных параметров распределения в качестве входных параметров и возвращает вектор кумулятивных значений вероятности.
Необходимо определить cdf с pdf если данные подвергаются цензуре и используется 'Censoring' аргумент пары имя-значение. Если 'Censoring' отсутствует, указывать не нужно cdf при использовании pdf.
Например, если именем пользовательской кумулятивной функции распределения является newcdf, то можно указать дескриптор функции в mle следующим образом.
Пример: @newcdf
Типы данных: function_handle
logpdf - Пользовательская функция плотности вероятности регистрацииПользовательская функция плотности вероятности журнала, заданная как дескриптор функции, созданный с помощью @.
Эта пользовательская функция принимает вектор data и один или более индивидуальных параметров распределения в качестве входных параметров и возвращает вектор логарифмических значений вероятности.
Например, если имя пользовательской функции плотности вероятности log равно customlogpdf, то можно указать дескриптор функции в mle следующим образом.
Пример: @customlogpdf
Типы данных: function_handle
logsf - Пользовательская функция выживания журналаПользовательская функция выживания журнала, заданная как дескриптор функции, созданный с помощью @.
Эта пользовательская функция принимает вектор data и один или более индивидуальных параметров распределения в качестве входных параметров и возвращает вектор логарифмических значений вероятности выживания.
Необходимо определить logsf с logpdf если данные подвергаются цензуре и используется 'Censoring' аргумент пары имя-значение. Если 'Censoring' отсутствует, указывать не нужно logsf при использовании logpdf.
Например, если именем пользовательской функции выживания журнала является logsurvival, то можно указать дескриптор функции в mle следующим образом.
Пример: @logsurvival
Типы данных: function_handle
nloglf - Пользовательская функция отрицательной логикиПользовательская функция отрицательной логики, заданная как дескриптор функции, созданный с помощью @.
Эта пользовательская функция принимает следующие входные аргументы.
params | Вектор значений параметров распределения. mle определяет количество параметров из числа элементов в start. |
data | Вектор данных. |
cens | Логический вектор цензурированных значений. |
freq | Вектор целых частот данных. |
nloglf должны принять все четыре аргумента, даже если вы не используете 'Censoring' или 'Frequency' аргументы пары имя-значение. Можно писать 'nloglf' проигнорировать cens и freq аргументы в этом случае.
nloglf возвращает скалярное отрицательное значение логарифма и, необязательно, отрицательный вектор градиента логарифма (см. 'GradObj' поле в 'Options').
Если именем пользовательской функции отрицательного правдоподобия журнала является negloglik, то можно указать дескриптор функции в mle следующим образом.
Пример: @negloglik
Типы данных: function_handle
start - Начальные значения параметровНачальные значения параметров для пользовательских функций, заданные как скалярное значение или вектор скалярных значений.
Использовать start когда вы подходите под пользовательские дистрибутивы, то есть когда вы используете pdf и cdf, logpdf и logsf, или nloglf входные аргументы.
Пример: 0.05
Пример: [100,2]
Типы данных: single | double
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
'Censoring',Cens,'Alpha',0.01,'Options',Opt указывает, что mle оценивает параметры для распределения цензурных данных, определенных массивом Cens, вычисляет доверительные пределы 99% для оценок параметров и использует управляющие параметры алгоритма, заданные структурой Opt.'Censoring' - Индикатор цензурыИндикатор цензуры, определяемый как разделенная запятыми пара, состоящая из 'Censoring' и логический массив того же размера, что и data. Используйте 1 для наблюдений с правильной цензурой и 0 для наблюдений с полным соблюдением. По умолчанию все наблюдения полностью соблюдаются.
Например, если данные, подвергнутые цензуре, находятся в двоичном массиве с именем Censored, то можно указать цензурированные данные следующим образом.
Пример: 'Censoring',Censored
mle поддерживает цензуру для следующих дистрибутивов:
| Бирнбаум-Сондерс Шум Показательный Экстремальная ценность Гамма Обратный гауссов Ядро Логистика журнала | Логистический Логарифмически нормальный Nakagami Нормальный Rician t Местоположение - масштаб Weibull |
Типы данных: logical
'Frequency' - Периодичность наблюденийЧастота наблюдений, указанная как разделенная запятыми пара, состоящая из 'Frequency' и массив, содержащий неотрицательные целые числа, размер которых равен data. По умолчанию используется одно наблюдение на элемент data.
Например, если частоты наблюдения хранятся в массиве с именем Freq, можно указать частоты следующим образом.
Пример: 'Frequency',Freq
Типы данных: single | double
'Alpha' - Уровень значимостиУровень значимости для доверительного интервала оценок параметров, pci, указанная как пара, разделенная запятыми, состоящая из 'Alpha' и скалярное значение в диапазоне (0,1). Уровень достоверности pci является 100(1-Alpha)% . Значение по умолчанию: 0.05 для 95% уверенности.
Например, для 99% доверительных пределов можно указать доверительный уровень следующим образом.
Пример: 'Alpha',0.01
Типы данных: single | double
'NTrials' - Число судебных разбирательствКоличество испытаний для соответствующего элемента data, указанная как пара, разделенная запятыми, состоящая из 'Ntrials' и скаляр или вектор того же размера, что и data.
Применяется только к биномиальному распределению.
Пример: 'Ntrials',total
Типы данных: single | double
'mu' - Параметр местоположенияПараметр местоположения для распределения половинной нормы, указанный как пара, разделенная запятыми, состоящая из 'mu' и скалярное значение.
Применяется только к половинному распределению.
Пример: 'mu',1
Типы данных: single | double
'Options' - Параметры управления алгоритмом подгонкиПараметры управления алгоритмом подгонки, указанные как разделенная запятыми пара, состоящая из 'Options' и структура, возвращенная statset.
Не относится ко всем дистрибутивам.
Используйте 'Options' аргумент пары имя-значение для управления подробностями оптимизации максимального правдоподобия при подгонке пользовательского распределения. Для имен параметров и значений по умолчанию введите statset('mlecustom'). Можно задать параметры под новым именем и использовать их в аргументе пары имя-значение. mle интерпретирует следующее statset параметры для пользовательского распределительного фитинга.
| Параметр | Стоимость |
|---|---|
'GradObj' | По умолчанию:
|
'DerivStep' | По умолчанию: Относительная разница, заданная как скаляр или вектор того же размера, что и
|
'FunValCheck' | По умолчанию:
Плохой выбор начальной точки иногда может привести к возврату этих функций |
'TolBnd' |
По умолчанию: Смещение для нижней и верхней границ при использовании
|
Пример: 'Options',statset('mlecustom')
Типы данных: struct
'LowerBound' - Нижние границы для параметров распределенияНижние границы для параметров распределения, указанные как разделенная запятыми пара, состоящая из 'Lowerbound' и вектор того же размера, что и start.
Этот аргумент пары имя-значение допустим только при использовании pdf и cdf, logpdf и logcdf, или nloglf входные аргументы.
Пример: 'Lowerbound',0
Типы данных: single | double
'UpperBound' - верхние границы для параметров распределения;Верхние границы для параметров распределения, указанные как разделенная запятыми пара, состоящая из 'Upperbound' и вектор того же размера, что и start.
Этот аргумент пары имя-значение допустим только при использовании pdf и cdf, logpdf и logsf, или nloglf входные аргументы.
Пример: 'Upperbound',1
Типы данных: single | double
'OptimFun' - Функция оптимизации'fminsearch' (по умолчанию) | 'fmincon'Функция оптимизации mle использует для максимизации вероятности, указанной как пара, разделенная запятыми, состоящая из 'Optimfun' и либо 'fminsearch' или 'fmincon'.
По умолчанию: 'fminsearch'.
Можно только указать 'fmincon' если доступна Toolbox™ оптимизации.
'Optimfun' аргумент пары имя-значение допустим только в том случае, если вы подходите под пользовательские распределения, то есть при использовании pdf и cdf, logpdf и logsf, или nloglf входные аргументы.
Пример: 'Optimfun','fmincon'
phat - Оценки параметровОценки параметров, возвращаемые как скалярное значение или вектор строки.
pci - Доверительные интервалы для оценок параметровДоверительные интервалы для оценок параметров, возвращаемые в виде вектора столбца или матрицы в зависимости от количества параметров, следовательно, размер phat.
pci является матрицей 2 на k, где k - количество параметров mle оценки. Первый и второй ряды pci показать нижний и верхний доверительные пределы соответственно.
Функция выживания - это вероятность выживания как функция времени. Его также называют функцией выжившего. Она даёт вероятность того, что время выживания индивида превышает определённое значение. Поскольку кумулятивная функция распределения, F (t), является вероятностью того, что время выживания меньше или равно заданному моменту времени, функция выживания для непрерывного распределения, S (t), является дополнением кумулятивной функции распределения: S (t) = 1 - F (t).
При поставке функций распределения mle вычисляет оценки параметров с использованием итеративного алгоритма максимизации. При использовании некоторых моделей и данных плохой выбор начальной точки может привести к mle сходиться к локальному оптимуму, который не является глобальным максимизатором, или не сходиться полностью. Даже в случаях, когда логарифмическое правдоподобие хорошо ведет себя вблизи глобального максимума, выбор начальной точки часто имеет решающее значение для сходимости алгоритма. В частности, если начальные значения параметров находятся далеко от MLE, неполный поток в функциях распределения может привести к бесконечным log-вероятностям.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.