exponenta event banner

Класс RegingGP

Суперклассы: CompactRegressionGP

Класс регрессионной модели гауссова процесса

Описание

RegressionGP - модель регрессии гауссова процесса (GPR). Модель GPR можно обучить с помощью fitrgp. С помощью обучаемой модели можно

  • Прогнозирование ответов на обучающие данные с использованием resubPredict или новые данные предиктора с использованием predict. Можно также вычислить интервалы прогнозирования.

  • Вычислить потери регрессии для обучающих данных с помощью resubLoss или новые данные с использованием loss.

Строительство

Создать RegressionGP объект с помощью fitrgp.

Свойства

развернуть все

Установка

Метод, используемый для оценки коэффициентов базисной функции, β; среднеквадратичное отклонение шума, λ; и параметры ядра в модели GPR, хранящиеся в виде символьного вектора. Это может быть одно из следующих.

Метод подгонкиОписание
'none'Оценки нет. fitrgp использует начальные значения параметров в качестве значений параметров.
'exact'Точная гауссова регрессия процесса.
'sd'Подмножество аппроксимации точек данных.
'sr'Подмножество аппроксимации регрессоров.
'fic'Полностью независимое условное приближение.

Явная базисная функция, используемая в модели GPR, сохраненная как символьный вектор или дескриптор функции. Это может быть одно из следующих. Если n - число наблюдений, базисная функция добавляет в модель член H * β, где H - базисная матрица, а β - вектор p-by-1 базисных коэффициентов.

Явная основаБазисная матрица
'none'Пустая матрица.
'constant'

H = 1

(вектор n-by-1 из 1s, где n - число наблюдений)

'linear'

H = [1, X]

'pureQuadratic'

H = [1, X, X2],

где

X2 = [x112x122x1d2x212x222x2d2  xn12xn22xnd2].

Дескриптор функции

Дескриптор функции, hfcn, что fitrgp вызовы в виде:

H = hfcn (X),

где X - матрица n-за-d предикторов, а H - матрица n-за-p базисных функций.

Типы данных: char | function_handle

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

Типы данных: double

Оцененное стандартное отклонение шума модели GPR, хранящееся в виде скалярного значения.

Типы данных: double

Индексы категориального предиктора, указанные как вектор положительных целых чисел. CategoricalPredictors содержит значения индекса, соответствующие столбцам данных предиктора, которые содержат категориальные предикторы. Если ни один из предикторов не категоричен, то это свойство пустое ([]).

Типы данных: single | double

Это свойство доступно только для чтения.

Оптимизация гиперпараметров с перекрестной проверкой, указанная как BayesianOptimization объект или таблица гиперпараметров и связанных значений. Это свойство не является пустым, если 'OptimizeHyperparameters' аргумент пары «имя-значение» не является пустым при создании модели. Значение HyperparameterOptimizationResults зависит от настройки Optimizer в поле HyperparameterOptimizationOptions структура при создании модели.

Значение Optimizer ОбластьЗначение HyperparameterOptimizationResults
'bayesopt' (по умолчанию)Объект класса BayesianOptimization
'gridsearch' или 'randomsearch'Таблица используемых гиперпараметров, наблюдаемые значения целевой функции (потеря перекрестной проверки) и ранг наблюдений от самого низкого (лучший) до самого высокого (худший)

Максимизированная предельная логарифмическая вероятность модели GPR, сохраненная как скалярное значение, если FitMethod отличается от 'none'. Если FitMethod является 'none', то LogLikelihood пуст.

Если FitMethod является 'sd', 'sr', или 'fic', то LogLikelihood является максимизированным приближением предельной логарифмической вероятности модели GPR.

Типы данных: double

Параметры, используемые для обучения модели GPR, хранящиеся в виде GPParams объект.

Функция ядра

Форма ковариационной функции, используемой в модели GPR, хранящейся как символьный вектор, содержащий имя встроенной ковариационной функции или дескриптор функции. Это может быть одно из следующих.

