У меня есть набор данных наблюдений за температурой с различных метеорологических станций в двухмерной области. Я пытаюсь выполнить анализ Кригинга для создания набора данных с сеткой.
Я смог сделать это с помощью анализа Барнса, но потом обнаружил, что Кригинг работает лучше. В частности, я использовал ответы из Python - Kriging (процесс Гаусса) в scikit_learn и получил результаты, которые я хотел.
Проблема теперь в том, что модуль GaussianProcess в этом ответе устарел, и теперь рекомендуется использовать GaussianProcessRegressor. Теперь я должен связываться с ядрами, альфа-версиями, перезапусками и другим жаргоном машинного обучения, о котором я понятия не имею. Я просто хочу просто использовать последнюю версию scikit-learn для обновления моего кода.
Вот так выглядит мой код:
from sklearn.gaussian_process import GaussianProcess
def kriging(lat_points, lon_points, values,
gridded_lats, gridded_lons):
points = zip(lon_points, lat_points)
gp = GaussianProcess(theta0=0.1, thetaL=.001,
thetaU=1., nugget=0.001)
gp.fit(points, values)
XY_pairs = np.column_stack([glons.flatten(), glats.flatten()])
return gp.predict(XY_pairs).reshape(glons.shape)
Теперь мне нужно использовать
from sklearn.gaussian_process import GaussianProcessRegressor
, в которой каждая найденная тема связана с очень запутанными подробностями о ядрах и перезапусках оптимизатора. Я думаю, что, возможно, опция alpha
может быть аналогична опции nugget
. Но как мне установить значения для theta0
, thetaL
и thetaU
в GaussianProcessRegressor
?
Нужно ли использовать kernel
или нет? alpha
действительно совпадает с nugget
?
Я просто ищу наиболее прямой путь обновления вышеуказанного кода, чтобы его можно было использовать в scikit-learn> 0.18.