Асимптотическая ковариация средств оценки наибольшего правдоподобия
acov = mlecov(params,data,'pdf',pdf)
acov = mlecov(params,data,'pdf',pdf,'cdf',cdf)
acov = mlecov(params,data,'logpdf',logpdf)
acov = mlecov(params,data,'logpdf',logpdf,'logsf',logsf)
acov = mlecov(params,data,'nloglf',nloglf)
acov = mlecov(___,Name,Value)
возвращает приближение в асимптотическую ковариационную матрицу средств оценки наибольшего правдоподобия параметров для распределения, заданного пользовательской функцией плотности вероятности acov
= mlecov(params
,data
,'pdf',pdf
)pdf
.
mlecov
вычисляет приближение конечной разности к Гессиану логарифмической вероятности в оценках наибольшего правдоподобия params
, учитывая наблюдаемый data
, и возвращает отрицательную инверсию того Гессиана.
задает аргументы пары "имя-значение" использования опций в дополнение к любому из входных параметров в предыдущих синтаксисах. Например, можно задать подвергнутые цензуре данные и частоту наблюдений.acov
= mlecov(___,Name,Value
)
Загрузите выборочные данные.
load carbig
Векторный Weight
показывает веса 406 автомобилей.
В Редакторе MATLAB® создайте функцию, которая возвращает функцию плотности вероятности (PDF) логарифмически нормального распределения. Сохраните файл в своей текущей рабочей папке как lognormpdf.m
.
function newpdf = lognormpdf(data,mu,sigma)
newpdf = exp((-(log(data)-mu).^2)/(2*sigma^2))./(data*sigma*sqrt(2*pi));
Оцените параметры, mu
и sigma
, пользовательски заданного распределения.
phat = mle(Weight,'pdf',@lognormpdf,'start',[4.5 0.3])
phat = 7.9600 0.2804
Вычислите аппроксимированную ковариационную матрицу оценок параметра.
acov = mlecov(phat,Weight,'pdf',@lognormpdf)
acov = 1.0e-03 * 0.1937 -0.0000 -0.0000 0.0968
Оцените стандартные погрешности оценок.
se = sqrt(diag(acov))
se = 0.0139 0.0098
Стандартная погрешность оценок mu и сигмы 0.0139 и 0.0098, соответственно.
В редакторе MATLAB создайте функцию, которая возвращает логарифмическую функцию плотности вероятности бета распределения. Сохраните файл в своей текущей рабочей папке как betalogpdf.m
.
function logpdf = betalogpdf(x,a,b)
logpdf = (a-1)*log(x)+(b-1)*log(1-x)-betaln(a,b);
Сгенерируйте выборочные данные от бета распределения с параметрами 1.23 и 3.45 и оцените параметры с помощью моделируемых данных.
rng('default') x = betarnd(1.23,3.45,25,1); phat = mle(x,'dist','beta')
phat = 1.1213 2.7182
Вычислите аппроксимированную ковариационную матрицу оценок параметра.
acov = mlecov(phat,x,'logpdf',@betalogpdf)
acov = 0.0810 0.1646 0.1646 0.6074
Загрузите выборочные данные.
load(fullfile(matlabroot,'examples','stats','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, соответственно.
Вычислите аппроксимированную ковариационную матрицу оценок параметра.
acov = mlecov(phat,ReadmissionTime,... 'logpdf',custlogpdf,'logsf',custlogsf,'Censoring',Censored)
acov = 2×2
0.5653 0.0102
0.0102 0.0163
Загрузите выборочные данные.
load(fullfile(matlabroot,'examples','stats','readmissiontimes.mat'));
Выборочные данные включают ReadmissionTime
, который имеет времена повторного доступа для 100 пациентов. Это - моделируемые данные.
Задайте отрицательную логарифмическую функцию правдоподобия.
custnloglf = @(lambda,data,cens,freq) -length(data)*log(lambda)...
+ nansum(lambda*data);
Оцените параметры заданного распределения.
phat = mle(ReadmissionTime,'nloglf',custnloglf,'start',0.05)
phat = 0.1462
Вычислите отклонение оценки параметра.
acov = mlecov(phat,ReadmissionTime,'nloglf',custnloglf)
acov = 2.1374e-04
Вычислите стандартную погрешность.
sqrt(acov)
ans = 0.0146
params
— Оценки параметраОценки параметра, заданные как скалярное значение или вектор скалярных значений. Эти оценки параметра должны быть оценками наибольшего правдоподобия. Например, можно задать оценки параметра, возвращенные mle
.
Типы данных: single | double
данные
Выборочные данныеВыборочные данные использование mle
, чтобы оценить параметры распределения, заданные как вектор.
Типы данных: single | double
pdf
— Пользовательская функция плотности вероятностиПользовательская функция распределения вероятностей, заданная как указатель на функцию, созданный с помощью @
.
Эта пользовательская функция принимает векторный data
и один или несколько отдельных параметров распределения как входные параметры, и возвращает вектор значений плотности вероятности.
Например, если именем пользовательской функции плотности вероятности является newpdf
, то можно задать указатель на функцию в mlecov
можно следующим образом.
Пример: @newpdf
Типы данных: function_handle
cdf
— Пользовательская кумулятивная функция распределенияПользовательская кумулятивная функция распределения, заданная как указатель на функцию, созданный с помощью @
.
Эта пользовательская функция принимает векторный data
и один или несколько отдельных параметров распределения как входные параметры, и возвращает вектор значений интегральной вероятности.
Необходимо задать cdf
с pdf
, если данные подвергаются цензуре, и вы используете аргумент пары "имя-значение" 'Censoring'
. Если 'Censoring'
не присутствует, вы не должны задавать cdf
при использовании pdf
.
Например, если именем пользовательской кумулятивной функции распределения является newcdf
, то можно задать указатель на функцию в mlecov
можно следующим образом.
Пример: @newcdf
Типы данных: function_handle
logpdf
— Пользовательская логарифмическая функция плотности вероятностиПользовательская логарифмическая функция плотности вероятности, заданная как указатель на функцию, созданный с помощью @
.
Эта пользовательская функция принимает векторный data
и один или несколько отдельных параметров распределения как входные параметры, и возвращает вектор логарифмических значений вероятности.
Например, если именем пользовательской логарифмической функции плотности вероятности является customlogpdf
, то можно задать указатель на функцию в mlecov
можно следующим образом.
Пример: @customlogpdf
Типы данных: function_handle
logsf
— Пользовательская логарифмическая функция выживанияПользовательская логарифмическая функция выживания, заданная как указатель на функцию, созданный с помощью @
.
Эта пользовательская функция принимает векторный data
и один или несколько отдельных параметров распределения как входные параметры, и возвращает вектор логарифмических значений вероятности выживания.
Необходимо задать logsf
с logpdf
, если данные подвергаются цензуре, и вы используете аргумент пары "имя-значение" 'Censoring'
. Если 'Censoring'
не присутствует, вы не должны задавать logsf
при использовании logpdf
.
Например, если именем пользовательской логарифмической функции выживания является logsurvival
, то можно задать указатель на функцию в mlecov
можно следующим образом.
Пример: @logsurvival
Типы данных: function_handle
nloglf
— Пользовательская отрицательная функция loglikelihoodПользовательская отрицательная функция loglikelihood, заданная как указатель на функцию, созданный с помощью @
.
Эта пользовательская функция принимает следующие входные параметры.
params | Вектор значений параметра распределения |
data | Вектор данных |
cens | Булев вектор подвергнутых цензуре значений |
freq | Вектор частот целочисленных данных |
nloglf
должен принять все четыре аргумента, даже если вы не используете аргументы пары "имя-значение" 'Censoring'
или 'Frequency'
. Можно записать 'nloglf'
, чтобы проигнорировать аргументы cens
и freq
в этом случае.
nloglf
возвращает скалярное отрицательное loglikelihood значение и опционально, отрицательный loglikelihood вектор градиента (см. поле 'GradObj'
в 'Options'
).
Если именем пользовательской отрицательной логарифмической функции правдоподобия является negloglik
, то можно задать указатель на функцию в mlecov
можно следующим образом.
Пример: @negloglik
Типы данных: function_handle
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Censoring',cens,'Options',opt
указывает, что mlecov
считывает подвергнутые цензуре информации данных из векторного cens
и выполняет согласно новой структуре опций opt
.'Censoring'
— Индикатор для цензурированияИндикатор для цензурирования, заданный как пара, разделенная запятой, состоящая из 'Censoring'
и булева массива, одного размера как data
. Используйте 1 для наблюдений, которые являются правильные подвергнутый цензуре и 0 для наблюдений, которые полностью наблюдаются. Значением по умолчанию являются все наблюдения, полностью наблюдаются.
Для подвергнутых цензуре данных необходимо использовать cdf
с pdf
или logsf
с logpdf
, или nloglf
должен быть задан, чтобы составлять цензурирование.
Например, если подвергнутая цензуре информация о данных находится в двоичном массиве под названием Censored
, то можно задать подвергнутые цензуре данные можно следующим образом.
Пример: 'Censoring',Censored
Типы данных: логический
'Frequency'
— Частота наблюденийЧастота наблюдений, заданных как пара, разделенная запятой, состоящая из 'Frequency'
и массива, содержащего неотрицательные целочисленные количества, который одного размера как data
. Значением по умолчанию является одно наблюдение на элемент data
.
Например, если частоты наблюдения хранятся в массиве под названием Freq
, можно задать частоты можно следующим образом.
Пример: 'Frequency',Freq
Типы данных: single | double
Опции
Числовые опцииЧисловые опции для вычисления Гессиана конечной разности, заданного как пара, разделенная запятой, состоящая из 'Options'
и структуры, возвращенной statset
.
Можно установить опции под новым именем и использовать его в аргументе пары "имя-значение". Применимые параметры statset
следующие.
Параметр | Значение |
---|---|
'GradObj' |
Значением по умолчанию является
|
'DerivStep' |
Значением по умолчанию является Относительный размер шага используется в конечной разности для вычислений Гессиана. Это может быть скаляр или тот же размер как |
Пример: 'Options',statset('mlecov')
Типы данных: struct
acov
— Приближение к асимптотической ковариационной матрицеПриближение к асимптотической ковариационной матрице, возвращенной как p-by-p матрица, где p является количеством параметров в params
.
Функция выживания является вероятностью выживания как функция времени. Это также вызвано функция оставшегося в живых. Это дает вероятность, что время выживания человека превышает определенное значение. Поскольку кумулятивная функция распределения, F (t), является вероятностью, что время выживания меньше чем или равно данному моменту времени, функция выживания для непрерывного распределения, S (t), является дополнением кумулятивной функции распределения: S (t) = 1 – F (t).
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.