gpt4 book ai didi

python - Lassocv 的嵌套交叉验证

转载 作者:太空宇宙 更新时间:2023-11-03 19:43:18 25 4
gpt4 key购买 nike

我是 Python 新手,正在学习 ISLR 书。在其中我正在查看波士顿数据集并尝试不同的模型。其中之一是 sklearn 的 LassoCV。我在这里读到了嵌套循环的重要性,并从训练数据集中找到了最佳 lambda。 See here the link我试图了解如何使用这个特定的 lambda 来查看测试数据集的 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)

现在我有了正确的 lambda,如何将其合并到检查测试数据的 MSE 中?谢谢!

最佳答案

您可以使用 sklearn 中的指标。

MSE metric

您可以使用代码:

from sklearn.metrics import mean_squared_error
y_pred = lassocv.predict(y_test)
print('MSE', mean_squared_error(y_test, y_pred)

关于python - Lassocv 的嵌套交叉验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60304643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com