ФункцияОписание
'squaredexponential'Квадратное экспоненциальное ядро.
'matern32'Ядро матрицы с параметром 3/2.
'matern52'Ядро матрицы с параметром 5/2.
'ardsquaredexponential'Квадратное экспоненциальное ядро с отдельной шкалой длины на предсказатель.
'ardmatern32'Материновое ядро с параметром 3/2 и отдельной шкалой длины на предиктор.
'ardmatern52'Материновое ядро с параметром 5/2 и отдельной шкалой длины на предиктор.
Дескриптор функцииДескриптор функции, fitrgp может называть так:
Kmn = kfcn(Xm,Xn,theta)
где Xm - матрица m-на-d, Xn является матрицей n-за-d и Kmn - матрица m-на-n продуктов ядра, такая, что Kmn(i, j) является продуктом ядра междуXm(i,:) и Xn(j,:).
theta является вектором неограниченного параметра r-by-1 для kfcn.

Типы данных: char | function_handle

Информация о параметрах функции ядра, используемой в модели GPR, хранящаяся в виде структуры со следующими полями.

Имя поляОписание
NameИмя функции ядра
KernelParametersВектор оцененных параметров ядра
KernelParameterNamesИмена, связанные с элементами KernelParameters.

Типы данных: struct

Прогноз

Метод, который predict используется для составления прогнозов из модели GPR, хранящейся в виде символьного вектора. Это может быть одно из следующих.

PredictMethodОписание
'exact'Точная регрессия гауссова процесса
'bcd'Снижение координат блока
'sd'Подмножество аппроксимации точек данных
'sr'Поднабор аппроксимации регрессоров
'fic'Полностью независимое условное приближение

Веса, используемые для прогнозирования из обученной модели GPR, хранящейся в виде числового вектора. predict вычисляет прогнозы для новой матрицы предиктора Xnew с помощью продукта

K (Xnew, A) * α.

K (Xnew, A) - матрица продуктов ядра между Xnew и вектором активного множества A и α - вектор весов.

Типы данных: double

Информация по вычислению на основе блочного координатного спуска (BCD) Alpha когда PredictMethod является 'bcd', хранится как структура, содержащая следующие поля.

Имя поляОписание
Gradientвектор n-на-1, содержащий градиент целевой функции BCD при сходимости.
ObjectiveСкаляр, содержащий целевую функцию BCD при сходимости.
SelectionCountsn-на-1 целочисленный вектор, указывающий количество раз, когда каждая точка была выбрана в блок во время BCD.

Alpha содержит свойство Alpha вектор, вычисленный из BCD.

Если PredictMethod не является 'bcd', то BCDInformation пуст.

Типы данных: struct

Преобразование, применяемое к прогнозируемому отклику, хранящемуся в виде символьного вектора, описывающего, как преобразуются значения откликов, прогнозируемые моделью. В RegressionGP, ResponseTransform является 'none' по умолчанию, и RegressionGP не использует ResponseTransform при составлении прогнозов.

Выбор активного набора

Подмножество обучающих данных, используемых для прогнозирования из модели GPR, хранящееся в виде матрицы.

predict вычисляет прогнозы для новой матрицы предиктора Xnew с помощью продукта

K (Xnew, A) * α.

K (Xnew, A) - матрица продуктов ядра между Xnew и вектором активного множества A и α - вектор весов.

ActiveSetVectors равно данным обучения X для точной установки GPR и подмножества данных обучения X для разреженных методов GPR. Когда в модели есть категориальные предикторы, ActiveSetVectors содержит фиктивные переменные для соответствующих предикторов.

Типы данных: double

История выбора перемежающегося активного набора и оценка параметров для FitMethod равно 'sd', 'sr', или 'fic', хранится как структура со следующими полями.

Имя поляОписание
ParameterVectorМассив ячеек, содержащий векторы параметров: коэффициенты базисной функции, β, параметры функции ядра, и среднеквадратичное отклонение шума
ActiveSetIndicesМассив ячеек, содержащий индексы активного набора.
LoglikelihoodВектор, содержащий максимальные вероятности журнала.
CriterionProfileМассив ячеек, содержащий значения критериев выбора активного набора при увеличении размера активного набора от 0 до его конечного размера.

Типы данных: struct

Метод, используемый для выбора активного набора для разреженных методов ('sd','sr', или 'fic'), хранится в виде символьного вектора. Это может быть одно из следующих.

ActiveSetMethodОписание
'sgma'Разреженная жадная матричная аппроксимация
'entropy'Выбор на основе дифференциальной энтропии
'likelihood'Подмножество регрессоров логарифмического выбора на основе правдоподобия
'random'Случайный выбор

