Нелинейная регрессия

Что такое нелинейная регрессия?

Цель регрессионных моделей состоит в том, чтобы описать переменную отклика как функцию независимых переменных. Множественные линейные регрессионые модели описывают ответ как линейную комбинацию коэффициентов и функций независимых переменных. Нелинейности могут быть смоделированы с помощью нелинейных функций независимых переменных. Однако коэффициенты всегда поступают в модель линейным способом.

Нелинейные регрессионые модели являются более механистическими моделями нелинейных отношений между откликом и независимыми переменными. Параметры могут входить в модель как экспоненциальная, тригонометрическая, степенная или любая другая нелинейная функция. Неизвестные параметры в модели оцениваются путем минимизации статистического критерия, такой как отрицательный журнал правдоподобность или сумма квадратов отклонений между наблюдаемыми и предсказанными значениями.

В случае фармакокинетических (PK) исследований данные о реакции обычно представляют некоторые измеренные концентрации лекарств, и независимыми переменными часто являются доза и время. Нелинейная функция, часто используемая для таких данных, является экспоненциальной функцией, поскольку многие лекарства, когда-то распределенные у пациента, удаляются экспоненциально. Один параметр PK для оценки в этом случае является частотой, с которой препарат удаляется из организма, учитывая данные о времени концентрации.

Для образца рассмотрим данные о концентрации лекарственного средства в плазме от одного человека после внутривенной дозы болюса, измеренной в разное время точки с некоторыми ошибками. Предположим, что измеренная концентрация препарата следует за моноэкспоненциальным снижением: Ct=C0eket+aε.

Эта модель описывает период времени концентрации препарата в организме (Ct), как функцию концентрации препарата после внутривенной дозы болюса в t = 0 (C0), времени (t) и параметра скорости элиминации (ke). ε - переменная среднего нуля и отклонения в единицах, то есть, εN(0,1) представление ошибки измерения и a является параметром модели ошибки (здесь, стандартное отклонение).

Более обобщенно можно записать модель как

yi=f(t;p)+g(εi)

где yi - ответ <reservedrangesplaceholder4> th (такой как концентрация препарата), f - функция времени t и параметры модели p (такие как ke), и модель ошибкиg(εi).

Опции модели в SimBiology

В этой таблице представлены нелинейные опции регрессии, доступные в SimBiology®.

Опция подбора кривойПример

Оценка индивидуального параметра (НеОхлаждённый подбор кривой)

Подгонка каждого отдельного человека отдельно, получая один набор оценок параметров для каждого индивидуума.

Оценка параметра для конкретных категорий или групп

Подгонка каждой категории или группы по отдельности, что приводит к одному набору оценок параметров для каждой категории.

Оценка параметров всей популяции (Объединённый подбор кривой)

Подгонка всех данных, объединенных вместе, приводит всего к одному набору оценок параметров.

Кроме того, SimBiology поддерживает четыре вида моделей ошибок для измеренных или наблюдаемых реакций, а именно, постоянных (по умолчанию), пропорциональных, комбинированных и экспоненциальных. Для получения дополнительной информации см. «Модели ошибок». В зависимости от метода оптимизации, можно задать модель ошибки для каждого ответа или всех ответов. Для получения дополнительной информации смотрите Поддерживаемые методы оценки параметра в SimBiology.

Преобразования параметров

SimBiology поддерживает три преобразования параметров. Эти преобразования параметров могут быть полезны для улучшения сходимости аппроксимации или для ограничения параметров.

Общая модель, объясненная ранее, yi=f(t;p)+g(εi), где p - параметры модели, которые можно преобразовать. Рассмотрим следующие два уравнения.

β=T(p)

p=T1(β)

Вот, β представляет преобразованные параметры модели, p представляет нетрансформированные параметры модели, T является преобразованием, и T-1 - обратное преобразование.

SimBiology выполняет оценку параметра с помощью преобразованных параметров β, что означает, что преобразованная модель F(t;β)=f(t;T1(β)) используется, где F - функция модели, использующая преобразованные параметры. Эквивалентно, функция модели может быть переписана как f(t;p)=F(t;T(p)).

Другими словами, оптимизатор SimBiology использует преобразованные значения во время максимальной оценки правдоподобия, но сообщенный результат подгонки возвращается к пространству модели (нетрансформированные значения). Например, если вы оцениваете Cl параметра зазора, который преобразован в журнал, у вас есть Clβ = log (Cl), где Clβ то, что использует оптимизатор, и Cl то, что видит модель.

Установка преобразований параметров накладывает неявные ограничения на нетрансформированные значения параметров. The log преобразование сохраняет значение параметров всегда положительным, и logit и probit преобразования сохраняют значение параметров между 0 и 1. В качестве альтернативы можно задать дополнительные ограничения на значения параметров путем предоставления явных ограничений для нетрансформированных параметров p или для преобразованных параметров β.

ПреобразованиеПреобразуемый параметр и диапазон †Нетрансформированные ‡ параметров и областей значенийОписание

log

β=log(p)[Inf,Inf]p=exp(β)[0,Inf]

Во многих случаях log преобразование полезно для параметров, таких как константы скорости, значения которых могут охватывать несколько порядков величин и исследовать пространство параметров для таких параметров. The log преобразование может быть также полезным для положительных физических величин, таких как зазор или объем камеры.

Применение log преобразование накладывает неявную границу на нетрансформированный параметр, так что его значение всегда положительно.

logitβ=logit(p) = log(p1p)[Inf,Inf]p=1/(1+exp(β))[0,1]

The logit преобразование накладывает неявную границу (между 0 и 1) на нетрансформированном значении параметров. Это может быть полезно для параметров, которые имеют значения только между 0 и 1, такие как биодоступность. Кроме того, можно задать границы параметра (используя EstimatedInfo object) вместо указания logit преобразование.

