Объект, содержащий результаты многопараметрического анализа глобальной чувствительности (MPGSA)
Создать SimBiology.gsa.MPGSA объект с использованием sbiompgsa.
Classifiers - Выражения ответов моделиЭто свойство доступно только для чтения.
Выражения откликов модели, заданные как массив ячеек символьных векторов.
Типы данных: cell
KolmogorovSmirnovStatistics - Статистика Колмогорова-СмирноваЭто свойство доступно только для чтения.
Статистика Колмогорова-Смирнова, уточнена в виде таблицы. Размер таблицы - [params, classifiers], где params - количество входных параметров, а classifiers - количество классификаторов. Вход[i,j] содержит статистику Колмогорова-Смирнова, возвращенную kstest2 (Statistics and Machine Learning Toolbox) сравнение двух eCDF i-го параметра, принятых и отклоненных j-м классификатором. Если все пробы приняты или отклонены классификатором, введите [i,j] имеет значение NaN.
VariableNames содержит выражения классификатора, указанные в качестве входных данных для sbiompgsa. Длинные выражения усекаются с добавлением '(classifier i)', где i - индекс классификатора. VariableDescriptions содержит неусеченные выражения классификатора.
Типы данных: table
ECDFData - Вычисленные данные eCDFЭто свойство доступно только для чтения.
Вычисленные данные eCDF, заданные как массив ячеек числовых векторов. Размер массива: [params,4,classifiers], где params - количество входных параметров и классификаторов - количество классификаторов.
Клетки [i,1:2,j] содержат выходные данные f (Статистика и инструментарий машинного обучения) и x (Статистика и инструментарий машинного обучения) из ecdf Функция (Statistics and Machine Learning Toolbox) для образцов параметра i, принятых классификатором j.
Клетки [i,3:4,j] содержат соответствующие выходы для выборок параметра i, отклоненных классификатором j.
Если классификатор принимает все выборки или отклоняет все выборки, соответствующие данные eCDF пусты.
Типы данных: cell
SignificanceLevel - Уровень значимости двустороннего теста Колмогорова-Смирнова0.05 (по умолчанию) | скалярное значение в диапазоне (0,1)Это свойство доступно только для чтения.
Уровень значимости двустороннего теста Колмогорова-Смирнова, определяемый как скалярное значение в диапазоне (0,1). Для получения более подробной информации см. kstest2 (Статистика и инструментарий машинного обучения).
Типы данных: double
PValues - Асимптотические p-значенияЭто свойство доступно только для чтения.
Асимптотические p-значения для тестов Колмогорова-Смирнова, указанные в таблице. Размер таблицы - [params, classifiers], где params - количество входных параметров, а classifiers - количество классификаторов .
Вход [i,j] содержит значения p, возвращенные kstest2 (Statistics and Machine Learning Toolbox) сравнение двух eCDF i-го параметра, принятых и отклоненных j-м классификатором. Если все пробы приняты или отклонены классификатором, введите [i,j] имеет значение NaN.
VariableNames содержит выражения классификатора, указанные в качестве входных данных для sbiompgsa. Длинные выражения усекаются с добавлением '(classifier i)', где i - индекс классификатора. VariableDescriptions содержит неусеченные выражения классификатора.
Типы данных: table
SupportHypothesis - Флаги, указывающие, принимаются ли образцы классификаторамиЭто свойство доступно только для чтения.
Флаги, указывающие, принимаются ли образцы классификаторами, указанные как таблица. Размер таблицы - [NumberSamples, classifiers], где NumberSamples - количество выборок параметров, а classifiers - количество классификаторов.
VariableNames содержит выражения классификатора, указанные в качестве входных данных для sbiompgsa. Длинные выражения усекаются с добавлением '(classifier i)', где i - индекс классификатора. VariableDescriptions содержит неусеченные выражения классификатора.
Типы данных: table
Observables - Названия типовых ответов или наблюдаемых объектовЭто свойство доступно только для чтения.
Имена откликов модели или наблюдаемых объектов, указанных как массив ячеек символьных векторов.
Типы данных: char
ParameterSamples - Выборочные значения параметровЭто свойство доступно только для чтения.
Выборочные значения параметров, указанные как таблица. Каждая строка представляет один набор параметров, а каждый столбец - один входной параметр. Дополнительные сведения см. в разделе Многопараметрический анализ глобальной чувствительности (MPGSA).
Типы данных: table
SimulationInfo - Информация о моделировании, используемая для многопараметрического анализа глобальной чувствительностиЭто свойство доступно только для чтения.
Данные моделирования, такие как данные моделирования и выборки параметров, используемые для многопараметрического анализа глобальной чувствительности, задаются как структура. Структура содержит следующие поля.
SimFunction — SimFunction используется для моделирования откликов модели или наблюдаемых объектов.
SimData — SimData массив размеров [NumberSamples,1], где 'NumberSamples' - количество выборок. Массив содержит результаты моделирования из ParameterSamples.
OutputTimes - Числовой вектор столбца, содержащий общий вектор времени всех SimData объекты.
Bounds - Числовая матрица размера [params,2]. params - количество входных параметров. Первый столбец содержит нижние границы, а второй столбец содержит верхние границы для входов чувствительности.
Для этого поля установлено значение [] если при вызове в качестве входных данных были указаны значения образцов параметров sbiompgsa.
DoseTables - Массив ячеек таблиц доз, используемых для SimFunction оценка. DoseTables - выходной сигнал getTable(doseInput), где doseInput - стоимость, определенная для 'Doses' аргумент пары имя-значение в вызове sbiosobol или sbiompgsa. Если дозы не применяются, в этом поле устанавливается значение [].
ValidSample - Логический вектор размера [NumberSamples,1] указывает, не удалось ли выполнить моделирование для конкретного образца. Повторная выборка данных моделирования (SimData) может привести к NaN значения, если данные экстраполированы. Такие SimData указаны как недействительные.
InterpolationMethod - Наименование метода интерполяции для SimData.
SamplingMethod - Название метода отбора проб, используемого для рисования ParameterSamples. При звонке sbiompgsa с samples (выборочные величины модели) в качестве входных данных для этого поля соответствующего объекта результатов устанавливается значение 'unknown'.
RandomState - Структура, содержащая состояние rng перед рисованием ParameterSamples. При звонке sbiompgsa с samples(значения образца параметра) в качестве входных данных, это свойство соответствующего объекта результатов [].
Типы данных: struct
plotData | Построение сводки квантилей моделирования модели из глобального анализа чувствительности (требуется набор инструментов для статистического и машинного обучения) |
plot | График эмпирического CDF многопараметрического анализа глобальной чувствительности |
bar | Создание штрихового графика статистики многопараметрического анализа глобальной чувствительности |
histogram | Построить гистограмму результатов многопараметрического анализа глобальной чувствительности |
В этом примере используются:
Загрузить модель распределения лекарств, опосредованных мишенью (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 для поиска чувствительных параметров относительно транспортного заказа. Изменение значений параметров между предварительно определенными границами для создания 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]
Observables: {'TO'}
ParameterSamples: [10000x4 table]
SimulationInfo: [1x1 struct]
Постройте график квантилей отклика смоделированной модели.
plotData(mpgsaResults);