Выбранный активный набор используется при оценке или прогнозировании параметров в зависимости от выбора FitMethod и PredictMethod в fitrgp.

Размер активного набора для разреженных методов ('sd','sr', или 'fic'), хранится в виде целого числа.

Типы данных: double

Индикаторы для выбранного активного набора для выполнения прогнозов из обученной модели GPR, хранящиеся в виде логического вектора. Эти показатели обозначают подмножество данных обучения, которое fitrgp выбирает в качестве активного набора. Например, если X является исходными данными обучения, то ActiveSetVectors = X(IsActiveSetVector,:).

Типы данных: logical

Данные обучения

Количество наблюдений в обучающих данных, хранящихся в виде скалярного значения.

Типы данных: double

Обучающие данные, хранящиеся в виде таблицы или матрицы n-за-d, где n - количество наблюдений, а d - количество предикторных переменных (столбцов) в обучающих данных. Если модель GPR обучается на столе, то X является таблицей. В противном случае X является матрицей.

Типы данных: double | table

Наблюдаемые значения отклика, используемые для обучения модели GPR, хранятся в виде вектора n-by-1, где n - количество наблюдений.

Типы данных: double

Имена предикторов, используемых в модели GPR, хранящихся в виде клеточного массива символьных векторов. Каждое имя (ячейка) соответствует столбцу в X.

Типы данных: cell

Имена расширенных предикторов для модели GPR, хранящиеся в виде клеточного массива векторов символов. Каждое имя (ячейка) соответствует столбцу в ActiveSetVectors.

Если модель использует фиктивные переменные для категориальных переменных, то ExpandedPredictorNames содержит имена, описывающие развернутые переменные. В противном случае ExpandedPredictorNames является таким же, как PredictorNames.

Типы данных: cell

Имя переменной ответа в модели GPR, хранящейся в виде символьного вектора.

Типы данных: char

Средства предикторов, используемые для обучения модели GPR, если данные обучения стандартизированы, хранятся в виде вектора 1 к d. Если данные обучения не стандартизированы, PredictorLocation пуст.

Если PredictorLocation не пуст, то predict метод центрирует предикторные значения путем вычитания соответствующего элемента PredictorLocation из каждого столбца X.

Если есть категориальные предикторы, то PredictorLocation включает в себя 0 для каждой фиктивной переменной, соответствующей этим предикторам. Фиктивные переменные не центрированы и не масштабированы.

Типы данных: double

Стандартные отклонения предикторов, используемых для обучения модели GPR, если данные обучения стандартизированы, хранятся в виде вектора 1 к d. Если данные обучения не стандартизированы, PredictorScale пуст.

Если PredictorScale не пуст, predict метод масштабирует предикторы путем деления каждого столбца X соответствующим элементом PredictorScale (после центрирования с использованием PredictorLocation).

Если есть категориальные предикторы, то PredictorLocation включает в себя 1 для каждой фиктивной переменной, соответствующей этим предикторам. Фиктивные переменные не центрированы и не масштабированы.

Типы данных: double

Индикаторы для строк, используемых при обучении модели GPR, хранящиеся как логический вектор. Если все строки используются при обучении модели, то RowsUsed пуст.

Типы данных: logical

Функции объекта

compactСоздание компактной модели регрессии гауссова процесса
crossvalМодель регрессии гауссова процесса с перекрестной проверкой
limeЛокальные интерпретируемые модели-агностические объяснения (LIME)
lossРегрессионная ошибка для модели регрессии гауссова процесса
partialDependenceВычислить частичную зависимость
plotPartialDependenceСоздание графиков частичной зависимости (PDP) и индивидуального условного ожидания (ICE)
postFitStatisticsВычисление статистики после подгонки для точной модели регрессии гауссова процесса
predictПрогнозировать отклик модели регрессии гауссова процесса
resubLossПотеря резации для обученной модели регрессии гауссова процесса
resubPredictПрогноз повторного замещения из обученной модели регрессии гауссова процесса
shapleyЗначения Шапли

Подробнее

развернуть все

Совет

  • Доступ к свойствам этого класса можно получить с помощью точечной нотации. Например, KernelInformation - структура, содержащая параметры ядра и их имена. Следовательно, для доступа к параметрам функции ядра обучаемой модели gprMdl, использовать gprMdl.KernelInformation.KernelParameters.

Расширенные возможности

.
Представлен в R2015b