最近发现了一个挺厉害的人工智能学习网站,内容通俗易懂,风趣幽默,感兴趣的可以点击此链接进行查看:床长人工智能教程

废话不多说,请看正文!

实验题目:请建立一个预测房屋价值的模型,给出线性回归的指标MSE,RMSE,MAE、R2,画出数据图。备注:考虑房间数特征和所有特征(选做)

操作步骤与提示:

  1. 波士顿房产数据集:使用sklearn.datasets.load_boston即可加载相关数据;
  2. 'RM'是该地区中每个房屋的平均房间数量。
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn import datasets# 加载波士顿房价的数据集
boston = datasets.load_boston()plt.rcParams['font.sans-serif'] = ['SimHei']  # 设置matplotlib上的中文字体
plt.rcParams['axes.unicode_minus'] = False  # 在matplotlib 绘图正常显示符号boston_df = pd.DataFrame(boston.data, columns=boston.feature_names)
boston_df['MEDV'] = boston.target# 查看数据是否存在空值,从结果来看数据不存在空值。
boston_df.isnull().sum()
# 查看数据大小
boston_df.shape
# 显示数据前5行
boston_df.head()
# 查看数据的描述信息,在描述信息里可以看到每个特征的均值,最大值,最小值等信息。
boston_df.describe()
#
# # 清洗'PRICE' > 49.0 和 < 2 的数据
boston_df = boston_df.loc[boston_df['MEDV'] < 49.0]
boston_df = boston_df.loc[boston_df['MEDV'] > 2.0]# 计算每一个特征和房价的相关系数
boston_df.corr()['MEDV']# 各个特征和价格都有明显的线性关系。
plt.figure(facecolor='gray')
corr = boston_df.corr()
corr = corr['MEDV']
corr[abs(corr) > 0.5].sort_values().plot.bar()boston_df = boston_df[["CRIM", "INDUS", "RM", "AGE", "RAD", "PTRATIO", "LSTAT", 'MEDV']]
# 目标值
y = np.array(boston_df['MEDV'])
boston_df = boston_df.drop(['MEDV'], axis=1)
# 特征值
X = np.array(boston_df)from sklearn.model_selection import train_test_splitX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)from sklearn import preprocessing# 初始化标准化器
min_max_scaler = preprocessing.MinMaxScaler()
# 分别对训练和测试数据的特征以及目标值进行标准化处理
X_train = min_max_scaler.fit_transform(X_train)
y_train = min_max_scaler.fit_transform(y_train.reshape(-1, 1))  # reshape(-1,1)指将它转化为1列,行自动确定
X_test = min_max_scaler.fit_transform(X_test)
y_test = min_max_scaler.fit_transform(y_test.reshape(-1, 1))from sklearn.linear_model import LinearRegressionlr = LinearRegression()
# 使用训练数据进行参数估计
lr.fit(X_train, y_train)
# 使用测试数据进行回归预测
y_test_pred = lr.predict(X_test)# 使用r2_score对模型评估
from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score# 绘图函数
def figure(title, *datalist):plt.figure(facecolor='gray', figsize=[16, 8])for v in datalist:plt.plot(v[0], '-', label=v[1], linewidth=2)plt.plot(v[0], 'o')plt.grid()plt.title(title, fontsize=20)plt.legend(fontsize=16)plt.show()# 训练数据的预测值
y_train_pred = lr.predict(X_train)# 计算均分方差
train_MSE = [mean_squared_error(y_train, [np.mean(y_train)] * len(y_train)),mean_squared_error(y_train, y_train_pred)]# 计算平均绝对误差
train_MAE = [mean_absolute_error(y_train, [np.mean(y_train)] * len(y_train)),mean_absolute_error(y_train, y_train_pred)]# 计算R2分数
train_R2 = [r2_score(y_train, [np.mean(y_train)] * len(y_train)),r2_score(y_train, y_train_pred)]# 绘制误差图
figure(' MSE = %.4f' % (train_MSE[-1]), [train_MSE, 'MSE'])
figure(' MAE = %.4f' % (train_MAE[-1]), [train_MAE, 'MAE'])
figure(' R2 = %.4f' % (train_R2[-1]), [train_R2, 'R2'])# 绘制预测值与真实值图
figure('预测值与真实值图 模型的' + r'$R^2=%.4f$' % (r2_score(y_train_pred, y_train)), [y_test_pred, 'pred_value'],[y_test, 'true_value'])
# 线性回归的系数
print('线性回归的系数为:\n w = %s \n b = %s' % (lr.coef_, lr.intercept_))

实验结果:

