当前位置: 首页 > news >正文

益阳网站建设公司电话线上赚钱正规平台

益阳网站建设公司电话,线上赚钱正规平台,深圳企业名录大全,想学python从哪里入手一、实验概述本实验旨在利用机器学习技术#xff0c;基于加州房价数据集#xff08;California Housing Dataset#xff09;构建一个房价预测模型。实验涵盖了从数据加载、探索性数据分析#xff08;EDA#xff09;、数据预处理到模型构建与评估的完整流程。核心任务是利用…一、实验概述        本实验旨在利用机器学习技术基于加州房价数据集California Housing Dataset构建一个房价预测模型。实验涵盖了从数据加载、探索性数据分析EDA、数据预处理到模型构建与评估的完整流程。核心任务是利用房屋的各项特征如收入中位数、房龄、平均房间数等来预测房价中位数MEDV。二、数据来源        数据集为机器学习经典数据集加州房价预测可以从 sklearn.datasets 直接使用 fetch_california_housing 函数加载。三、实验过程1.相关库与初始数据加载 import numpy as np import pandas as pd from scipy import stats import matplotlib.pyplot as plt import seaborn as sns from sklearn.datasets import fetch_california_housing from sklearn.preprocessing import StandardScaler from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression from sklearn.metrics import mean_squared_error from sklearn.linear_model import Lasso from sklearn.metrics import mean_squared_error, r2_score from sklearn.linear_model import Ridge from sklearn.linear_model import ElasticNet from sklearn.model_selection import GridSearchCV# 加载数据集 california fetch_california_housing() data pd.DataFrame(california.data, columnscalifornia.feature_names) data[MEDV] california.target # X data.drop(MEDV, axis1) y data[MEDV] 2.数据探索 (EDA)        本实验通过简单的统计和可视化对数据进行了初步探索绘制了特征 (data) 和目标变量 (target) 的分布直方图与特征之间的相关性热力图并对缺失值进行检测。 #2数据探索 #数据缺失值检测 df_X pd.DataFrame(X, columnsfeature_names) df_y pd.DataFrame(y, columns[Target]) print(df_X.isnull().sum()) print(df_y.isnull().sum())#数据异常值检测 for col in df_X.columns:plt.figure(figsize(6, 4))sns.boxplot(xdf_X[col])plt.title(fBoxplot of {col})plt.show() #特征的基本统计信息 #print(cleaned_df_X.describe()) cleaned_df_X pd.DataFrame(cleaned_df_X, columnsfeature_names) # 将 ndarray 转换为 DataFrame cleaned_df_y pd.DataFrame(cleaned_df_y, columns[Target]) cleaned_data pd.concat([cleaned_df_X, cleaned_df_y], axis1)# 合并特征和目标变量 corr_matrix cleaned_data.corr()# 计算相关性矩阵 plt.figure(figsize(10, 8)) sns.heatmap(corr_matrix,annotTrue, # 显示数值 ) plt.title(特征与目标变量的相关性热力图) plt.show()输出结果如下        可以看出原始数据无缺失值部分变量异常值样本数量较多后续需要进行基于Z-score方法的异常值处理。由热力图可知部分变量的相关性十分明显如变量 Latitude 与变量 Longitude 具有强负相关性变量AvgRooms 与变量 Medlnc 具有强正相关性。故拟合模型应采用具有正则化的模型进行。3. 数据预处理        主要进行异常值处理、标准化数据、测试训练集的划分的任务。 #(3)数据清洗 z_scores_X stats.zscore(df_X) z_scores_y stats.zscore(df_y) abs_z_scores_X np.abs(z_scores_X) abs_z_scores_y np.abs(z_scores_y) #处理异常值 def remove_outliers_iqr(df, factor1.5):df_cleaned df.copy()for col in df.columns:Q1 df[col].quantile(0.25)Q3 df[col].quantile(0.75)IQR Q3 - Q1lower_bound Q1 - factor * IQRupper_bound Q3 factor * IQRdf_cleaned df_cleaned[(df_cleaned[col] lower_bound) (df_cleaned[col] upper_bound)]return df_cleanedcleaned_df_X remove_outliers_iqr(df_X) cleaned_df_y y[cleaned_df_X.index] print(原始样本数量:, len(df_X)) print(清洗后样本数量:, len(cleaned_df_X))# 标准化 X scaler StandardScaler() X_scaled scaler.fit_transform(cleaned_df_X) y_scaled cleaned_df_y# 按照 80% 训练集20% 测试集划分 X_train, X_test, y_train, y_test train_test_split(X_scaled, y_scaled, test_size0.2, random_state7)print(训练集特征维度:, X_train.shape) print(测试集特征维度:, X_test.shape) print(训练集目标维度:, y_train.shape) print(测试集目标维度:, y_test.shape)输出结果如下        可以看出进行基于Z-score方法的异常值处理之后样本数量由20940下降至16842为后续模型构建的准确性打下基础。4. 模型构建        本实验采用线性回归、LASSO回归、岭回归、弹性网回归4类方法进行模型的构建并以均方误差 (Mean Squared Error, MSE)与决定系数 (R² Score)作为模型的评估指标最终选取效果最优的模型作为最终应用模型。 #5线性回归 from sklearn.linear_model import LinearRegression from sklearn.metrics import mean_squared_error,r2_score LR LinearRegression() LR.fit(X_train,y_train) # 预测 y_pred_linear LR.predict(X_test)#评价 # 模型评估 print(Linear Regression:) print(MSE:, mean_squared_error(y_test, y_pred_linear)) print(R^2 Score:, r2_score(y_test,y_pred_linear))#(6) LASSO 回归带 L1 正则化 from sklearn.linear_model import Lassolasso Lasso(alpha0.3, max_iter10000) lasso.fit(X_train, y_train)# 预测 y_pred_lasso lasso.predict(X_test)# 模型评估 print(LASSO Regression:) print(MSE:, mean_squared_error(y_test, y_pred_lasso)) print(R^2 Score:, r2_score(y_test, y_pred_lasso)) print(Coefficients:, lasso.coef_)#(7) 岭回归带 L2 正则化 from sklearn.linear_model import Ridge ridge Ridge(alpha1.0, max_iter10000) ridge.fit(X_train, y_train)# 预测 y_pred_ridge ridge.predict(X_test)# 模型评估 print(Ridge Regression:) print(MSE:, mean_squared_error(y_test, y_pred_ridge)) print(R^2 Score:, r2_score(y_test, y_pred_ridge)) print(Coefficients:, ridge.coef_)#(8) 弹性网回归L1 L2 正则化 from sklearn.linear_model import ElasticNetelastic_net ElasticNet(alpha1.0, l1_ratio0.2, max_iter10000) elastic_net.fit(X_train, y_train) # 预测 y_pred_elastic elastic_net.predict(X_test)# 模型评估 print(Elastic Net Regression:) print(MSE:, mean_squared_error(y_test, y_pred_elastic)) print(R^2 Score:, r2_score(y_test, y_pred_elastic)) print(Coefficients:, elastic_net.coef_) 输出结果如下        可以看出在初始为调参的情况下线性回归模型与岭回归模型在测试集上取得了最佳的预测性能最低的 RMSE 和最高的 R² Score这表明集成学习方法能够有效学习加州房价数据中的复杂模式和特征交互。5.模型参数调优可视化对比由于线性回归模型与岭回归参数较少初始模型已是最优模型故对LASSO回归模型与弹性网模型进行参数调优。 #9lasso、弹性网模型参数调优 # 1、LASSO 模型 from sklearn.model_selection import GridSearchCVparam_grid_lasso {alpha: [0.001, 0.01, 0.1, 1.0, 10.0]}# LASSO 回归参数范围 lasso Lasso(max_iter10000)# 网格搜索 grid_lasso GridSearchCV(lasso, param_grid_lasso, scoringneg_mean_squared_error, cv5) grid_lasso.fit(X_train, y_train)# 最佳参数和最佳模型 best_lasso grid_lasso.best_estimator_ y_pred_lasso_best best_lasso.predict(X_test)print(LASSO - Best params:, grid_lasso.best_params_) print(MSE after tuning:, mean_squared_error(y_test, y_pred_lasso_best)) print(R^2 Score after tuning:, r2_score(y_test, y_pred_lasso_best))# 2、ElasticNet 模型 param_grid_elastic {alpha: [0.001, 0.01, 0.1, 1.0, 10.0],l1_ratio: [0.1, 0.3, 0.5, 0.7, 0.9] }#ElasticNet 参数范围elastic_net ElasticNet(max_iter10000)# 网格搜索 grid_elastic GridSearchCV(elastic_net, param_grid_elastic, scoringneg_mean_squared_error, cv5) grid_elastic.fit(X_train, y_train)# 最佳模型 best_elastic grid_elastic.best_estimator_ y_pred_elastic_best best_elastic.predict(X_test)print(ElasticNet - Best params:, grid_elastic.best_params_) print(MSE after tuning:, mean_squared_error(y_test, y_pred_elastic_best)) print(R^2 Score after tuning:, r2_score(y_test, y_pred_elastic_best))plt.figure(figsize(10, 10))# 调参前 LASSO plt.subplot(2, 2, 1) plt.scatter(y_test, y_pred_lasso, alpha0.6) plt.plot([min(y_test), max(y_test)], [min(y_test), max(y_test)], colorred, linestyle--) plt.title(LASSO (Before Tuning)) plt.xlabel(True Values) plt.ylabel(Predictions)# 调参后 LASSO plt.subplot(2, 2, 2) plt.scatter(y_test, y_pred_lasso_best, alpha0.6) plt.plot([min(y_test), max(y_test)], [min(y_test), max(y_test)], colorred, linestyle--) plt.title(LASSO (After Tuning)) plt.xlabel(True Values) plt.ylabel(Predictions)# 调参前 ElasticNet plt.subplot(2, 2, 3) plt.scatter(y_test, y_pred_elastic, alpha0.6) plt.plot([min(y_test), max(y_test)], [min(y_test), max(y_test)], colorred, linestyle--) plt.title(ElasticNet (Before Tuning)) plt.xlabel(True Values) plt.ylabel(Predictions)# 调参后 ElasticNet plt.subplot(2, 2, 4) plt.scatter(y_test, y_pred_elastic_best, alpha0.6) plt.plot([min(y_test), max(y_test)], [min(y_test), max(y_test)], colorred, linestyle--) plt.title(ElasticNet (After Tuning)) plt.xlabel(True Values) plt.ylabel(Predictions)plt.tight_layout() plt.show()输出结果如下        可以看出相对初始模型参数调优后的LASSO模型与弹性网模型在测试集的评价大幅上升效果与线性回归和岭回归相差无几。四、 结论        本实验成功完成了加州房价预测的任务。通过数据加载、清洗、探索性分析和特征工程为模型训练准备了高质量的数据。通过尝试不同的回归模型发现选择的4类模型在该数据集上表现相差无几都可以相对准确地预测房价中位数。改进方向:进一步的特征工程: 可以尝试创建特征之间的交互项或多项式特征或许能进一步提升模型性能。尝试其他模型: 可以尝试使用梯度提升树如 XGBoost, LightGBM等更强大的集成模型。深入分析误差: 分析预测误差较大的样本点找出这些样本的共同特征有助于理解模型的局限性并指导下一步的优化。
http://www.zqtcl.cn/news/669853/

