GridSearchCV для линейной регрессии

#python

Вопрос:

Мне трудно использовать код gridCVsearch для различных линейных моделей.

Я получаю ошибки на одном и том же этапе для каждой модели. Например, мои коды для линейной регрессии, как показано ниже:

 from sklearn.model_selection import GridSearchCV
from sklearn.linear_model import LinearRegression
from sklearn.pipeline import make_pipeline
lr_pipe = make_pipeline(StandardScaler(), LinearRegression())
lr_pipe.fit(X_train, y_train)
lr_pipe.score(X_test, y_test)
param_grid = {'n_neighbors': range(1, 10)}
grid = GridSearchCV(lr_pipe, param_grid, cv=10)
grid.fit(X_train, y_train)
print(grid.best_params_)
print(grid.score(X_test, y_test))
 

Я получаю ошибку на шаге «grid.fit(X_train, y_train)» с сообщением:

 ValueError: Invalid parameter n_neighbors for estimator Pipeline(memory=None,
     steps=[('standardscaler',
             StandardScaler(copy=True, with_mean=True, with_std=True)),
            ('linearregression',
             LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,
                              normalize=False))],
     verbose=False). Check the list of available parameters with `estimator.get_params().keys()`.
 

Что я сделал не так в своем кодировании? я в точности следовал общим кодировкам для GridSearchCV.

Комментарии:

1. Как указано в ошибке, LinearRegression в sklearn не имеет параметра n_neighbors . Посмотрите в документах , какие параметры он принимает. (StandardScaler также не принимает этот параметр)

2. Как вы импортируете n_neighbors? приведенный ниже код, похоже, не работает: от sklearn.neighbors. KNeighborsРегрессор импорт n_neighbors

3. Боюсь, я не понимаю вопроса. Это все равно что спрашивать, как использовать рулевое колесо автомобиля, чтобы приготовить пирог с мясом. Ты просто…не делай этого. Если вы хотите использовать модель, основанную на соседстве, вам необходимо выбрать один из доступных алгоритмов соседей . Если вы хотите использовать линейную регрессию, то вам следует использовать параметры для линейной регрессии, которая не имеет встроенной функциональности для окрестностей.