probitβ=norminv(p)[Inf,Inf]p=normcdf(β)[0,1]

Подобно logit, а probit преобразование накладывает неявную границу (между 0 и 1) на нетрансформированном значении параметров. SimBiology использует нормальную обратную совокупную функцию распределения norminv (Statistics and Machine Learning Toolbox).

The probit для преобразования требуется Statistics and Machine Learning Toolbox™.

† Используйте InitialTransformedValue и TransformedBounds свойства EstimatedInfo object чтобы задать начальное преобразованное значение и преобразованные границы в требуемый подмножество области значений.

‡ Используйте InitialValue и Bounds свойства EstimatedInfo object установить начальное нетрансформированное значение и нетрансформированные границы к желаемому подмножеству области значений.

Оценка максимальных вероятностей

SimBiology оценивает параметры методом максимальной вероятности. Вместо того, чтобы непосредственно максимизировать функцию правдоподобия, SimBiology создает эквивалентную задачу минимизации. Когда это возможно, оценка формулируется как взвешенная оптимизация методом наименьших квадратов (WLS), которая минимизирует сумму квадратов взвешенных невязок. В противном случае оценка формулируется как минимизация противоположного логарифма вероятности (NLL). Формулировка WLS часто сходится лучше, чем формулировка NLL, и SimBiology может использовать специализированные алгоритмы WLS, такие как алгоритм Левенберга-Марквардта, реализованный в lsqnonlin и lsqcurvefit. SimBiology использует WLS, когда существует единственная модель ошибки, которая является постоянной, пропорциональной или экспоненциальной. SimBiology использует NLL, если у вас есть комбинированная модель ошибки или модель с несколькими ошибками, то есть модель, имеющая модель ошибки для каждого ответа.

sbiofit поддерживает различные методы оптимизации и передает в сформулированном выражении WLS или NLL метод оптимизации, который минимизирует его. Для простоты каждое выражение, показанное ниже, принимает только одну модель ошибки и один ответ. Если ответов несколько, SimBiology принимает сумму выражений, которые соответствуют моделям ошибок заданных ответов.

 Выражение, которое минимизируется
Взвешенные наименьшие квадраты (WLS)Для модели постоянной ошибки, iN(yifi)2
Для пропорциональной модели ошибки, iN(yifi)2fi2/fgm2
Для экспоненциальной модели ошибки, iN(lnyilnfi)2
Для числовых весов, iN(yifi)2wgm/wi
Отрицательная логарифмическая правдоподобность (NLL)Для комбинированной модели ошибки и модели с несколькими ошибками, iN(yifi)22σi2+iNln2πσi2

Переменные определяются следующим образом.

N

Количество экспериментальных наблюдений

yi

i-е экспериментальное наблюдение

fi

Предсказанное значение i-го наблюдения

σi

Стандартное отклонение i-го наблюдения.

  • Для модели постоянной ошибки, σi=a

  • Для пропорциональной модели ошибки, σi=b|fi|

  • Для объединенной модели ошибки, σi=a+b|fi|

fgm

fgm=(iN|fi|)1N

wi

Вес i-го предсказанного значения

wgm

wgm=(iNwi)1N

Когда вы используете числовые веса или функцию веса, веса приняты обратно пропорциональными отклонения ошибки, то есть σi2=a2wi где a - параметр постоянной ошибки. Если вы используете веса, вы не можете задать модель ошибки, кроме модели постоянной ошибки.

Различные методы оптимизации имеют различные требования к функции, которая минимизируется. Для некоторых методов оценка параметров модели выполняется независимо от оценки параметров модели ошибки. В следующей таблице обобщены модели ошибок и любые отдельные формулы, используемые для оценки параметров модели ошибок, где a и b являются параметрами модели ошибок, и e является стандартной переменной среднего нуля и единичной дисперсии (Гауссова).

Модель ошибкиФункция оценки параметра ошибки
'constant': yi=fi+aea2=1NiN(yifi)2
'exponential': yi=fiexp(ae)a2=1NiN(lnyilnfi)2
'proportional': yi=fi+b|fi|eb2=1NiN(yififi)2
'combined': yi=fi+(a+b|fi|)eПараметры ошибки включены в минимизацию.
Весаa2=1NiN(yifi)2wi

Примечание

nlinfit поддерживаются только модели с одной ошибкой, а не модели с несколькими ошибками, то есть модели с конкретной реакцией. Для комбинированной модели ошибки он использует итерационный алгоритм WLS. Для других моделей ошибок он использует алгоритм WLS, как описано ранее. Для получения дополнительной информации см. nlinfit (Statistics and Machine Learning Toolbox).

Рабочий процесс аппроксимации для sbiofit

Следующие шаги показывают один из рабочих процессов, которые можно использовать в командной строке, чтобы соответствовать модели PK.

  1. Импорт данных.

  2. Преобразуйте данные в groupedData формат.

  3. Определите данные дозирования. Для получения дополнительной информации смотрите Дозы в Модели.

  4. Создайте структурную модель (одно-, двух- или многокомпартментную модель). Для получения дополнительной информации смотрите Создание Фармакокинетических моделей.

  5. Сопоставьте переменную отклика от данных с компонентом модели. Например, если у вас есть данные о измеренной концентрации препарата для центрального отделения, то сопоставьте его с видами препарата в центральном отделении (обычно это Drug_Central вид).

  6. Задайте параметры для оценки с помощью EstimatedInfo object. Опционально можно задать преобразования параметров, начальные значения и ограничения параметров.

  7. Выполните оценку параметра, используя sbiofit.

Для иллюстрированных примеров смотрите следующее.

См. также

| | |

Похожие темы