Я думаю, что знаю, к чему спикер. Лично я не полностью согласен с ней / ним, и есть много людей, которые этого не делают. Но, честно говоря, есть и многие, кто это делает :) Прежде всего, обратите внимание, что указание ковариационной функции (ядра) подразумевает указание предварительного распределения по функциям. Просто изменяя ядро, реализации гауссовского процесса радикально изменяются от очень гладких, бесконечно дифференцируемых функций, порожденных квадратом экспоненциального ядра.
«остроконечным», недифференцируемым функциям, соответствующим экспоненциальному ядру (или ядру Matern с )ν=1/2
Другой способ увидеть это состоит в том, чтобы записать прогнозирующее среднее (среднее из предсказаний гауссовского процесса, полученное путем кондиционирования ВО на тренировочных точках) в контрольной точке , в простейшем случае функции с нулевым средним:x∗
y∗=k∗T(K+σ2I)−1y
где - вектор ковариаций между контрольной точкой и тренировочными точками , - ковариационная матрица обучающих точек, - шумовой термин (просто установите если ваша лекция касалась предсказаний без шума, т. е. интерполяции гауссовского процесса), а - вектор наблюдений в обучающем наборе. Как вы можете видеть, даже если среднее значение предшествующего уровня GP равняется нулю, среднее прогнозирующее значение совсем не равно нулю, и, в зависимости от ядра и количества тренировочных точек, это может быть очень гибкая модель, способная к чрезвычайно усвоенному обучению. сложные модели.x ∗ x 1 ,…, x n Kσσ=0 y =( y 1 ,…, y n )k∗x∗x1,…,xnKσσ=0y=(y1,…,yn)
В более общем смысле это ядро, которое определяет обобщающие свойства GP. Некоторые ядра обладают свойством универсальной аппроксимации , т. Е. Они в принципе способны аппроксимировать любую непрерывную функцию на компактном подмножестве к любой заданной максимальной толерантности при наличии достаточного количества тренировочных точек.
Тогда зачем вам вообще заботиться о средней функции? Во-первых, простая средняя функция (линейная или ортогональная полиномиальная) делает модель намного более интерпретируемой, и это преимущество не следует недооценивать для такой гибкой (а значит, сложной) модели, как ГП. Во-вторых, каким-то образом нулевое среднее (или, что важно, также и постоянное среднее) ГП отстой при прогнозировании вдали от обучающих данных. Многие стационарные ядра (кроме периодических ядер) таковы, что дляk(xi−x∗)→0dist(xi,x∗)→∞, Эта сходимость к 0 может произойти на удивление быстро, особенно с квадратным экспоненциальным ядром, и особенно, когда короткая длина корреляции необходима, чтобы хорошо соответствовать обучающему набору. Таким образом, терапевт с функцией нулевого среднего всегда будет предсказывать как только вы отойдете от тренировочного набора.y∗≈0
Теперь это может иметь смысл в вашем приложении: в конце концов, часто плохая идея использовать управляемую данными модель для выполнения прогнозов вдали от набора точек данных, используемых для обучения модели. Смотрите здесь много интересных и забавных примеров того, почему это может быть плохой идеей. В этом отношении нулевое среднее значение GP, которое всегда сходится к 0 от обучающего набора, является более безопасным, чем модель (такая как, например, многомерная ортогональная полиномиальная модель высокой степени), которая с радостью выбрасывает безумно большие прогнозы, как только вы уходите от данных обучения.
В других случаях, однако, вы можете захотеть, чтобы ваша модель имела определенное асимптотическое поведение, которое не должно сходиться к константе. Возможно, физические соображения скажут вам, что для достаточно большого ваша модель должна стать линейной. В этом случае вы хотите линейную функцию среднего. В общем, когда глобальные свойства модели представляют интерес для вашего приложения, вам следует обратить внимание на выбор средней функции. Когда вас интересует только локальное (близкое к тренировочным точкам) поведение вашей модели, тогда нулевого или постоянного среднего GP может быть более чем достаточно.x∗