相关文章:

  • 图书馆网站信息化建设中国seo第一人
  • 域名网站负责人的责任一键制作单页网站
  • 南宁建设局网站建设有限公司
  • 湛江建设工程交易中心网站企业营销网站建设步骤
  • 网站所有者查询罗湖做网站的公司
  • 网站推广的目标是什么如何提高网站在百度的排名
  • 建设网站基础wordpress 网络图片
  • 深圳网站搜索优化工具义乌公司网站
  • 百度搜索网站带图片sem是什么品牌
  • 百度网盘app下载辽宁seo
  • 一般做网站用什么软件企业管理咨询服务机构
  • 达内培训网站开发金融公司网站 html
  • 珠海网站制作推荐微信营销和微博营销的区别
  • 电影网站如何做5网站建设公司
  • 河南网站优化公司哪家好南山网站设计线
  • 网站构建代码模板番禺网站建设
  • 拟一份饰品网站建设合同网站开发应注意哪些问题
  • 芜湖建站公司做网站的人多吗
  • 网站怎么加二级域名微信授权登录网站退出怎么做
  • 如何把旅行社网站做的好看网站创建方案怎么写
  • 织梦网站图标更换宠物网页设计图片
  • 如何查找网站竞争对手的宣传方式北京网站搭建公司电话
  • 北京正规制作网站公司wordpress 获取图片地址
  • 大学路网站建设推广图片素材
  • wordpress 创建网站搜索引擎优化代理
  • 设计网站用什么软件盈江城乡建设局网站
  • 网站建设模式有哪些内容seo品牌
  • 衡水做网站服务商济南如何挑选网站建设公司
  • 全屏的网站制作企业网站欢迎界面素材
  • 视频网站切片怎么做网站建设可自学吗