Выполните мультипараметрический глобальный анализ чувствительности (требует Statistics and Machine Learning Toolbox),
выполняет мультипараметрический глобальный анализ чувствительности (MPGSA) [1] из mpgsaResults = sbiompgsa(modelObj,params,classifiers)classifiers относительно параметров модели params на модели SimBiology modelObj. params количества модели (входные параметры чувствительности) и classifiers задайте выражения ответов модели (выходные параметры модели).
параметр использования mpgsaResults = sbiompgsa(modelObj,samples,classifiers)samples выполнять мультипараметрический глобальный анализ чувствительности classifiers.
чертит выборки от mpgsaResults = sbiompgsa(modelObj,scenarios,classifiers)scanarios, SimBiology.Scenarios объект, чтобы выполнить анализ.
данные о симуляции модели использования mpgsaResults = sbiompgsa(simdata,samples,classifiers)simdata выполнять мультипараметрический глобальный анализ чувствительности classifiers.
выборки использования заданы в mpgsaResults = sbiompgsa(simdata,scenarios,classifiers)scenarios, SimBiology.Scenarios объект.
дополнительные опции использования заданы одним или несколькими аргументами пары "имя-значение". Доступные аргументы name-value отличаются, в зависимости от которого синтаксиса вы используете.mpgsaResults = sbiompgsa(___,Name,Value)
Загрузите модель Установленного целью расположения препарата (TMDD).
sbioloadproject tmdd_with_TO.sbprojПолучите активный configset и установите целевое заполнение (TO) как ответ.
cs = getconfigset(m1);
cs.RuntimeOptions.StatesToLog = 'TO';Симулируйте модель и постройте TO профиль.
sbioplot(sbiosimulate(m1,cs));

Задайте воздействие (область под кривой профиля TO) порог для целевого заполнения.
classifier = 'trapz(time,TO) <= 0.1';Выполните MPGSA, чтобы найти чувствительные параметры относительно TO. Варьируйтесь значения параметров между предопределенными границами, чтобы сгенерировать 10 000 выборок параметра.
% 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]
ParameterSamples: [10000x4 table]
Observables: {'TO'}
SimulationInfo: [1x1 struct]
Постройте квантили симулированного ответа модели.
plotData(mpgsaResults);