Постройте график эмпирических кумулятивных функций распределения (eCDF) принятых и отклоненных образцов. За исключением kmни один из параметров не показывает существенной разницы в eCDF для принятых и отклоненных образцов. km на графике показано большое расстояние Колмогорова - Смирнова (К-С) между eCDF принятых и отбракованных образцов. Расстояние K-S - это максимальное абсолютное расстояние между двумя кривыми eCDF.
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 (Статистика и инструментарий машинного обучения) для получения подробной информации. Если расстояние 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);
Многопараметрический анализ глобальной чувствительности позволяет изучить относительную важность параметров относительно классификатора, определяемого откликами модели. Классификатор - это выражение откликов модели, которое вычисляет логический вектор. sbiompgsa реализует метод MPSA, описанный Tiemann et. al. (см. текст вспомогательной информации S2) [1].
sbiompgsa выполняет следующие шаги.
Создайте N выборок параметров с помощью метода выборки. sbiompgsa сохраняет эти образцы в виде таблицы в свойстве, mpgsaResults.ParameterSamples, возвращенного объекта. Количество строк равно количеству выборок, а число столбцов равно количеству входных параметров.
Совет
Можно указать N и метод выборки с помощью 'NumberSamples' и 'SamplingMethod' аргументы пары имя-значение, соответственно, при вызове sbiompgsa.
Вычислите отклик модели путем моделирования модели для каждого набора параметров, который является единой реализацией значений параметров модели. В этом случае набор параметров равен строке в ParameterSamples таблица.
Оцените классификатор. Классификатор - это выражение, которое вычисляет логический вектор. Например, если вашей модельной реакцией является AUC концентрации лекарственного средства в плазме, вы можете определить классификатор с порогом токсичности 0,8, где AUC концентрации лекарственного средства выше этого порога считается токсичным.
Затем наборы параметров разделяются на две различные группы, такие как принятые (нетоксичные) и отклоненные (токсичные) группы.
Для каждого входного параметра вычислите эмпирические кумулятивные функции распределения (ecdf (Статистика и инструментарий машинного обучения)) принятых и отклоненных значений.
Сравните два eCDF принятых и отклоненных групп, используя Тест Колмогорова-Смирнова (Статистика и инструментарий машинного обучения) для вычисления расстояния Колмогорова-Смирнова. Уровень значимости по умолчанию теста Колмогорова-Смирнова - 0.05. Если два eCDF похожи, расстояние невелико, что означает, что отклик модели не чувствителен к входному параметру. Если два eCDF различны, расстояние велико, что означает, что реакция модели чувствительна к параметру.
Примечание
Тест Колмогорова-Смирнова предполагает, что образцы следуют непрерывному распределению. Убедитесь, что графики eCDF непрерывны по мере увеличения количества образцов. Если eCDF являются не непрерывными, а ступенчатыми в пределе бесконечных образцов, то результаты могут не отражать истинную чувствительность.
[1] Тиеманн, Кристиан А., Йоеп Ванлье, Маайке Х. Остервер, Альберт К. Гроен, Петер А. Дж. Хилберс и Натал А. В. ван Риль. «Анализ траектории параметров для определения эффектов лечения фармакологических вмешательств». Под редакцией Скотта Маркела. Вычислительная биология PLoS 9, № 8 (1 августа 2013 г.): e1003166. https://doi.org/10.1371/journal.pcbi.1003166.
Observable | sbiompgsa | sbiosobol | ecdf (инструментарий статистики и машинного обучения) | kstest2(Набор инструментов для статистики и машинного обучения)
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.