Постройте эмпирический CDF мультипараметрического глобального анализа чувствительности
использует дополнительные опции, заданные одним или несколькими аргументами пары "имя-значение".h
= plot(mpgsaObj
,Name,Value
)
Загрузите модель диспозиции лекарственных средств, опосредованных мишенью (TMDD).
sbioloadproject tmdd_with_TO.sbproj
Получите активный конфигурационный набор и установите целевое заполнение (TO
) как ответ.
cs = getconfigset(m1);
cs.RuntimeOptions.StatesToLog = 'TO';
Симулируйте модель и постройте график TO
профиль.
sbioplot(sbiosimulate(m1,cs));
Определите порог воздействия (область под кривой профиля ТО) для целевой заполненности.
classifier = 'trapz(time,TO) <= 0.1';
Выполните MPGSA, чтобы найти чувствительные параметры относительно TO. Измените значения параметров между предопределенными границами, чтобы сгенерировать 10000 выборок параметров.
% Suppress an information warning that is issued during simulation. warnSettings = warning('off', 'SimBiology:sbservices:SB_DIMANALYSISNOTDONE_MATLABFCN_UCON'); rng(0,'twister'); % For reproducibility params = {'kel','ksyn','kdeg','km'}; bounds = [0.1, 1; 0.1, 1; 0.1, 1; 0.1, 1]; mpgsaResults = sbiompgsa(m1,params,classifier,'Bounds',bounds,'NumberSamples',10000)
mpgsaResults = MPGSA with properties: Classifiers: {'trapz(time,TO) <= 0.1'} KolmogorovSmirnovStatistics: [4x1 table] ECDFData: {4x4 cell} SignificanceLevel: 0.0500 PValues: [4x1 table] SupportHypothesis: [10000x1 table] Observables: {'TO'} ParameterSamples: [10000x4 table] SimulationInfo: [1x1 struct]
Постройте график квантилей отклика моделируемой модели.
plotData(mpgsaResults);
Постройте график эмпирических кумулятивных функций распределения (eCDFs) принятых и отклоненных выборок. Кроме km
ни один из параметров не показывает значительного различия в eCDF для принятых и отклонённых выборок. The km
график показывает большое расстояние Колмогоров-Смирнов (К-С) между eCDF принятых и отклонённых выборок. Расстояние K-S является максимальным абсолютным расстоянием между двумя кривыми eCDFs.
h = plot(mpgsaResults);
% Resize the figure.
pos = h.Position(:);
h.Position(:) = [pos(1) pos(2) pos(3)*2 pos(4)*2];
Чтобы вычислить расстояние K-S между двумя eCDF, SimBiology использует двусторонний тест, основанный на нулевой гипотезе, что два распределения принятых и отклоненных выборок равны. См. kstest2
(Statistics and Machine Learning Toolbox) для получения дополнительной информации. Если расстояние K-S большое, то два распределения различаются, что означает, что классификация выборок чувствительна к изменениям в параметре входа. С другой стороны, если расстояние K-S мало, то изменения в параметре входа не влияют на классификацию выборок. Результаты предполагают, что классификация нечувствительна к параметру входа. Чтобы оценить значимость статистики K-S, отвергающей нулевую гипотезу, можно изучить p-значения.
bar(mpgsaResults)
На столбиковую диаграмму показаны две полосы для каждого параметра: одна для расстояния K-S (статистика K-S) и другая для соответствующего p-значения. Вы отвергаете нулевую гипотезу, если p-значение меньше уровня значимости. Крест (x
) показан для любого значения p, которое почти 0. Вы можете увидеть точное значение p, соответствующее каждому параметру.
[mpgsaResults.ParameterSamples.Properties.VariableNames',mpgsaResults.PValues]
ans=4×2 table
Var1 trapz(time,TO) <= 0.1
________ _____________________
{'kel' } 0.0021877
{'ksyn'} 1
{'kdeg'} 0.99983
{'km' } 0
Значения p km
и kel
меньше уровня значимости (0,05), что подтверждает альтернативную гипотезу о том, что принятые и отклоненные выборки происходят из различных распределений. Другими словами, классификация выборок чувствительна к km
и kel
но не к другим параметрам (kdeg
и ksyn
).
Можно также построить гистограммы принятых и отклонённых выборок. Исторические граммы позволяют вам увидеть тренды в принятых и отклонённых выборках. В этом примере гистограмма km
показывает, что существуют больше принятых выборок для больших km
значений, в то время как kel
гистограмма показывает, что отклонённых выборок меньше, чем kel
увеличивается.
h2 = histogram(mpgsaResults);
% Resize the figure.
pos = h2.Position(:);
h2.Position(:) = [pos(1) pos(2) pos(3)*2 pos(4)*2];
Восстановите параметры предупреждения.
warning(warnSettings);
mpgsaObj
- Результаты многопараметрического глобального анализа чувствительностиSimBiology.gsa.MPGSA
объектМультипараметрические результаты глобального анализа чувствительности, заданные как SimBiology.gsa.MPGSA
объект.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
h = plot(results,'Classifiers',1)
задает график eCDF первого классификатора.'Parameters'
- Входные величины модели для построения графикаВходные величины модели, а именно параметры, виды или отсеки, для построения, заданные как разделенная разделенными запятой парами, состоящая из 'Parameters'
и вектор символов, строка, строковый вектор, массив ячеек векторов символов или вектор положительных целых чисел, индексируемый в столбцы mpgsaObj.ParameterSamples
таблица.
Пример: 'Parameters','k1'
Типы данных: double
| char
| string
| cell
'Classifiers'
- Классификаторы на графикеКлассификаторы для построения графика, заданные как разделенная разделенными запятой парами, состоящая из 'Classifiers'
и вектор символов, строка, строковый вектор, массив ячеек векторов символов или вектор положительных целых чисел.
Задайте выражения классификаторов, чтобы построить график как вектор символов, строка, строковый вектор, массив ячеек векторов символов. Кроме того, можно задать вектор положительных целых чисел, индексирующих в mpgsaObj.Classifiers
.
Пример: 'Classifiers',[1 3]
Типы данных: double
| char
| string
| cell
'AcceptedSamplesColor'
- Цвет eCDF принятых выборокЦвет eCDF принятых выборок, заданный как разделенная разделенными запятой парами, состоящая из 'AcceptedSamplesColor'
и трехэлементный вектор-строка. По умолчанию функция использует первый MATLAB® цвет по умолчанию. Чтобы просмотреть порядок цвета по умолчанию, введите get(groot,'defaultAxesColorOrder')
или см. свойство ColorOrder.
Пример: 'AcceptedSamplesColor',[0.4,0.3,0.2]
Типы данных: double
'RejectedSamplesColor'
- Цвет eCDF отклонённых выборокЦвет eCDF отклоненных выборок, заданный как разделенная разделенными запятой парами, состоящая из 'RejectedSamplesColor'
и трехэлементный вектор-строка. По умолчанию функция использует второй цвет по умолчанию MATLAB для первого порядка и второй цвет по умолчанию для общего порядка. Чтобы просмотреть порядок цвета по умолчанию, введите get(groot,'defaultAxesColorOrder')
или см. свойство ColorOrder.
Пример: 'RejectedSamplesColor',[0.9,0.5,0.2]
Типы данных: double
h
- УказательУказатель на рисунок, заданный как указатель на рисунок.
[1] Tiemann, Christian A., Joep Vanlier, Maaike H. Oosterveer, Albert K. Groen, Peter A. J. Hilbers, and Natal A. W. van Riel. «Анализ траектории параметра для выявления эффектов лечения фармакологических вмешательств». Под редакцией Скотта Маркела. PLoS Вычислительная биология 9, № 8 (1 августа 2013): e1003166. https://doi.org/10.1371/journal.pcbi.1003166.
bar
| histogram
| plotData
| sbiompgsa
| SimBiology.gsa.MPGSA
| ecdf
(Statistics and Machine Learning Toolbox) | kstest2
(Statistics and Machine Learning Toolbox)
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.