Класс RegressionGP

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

Гауссов класс модели регрессии процесса

Описание

RegressionGP является моделью Gaussian process regression (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 вектор 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'Ядро Matern с параметром 3/2 и отдельная шкала расстояний на предиктор.
'ardmatern52'Ядро Matern с параметром 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,:).

Типы данных: логический

Данные тренировки

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

Типы данных: 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 пуст.

Типы данных: логический

Методы

компактныйСоздайте компактную Гауссову модель регрессии процесса
crossvalПерекрестный подтвердите Гауссову модель регрессии процесса
postFitStatisticsВычислите постподходящую статистику для точной Гауссовой модели регрессии процесса
resubLossПотеря перезамены для обученной Гауссовой модели регрессии процесса
resubPredictПрогноз перезамены из обученной Гауссовой модели регрессии процесса

Унаследованные методы

потеряОшибка регрессии для Гауссовой модели регрессии процесса
предсказатьПредскажите ответ Гауссовой модели регрессии процесса

Больше о

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

Советы

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

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

Введенный в R2015b