В управляемом обучении ожидается, что точки с аналогичными значениями предиктора , естественно, имеют значения близкого отклика (целевой) . В Гауссовских процессах ковариационная функция выражает это сходство [1]. Он задает ковариацию между двумя скрытыми переменными и , где и то и другое и d векторы -by-1. Другими словами, это определяет, как ответ в одной точке затронуто откликами в других точках , <reservedrangesplaceholder3> ≠ <reservedrangesplaceholder2> , i = 1, 2..., n. Ковариационная функция может быть задано различными функциями ядра. Его можно параметризовать в терминах параметров ядра в векторе . Следовательно, можно выразить ковариационную функцию как .
Для многих стандартных функций ядра параметры ядра основаны на стандартном отклонении сигнала и характеристическая шкала длины . Шкалы длины характеристики кратко определяют, насколько далеко вход значения может быть, чтобы значения отклика стали некоррелированными. Оба и должно быть больше 0, и это может быть реализовано вектором параметризации без ограничений , таким что
Встроенные ядерные (ковариационные) функции с той же шкалой длины для каждого предиктора:
Квадратное экспоненциальное ядро
Это одна из наиболее часто используемых ковариационных функций и опция по умолчанию для fitrgp. Квадратная экспоненциальная функция ядра определяется как
где является характеристической шкалой длины, и - стандартное отклонение сигнала.
Экспоненциальное ядро
Можно задать экспоненциальную функцию ядра с помощью 'KernelFunction','exponential' аргумент пары "имя-значение". Эта ковариационная функция определяется
где является характеристической шкалой длины и
- евклидово расстояние между и .
Матерн 3/2
Вы можете задать функцию ядра Matern 3/2 с помощью 'KernelFunction','matern32' аргумент пары "имя-значение". Эта ковариационная функция определяется
где
- евклидово расстояние между и .
Матерн 5/2
Вы можете задать функцию ядра Matern 5/2 с помощью 'KernelFunction','matern52' аргумент пары "имя-значение". Функция ковариации Matern 5/2 задана как
где
- евклидово расстояние между и .
Рациональное квадратичное ядро
Вы можете задать рациональную квадратичную функцию ядра, используя 'KernelFunction','rationalquadratic' аргумент пары "имя-значение". Эта ковариационная функция определяется
где - характеристическая шкала длины, является положительным параметром смеси шкалы, и
- евклидово расстояние между и .
Возможно использование отдельной шкалы длины для каждого m предиктора m = 1, 2,..., d. Встроенные функции ядра (ковариации) с отдельной шкалой длины для каждого предиктора реализуют автоматическое определение релевантности (ARD) [2]. Параметризация без ограничений в этом случае
Встроенные ядерные (ковариационные) функции с отдельной шкалой длины для каждого предиктора:
Квадратное экспоненциальное ядро ARD
Вы можете задать эту функцию ядра, используя 'KernelFunction','ardsquaredexponential' аргумент пары "имя-значение". Эта ковариационная функция является квадратной экспоненциальной функцией ядра с отдельной шкалой длины для каждого предиктора. Он определяется как
Экспоненциальное ядро ARD
Вы можете задать эту функцию ядра, используя 'KernelFunction','ardexponential' аргумент пары "имя-значение". Эта ковариационная функция является экспоненциальной функцией ядра с отдельной шкалой длины для каждого предиктора. Он определяется как
где
ARD Matern 3/2
Вы можете задать эту функцию ядра, используя 'KernelFunction','ardmatern32' аргумент пары "имя-значение". Эта ковариационная функция является функцией ядра Matern 3/2 с разной шкалой длины для каждого предиктора. Он определяется как
где
ARD Matern 5/2
Вы можете задать эту функцию ядра, используя 'KernelFunction','ardmatern52' аргумент пары "имя-значение". Эта ковариационная функция является функцией ядра Matern 5/2 с разной шкалой длины для каждого предиктора. Он определяется как
где
Рациональное квадратичное ядро ARD
Вы можете задать эту функцию ядра, используя 'KernelFunction','ardrationalquadratic' аргумент пары "имя-значение". Эта ковариационная функция является рациональной квадратичной функцией ядра с отдельной шкалой длины для каждого предиктора. Он определяется как
Вы можете задать функцию ядра, используя KernelFunction аргумент пары "имя-значение" в вызове fitrgp. Можно либо задать одну из встроенных опций параметра ядра, либо задать пользовательскую функцию. При предоставлении начальных значений параметров ядра для встроенной функции ядра вводите начальные значения для стандартного отклонения сигнала и шкал (шкал ) длины характеристики в качестве числового вектора. При предоставлении начальных значений параметров ядра для пользовательской функции ядра вводите начальные значения в вектор параметризации без ограничений . fitrgp использует аналитические производные для оценки параметров при использовании встроенной функции ядра, тогда как при использовании пользовательской функции ядра использует числовые производные.
[1] Расмуссен, К. Э. и К. К. И. Уильямс. Гауссовы процессы для машинного обучения. MIT Press. Кембридж, Массачусетс, 2006.
[2] Нил, Р. М. Байесиан Обучение для нейронных сетей. Спрингер, Нью-Йорк. Лекции по статистике, 118, 1996 год.