Я новичок в Python и изучаю книгу ISLR. в нем я смотрю на набор данных Бостона и пробую разные модели. Одним из них является LassoCV от sklearn. Я прочитал здесь важность вложенности l oop и нашел оптимальную лямбду из набора обучающих данных. См. Здесь ссылку Я пытаюсь понять, как я могу использовать эту спецификацию c лямбда, чтобы увидеть MSE для набора тестовых данных. Пожалуйста помоги! Вот мой код:
##importing packages
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression, LassoCV, RidgeCV
import statsmodels.api as sm
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import cross_val_score, train_test_split
from sklearn.datasets import load_boston
bos = load_boston()
##creating the dataset
boston = pd.DataFrame(bos.data)
boston.columns = bos.feature_names
##defining X,y and spliting to train and test data
y = boston['CRIM']
X = boston.drop('CRIM',axis=1)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
##Lassocv first loop function
lassocv =LassoCV(alphas=np.logspace(-5,-2.5,300),cv=5,normalize=True,max_iter=10000) #normalize functions as scale
scaler = StandardScaler()
lassocv.fit(X_train,y_train)
mses = np.mean(lassocv.mse_path_,axis=1)
alphas = lassocv.alphas_
min_alpha = lassocv.alpha_
min_mse = np.min(mses)
Теперь, когда у меня есть правильная лямбда, как мне включить ее, чтобы проверить MSE для тестовых данных? Спасибо!