RegressionGP class

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

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

Описание

RegressionGP является Гауссовой моделью регрессии процесса (GPR). Можно обучить модель GPR, используя fitrgp. Используя обученную модель, вы можете

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

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

Конструкция

Создайте RegressionGP объект при помощи fitrgp.

Свойства

расширить все

Подбор кривой

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

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

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

Явный базисМатрица базиса
'none'Пустая матрица.
'constant'

H=1

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

'linear'

H=[1,X]

'pureQuadratic'

H=[1,X,X2],

где

X2=[x112x122x1d2x212x222x2d2xn12xn22xnd2].

Указатель на функцию

Указатель на функцию, hfcn, что fitrgp вызывает как:

H=hfcn(X),

где X является n -by- d матрицей предикторов и H является n -by- 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'Ядро Matern с параметром 3/2.
'matern52'Ядро Matern с параметром 5/2.
'ardsquaredexponential'Квадратное экспоненциальное ядро с отдельной шкалой длины на предиктор.
'ardmatern32'Ядро Матерна с параметром 3/2 и отдельной шкалой длины на предиктор.
'ardmatern52'Ядро Матерна с параметром 5/2 и отдельной шкалой длины на предиктор.
Указатель на функциюУказатель на функцию, который fitrgp может вызвать так:
Kmn = kfcn(Xm,Xn,theta)
где Xm является m -by- d матрицей, Xn является n -by d матрицей и Kmn является m -by - 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', хранится как структура, содержащая следующие поля.

Имя поляОписание
Gradientn вектор -by-1, содержащий градиент целевой функции BCD при сходимости.
ObjectiveСкаляр, содержащий целевую функцию BCD при сходимости.
SelectionCountsn -by-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 -by 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Значения Shapley

Подробнее о

расширить все

Совет

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

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

.
Введенный в R2015b