Постройте эмпирические кумулятивные функции распределения (eCDFs) принятых и отклоненных выборок. За исключением km, ни один из параметров не показывает значительную разницу в eCDFs для принятых и отклоненных выборок. km постройте показывает крупному Кольмогорову-Смирнову (K-S) расстояние между eCDFs принятых и отклоненных выборок. Расстояние 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 между двумя eCDFs, 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).
Можно также построить гистограммы принятых и отклоненных выборок. historgrams позволяют вам видеть тренды в принятых и отклоненных выборках. В этом примере, гистограмме 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);
modelObj — Модель SimBiologyМодель SimBiology в виде SimBiology model object.
params — Имена параметров модели, разновидностей или отсековИмена параметров модели, разновидностей или отсеков в виде вектора символов, строки, представляют в виде строки вектор или массив ячеек из символьных векторов.
Пример: ["k1","k2"]
Типы данных: char | string | cell
simdata — Данные о симуляции моделиSimData объектыДанные о симуляции модели в виде вектора из SimData объекты.
scenarios — Источник для рисования выборокSimBiology.Scenarios объектИсточник для рисования выборок в виде a SimBiology.Scenarios объект.
Примечание
Объект не должен содержать дозы или варианты как его записи.
classifiers — Выражения ответов моделиВыражения ответов модели в виде вектора символов, строки, представляют в виде строки вектор или массив ячеек из символьных векторов. Задайте выражения, ссылающиеся на симулированные количества модели, observables, время или функции MATLAB, которые находятся на пути.
Каждый классификатор должен оценить к логическому вектору из той же длины как количество выборок параметра. Сущности, такие как количества модели или observables, на который ссылаются в выражении классификатора, оценены как матрица со столбцами, содержащими курсы времени симулированных значений количества. Каждый столбец представляет одну выборку. Каждая строка представляет тот выходное время. Для получения дополнительной информации смотрите Мультипараметрический Глобальный Анализ чувствительности (MPGSA).
Если вы задаете SimData возразите как первый вход, каждая величина или observable ссылаемый классификатором должен решить к регистрируемому компоненту в SimData объект.
Можно сформулировать классификатор как вопрос о моделировании такой как, оказывает ли параметр модели влияние на превышение ответа модели или падение ниже целевого порога. Например, следующий классификатор задает воздействие (область под кривой) порог для целевого заполнения TO: trapz(time,TO) <= 0.1. Другой классификатор, используемый авторами в [1], измеряет отклонение усредненного ответа модели от среднего ответа модели по области параметра: mean(TO,1) < mean(TO,'all'). Здесь mean(TO,1) вычисляет усредненный ответ модели через время для каждой выборки входных параметров чувствительности и mean(TO,'all') вычисляет среднее значение TO ответ через все выходные времена и все выборки.
Пример: "max(Central.Drug(time > 1,:),[],1) <= 7"
Типы данных: char | string | cell
samples — Выбранные значения количеств моделиВыбранные значения количеств модели в виде таблицы. Имена переменных таблицы указывают на имена количества.
Типы данных: table
mpgsaResults = sbiompgsa(m1,{'k1','k2'},classifier,'Bounds',[0.5 5;0.1 1]) задает границы параметра для k1 и k2.Задайте одну или несколько разделенных запятой пар Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
Примечание
В зависимости от которого синтаксиса вы используете, доступные пары "имя-значение" отличаются.
Bounds — Границы параметраПараметр ограничивает в виде числовой матрицы с двумя столбцами. Первый столбец содержит нижние границы, и второй столбец содержит верхние границы. Количество строк должно быть равно количеству параметров в params.
Если параметр имеет ненулевое значение, границы по умолчанию составляют ±10% значения. Если значение параметров является нулем, границами по умолчанию является [0 1].
Пример: [0.5 5]
Типы данных: double
NumberSamples — Количество отсчетов, чертившее, чтобы выполнить мультипараметрический глобальный анализ чувствительности (значение по умолчанию) | положительное целое числоКоличество отсчетов, чертившее, чтобы выполнить мультипараметрический глобальный анализ чувствительности в виде разделенной запятой пары, состоящей из 'NumberSamples' и положительное целое число.
Типы данных: double
SamplingMethod — Метод, чтобы сгенерировать выборки параметра'Sobol' (значение по умолчанию) | вектор символов | строкаМетод, чтобы сгенерировать выборки параметра в виде вектора символов или строки. Допустимые опции:
'Sobol' — Используйте низкое несоответствие последовательность Sobol, чтобы сгенерировать выборки.
'Halton' — Используйте низкое несоответствие последовательность Холтона, чтобы сгенерировать выборки.
'lhs' — Используйте латинские выборки гиперкуба низкого несоответствия.
'random' — Используйте равномерно распределенные случайные выборки.
Типы данных: char | string
SamplingOptions — Опции для выборки методаОпции для метода выборки в виде скалярного struct. Опции отличаются в зависимости от метода выборки: sobol, halton, или lhs.
Для sobol и halton, задайте каждое имя поля и значение структуры согласно каждому аргументу значения имени sobolset (Statistics and Machine Learning Toolbox) или haltonset (Statistics and Machine Learning Toolbox) функция. SimBiology использует значение по умолчанию 1 для Skip аргумент для обоих методов. Для всех других аргументов name-value программное обеспечение использует те же значения по умолчанию sobolset или haltonset. Например, настройте структуру для Leap и Skip опции со значениями не по умолчанию можно следующим образом.
s1.Leap = 50; s1.Skip = 0;
Для lhs, существует три сэмплера, которые поддерживают различные опции выборки.
Если вы задаете ковариационную матрицу, использование SimBiology lhsnorm (Statistics and Machine Learning Toolbox) для выборки. SamplingOptions аргумент не позволен.
В противном случае используйте имя поля UseLhsdesign выбрать сэмплер.
Если значением является true, Использование SimBiology lhsdesign (Statistics and Machine Learning Toolbox). Можно использовать аргументы name-value lhsdesign задавать имена полей и значения.
Если значением является false (значение по умолчанию), SimBiology использует неконфигурируемый латинский сэмплер гиперкуба, который отличается от lhsdesign. Этот сэмплер не требует Statistics and Machine Learning Toolbox™. SamplingOptions не может содержать никакие другие опции, кроме UseLhsdesign.
Например, настройте структуру, чтобы использовать lhsdesign с Criterion и Iterations опции.
s2.UseLhsdesign = true;
s2.Criterion = "correlation";
s2.Iterations = 10;Вы не можете задать этот аргумент когда SimBiology.Scenarios объект является входом.
sbiompgsa игнорирует этот аргумент, если вы также задаете таблицу выборок как второй вход.
Distributions — Вероятностные распределенияprob.UniformDistribution (значение по умолчанию) | prob.ProbabilityDistribution возразите | вектор из prob.ProbabilityDistribution объектыВероятностные распределения раньше чертили выборки в виде prob.ProbabilityDistribution объект или вектор из этих объектов. Задайте скалярный prob.ProbabilityDistribution или вектор из длины N, где N является количеством входных параметров. Можно создать объекты распределения к выборке от различных распределений, таких как универсальные, нормальные, или логарифмически нормальные распределения, с помощью makedist (Statistics and Machine Learning Toolbox).
Если вы задаете скалярный prob.ProbabilityDistribution объект, и существует несколько входных параметров, sbiompgsa использует тот же объект распределения, чтобы чертить выборки для каждого параметра.
Вы не можете задать этот аргумент вместе с Границами.
Вы не можете задать этот аргумент когда SimBiology.Scenarios объект является входом.
sbiompgsa игнорирует этот аргумент, когда таблица выборок является входом.
Doses — Дозы, чтобы использовать во время симуляцийScheduleDose возразите | RepeatDose возразите | вектор из объектов дозыДозы, чтобы использовать во время симуляций модели в виде ScheduleDose или RepeatDose возразите или вектор из объектов дозы.
Variants — Варианты, чтобы применяться перед симуляциямиВарианты, чтобы применяться перед симуляциями модели в виде различного объекта или вектора из различных объектов.
Когда вы задаете несколько вариантов с дублирующимися техническими требованиями для значения свойства, последнее вхождение для значения свойства в массиве вариантов используется в процессе моделирования.
StopTime — Время остановки симуляцииВремя остановки симуляции в виде неотрицательного скаляра. Если вы не задаете никакой StopTime ни OutputTimes, функция использует время остановки от активной конфигурации модели модели. Вы не можете задать оба StopTime и OutputTimes.
Типы данных: double
UseParallel — Отметьте, чтобы запустить симуляции модели параллельноfalse (значение по умолчанию) | trueОтметьте, чтобы запустить симуляции модели параллельно в виде true или false. Когда значением является true и Parallel Computing Toolbox™ доступен, функциональные параллельные симуляции запусков.
Типы данных: логический
Accelerate — Отметьте, чтобы включить ускорение моделиtrue (значение по умолчанию) | falseОтметьте, чтобы включить ускорение модели в виде true или false.
Типы данных: логический
OutputTimes — Simulation времена выходаSimulation времена выхода в виде разделенной запятой пары, состоящей из 'OutputTimes' и числовой вектор. Функция вычисляет ответы модели в этих выходных моментах времени. Вы не можете задать оба StopTime и OutputTimes. По умолчанию функция использует выходные времена первой симуляции модели.
Пример: [0 1 2 3.5 4 5 5.5]
Типы данных: double
SignificanceLevel — Уровень значения для теста Кольмогорова-Смирнова (значение по умолчанию) | числовой скаляр между 0 и 1Уровень значения для Кольмогорова-Смирнова тестирует в виде разделенной запятой пары, состоящей из 'SignificanceLevel' и числовой скаляр между 0 и 1. Для получения дополнительной информации смотрите Двухвыборочный критерий Колмогорова-Смирнова (Statistics and Machine Learning Toolbox).
Пример: 0.1
Типы данных: double
InterpolationMethod — Метод для интерполяции симуляций модели"interp1q" (значение по умолчанию) | вектор символов | строкаМетод для интерполяции ответов модели на единый набор выходных времен в виде вектора символов или строки. Допустимые опции следуют.
Типы данных: char | string
mpgsaResults — Мультипараметрические глобальные результаты анализа чувствительностиSimBiology.gsa.MPGSA объектМультипараметрические глобальные результаты анализа чувствительности, возвращенные как SimBiology.gsa.MPGSA объект. Объект также содержит данные о симуляции модели, используемые, чтобы выполнить MPGSA.
Мультипараметрический глобальный анализ чувствительности позволяет вам изучить относительную важность параметров относительно классификатора, заданного ответами модели. Классификатор является выражением ответов модели, которое оценивает к логическому вектору. sbiompgsa реализует метод MPSA, описанный Тиманном и. al. (см. текст информации о поддержке S2) [1].
sbiompgsa выполняет следующие шаги.
Сгенерируйте выборки параметра N с помощью метода выборки. sbiompgsa хранилища эти выборки как таблица в свойстве, mpgsaResults.ParameterSamples, из возвращенного объекта. Количество строк равно количеству отсчетов, и количество столбцов равно количеству входных параметров.
Совет
Можно задать N и метод выборки с помощью 'NumberSamples' и 'SamplingMethod' аргументы пары "имя-значение", соответственно, когда вы вызываете sbiompgsa.
Вычислите ответ модели путем симуляции модели для каждого набора параметров, который является одной реализацией значений параметра модели. В этом случае набор параметров равен строке в ParameterSamples таблица.
Оцените классификатор. Классификатор является выражением, которое оценивает к логическому вектору. Например, если ваш ответ модели является AUC плазменной концентрации препарата, можно задать классификатор с порогом токсичности 0,8, где AUC концентрации препарата выше того порога рассматривается токсичным.
Наборы параметров затем разделены на две различных группы, такой как принятые (нетоксичный) и отклонили (токсичные) группы.
Для каждого входного параметра вычислите эмпирические кумулятивные функции распределения (ecdf (Statistics and Machine Learning Toolbox)) принятых и отклоненных демонстрационных значений.
Сравните два eCDFs принятых и отклоненных групп, использующих Двухвыборочный критерий Колмогорова-Смирнова (Statistics and Machine Learning Toolbox), чтобы вычислить расстояние Кольмогорова-Смирнова. Уровнем значения по умолчанию теста Кольмогорова-Смирнова является 0.05. Если два eCDFs подобны, расстояние мало, означая, что ответ модели не чувствителен относительно входного параметра. Если два eCDFs отличаются, расстояние является большим, означая, что ответ модели чувствителен к параметру.
Примечание
Тест Кольмогорова-Смирнова принимает, что выборки следуют за непрерывным распределением. Убедитесь, что графики eCDF непрерывны, когда вы увеличиваете количество отсчетов. Если eCDFs не непрерывны, но подобны шагу в пределе бесконечных выборок, то результаты не могут отразить истинную чувствительность.
[1] Тиманн, Кристиан А., Joep Vanlier, Мээйк Х. Устервир, Альберт К. Гроен, Питер А. Дж. Хилберс и Натал А. В. ван Рил. “Анализ Траектории параметра, чтобы Идентифицировать Эффекты Обработки Фармакологических Вмешательств”. Отредактированный Скоттом Маркелом. PLoS Вычислительная Биология 9, № 8 (1 августа 2013): e1003166. https://doi.org/10.1371/journal.pcbi.1003166.
SimBiology.gsa.MPGSA | sbiosobol | sbioelementaryeffects | ecdf (Statistics and Machine Learning Toolbox) | kstest2 (Statistics and Machine Learning Toolbox) | Observable
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.