波士顿房价预测实验报告相关推荐

  1. 深度学习入门——波士顿房价预测

    基于神经网络模型的波士顿房价预测 波士顿房价预测是一个经典的机器学习任务,类似于程序员世界的"Hello World".以"波士顿房价预测"任务为例,我们学习如 ...

  2. 深度学习(波士顿房价预测)

    本程序采用百度paddlepaddle深度学习框架,并在百度AI Studio平台上运行. 目录 1实验背景 2 实验过程 2.1 数据处理 2.1.1数据集导入并按规定形状保存 2.1.2数据集的划 ...

  3. 机器学习入门实战---波士顿房价预测

    波士顿房价预测 波士顿房价数据集介绍 波士顿房价数据说明:此数据源于美国某经济学杂志上,分析研究波士顿房价( Boston HousePrice)的数据集.数据集中的每一行数据都是对波士顿周边或城镇房 ...

  4. 波士顿房价预测——机器学习入门级案例

    一.数据处理 1.1 数据集介绍 本实验使用波士顿房价预测数据集,共506条样本数据,每条样本包含了13种可能影响房价的因素和该类房屋价格的中位数,各字段含义如下表所示: 字段名 类型 含义 CRIM ...

  5. 机器学习(11)线性回归(2)实战 -- 正规方程优化、梯度下降优化(波士顿房价预测)

    目录 一.波士顿房价预测(正规方程优化) API 1.获取数据集 2.划分数据集 3.标准化 4. 创建预估器,得到模型 5.模型评估(均方差评估) 代码 二.波士顿房价预测(正规方程优化) API ...

  6. 竞赛大杀器xgboost,波士顿房价预测

    经常出入DC竞赛.kaggle.天池等大数据比赛的同学应该很了解xgboost这座大山. 几乎所有的比赛都绕不过它,可能只需要这一个库,在比赛中就可以得到很高的分数,究竟是为什么呢?那么就来窥探一下它 ...

  7. 线性回归之案例:波士顿房价预测

    线性回归之案例:波士顿房价预测 数据介绍   [13个特征值,1个目标值] 给定的这些特征,是专家们得出的影响房价的结果属性.此阶段不需要自己去探究特征是否有用,只需要使用这些特征.到后面量化很多特征 ...

  8. 【深度学习】实战Kaggle竞赛之线性模型解决波士顿房价预测问题(Pytorch)

    [深度学习]实战Kaggle竞赛之线性模型解决波士顿房价预测问题 文章目录 1 概述1.1 Competition Description1.2 Practice Skills 2 数据处理 3 训练 ...

  9. kaggle房价预测特征意思_Kaggle实战-波士顿房价预测

    本文数据集来自Kaggle波士顿房价预测项目https://www.kaggle.com/c/house-prices-advanced-regression-techniques/data 1.数据 ...

  10. 教你使用百度深度学习框架PaddlePaddle完成波士顿房价预测(新手向)

    首先,本文是一篇纯新手向文章,我自己也只能算是入门,有说错的地方欢迎大家批评讨论 目录 一.人工智能.机器学习.深度学习 二.PaddlePaddle(飞桨) 三.波士顿房价预测模型 数据处理 模型设 ...

最新文章

  1. 查看mysql日志文件大小和数据库大小
  2. mac mysql premium_详解 Navicat Premium Mac 版常用功能
  3. ASP.NET 2.0 中改进的缓存功能
  4. C# 系统应用之TreeView控件 (一).显示树状磁盘文件目录及加载图标
  5. 每日干货丨C语言数组知识点总结
  6. 大圆距离matlab代码,python – cartopy:大圆距离线的更高分辨率
  7. 一分六钱用计算机怎么算,交行信用卡分期付款计算器:5000元分6期手续费
  8. mac m1使用免费的hopper demo版本和machoView破解修改iphone上的app
  9. konika电视一直显示android,康佳多屏互动电视端下载
  10. 一生要看的50部经典电影
  11. 宋智孝那个机器人_陈柏霖机器人竟然冷落宋智孝
  12. PD虚拟机设置替代ALT+F4(关闭窗口)的快捷键的方法
  13. Duilib corner属性
  14. 如何关闭苹果手机自动扣费_手机自动扣费?三招教你关闭
  15. 电路的等效变换(二)
  16. 【网络流量监控工具之Nethogs】
  17. YUV/YCbCr/YPbPr
  18. 五个有用的工具帮助您提高代码质量
  19. .me 域名注册的方法和规则
  20. 前复权和后复权有什么区别

热门文章

  1. 2021/10/04 git 详细流程
  2. 唐山新维计算机学校,WellDesign创景新维设计学员风采介绍
  3. OpenCV图像轮廓提取
  4. 美国公布自动驾驶新政AV4.0;微软Access数据库出现漏洞,或致8.5万家企业面临风险;苹果谈论隐私问题……...
  5. 盘点一下使用高德api踩得坑
  6. MODULE_AUTHOR 功能
  7. Excel的Index函数详解
  8. 如何快速提高Python能力
  9. 机器人 陆梅东_第十八届全国中小学组电脑制作活动上海赛区.DOC
  10. 对话:中国软件能不能找到自己的核心技术