Я построил модель сплайна регрессии, и она предсказывает значения для моего фрейма данных соответствующим образом, но я не уверен, как найти правильное количество узлов и их значений, а также степень сплайна регрессии. Я использую patsy и dmatrix в Python.
transformed_x1 = dmatrix(
"bs(group_by_df.day, knots=(percentile_25,percentile_50,percentile_75), degree=20, include_intercept=False)",
{"group_by_df.day": group_by_df.day}, return_type='dataframe')
fit_spline = sm.GLM(group_by_df[sensor_name], transformed_x1).fit()
pred_spline = fit_spline.predict(transformed_x1)
. Я видел, что чем больше степень регрессии, тем меньше ошибок в прогнозе. Кроме того, значение r в квадрате становится ближе к 1, но как узнать оценку наилучшего соответствия без переоснащения модели?