house_price(房价预测)

python-机器学习-预测房价问题 House Price Advanced Regression Techniques 购房者描述他们的梦想房屋,预测最终价格。问题转换为回归问题,评价标准时RMSE,从MSSubClass,MSZoning,LotFrontage等特征提取新的特征。考虑到评价指标是RMSE,本质是一个回归问题,模型融合时候可以使用多个回归模型进行stacker。采用了数据清洗、特征工程、建模和高级回归技术,实现了对数据进行分析,分析数据之间的联系,数据的分布,数据的类型等,最终实现了堆叠回归预测房价,其主要功能包括预测销售价格并练习特征工程,RF和梯度提升,特点是堆叠回归,预测值与真实值误差小。 阅读详情

最近在阅读一些AI项目,写入markdown,持续更新,算是之后也能回想起做法

项目 https://github.com/calssion/Fun_AI

 

Kaggle--House Prices: Advanced Regression Techniques

Kaggle address(网址):https://www.kaggle.com/c/house-prices-advanced-regression-techniques

tutorial(教程):kernal notebook https://www.kaggle.com/serigne/stacked-regressions-top-4-on-leaderboard

Data preprocessing(数据预处理)

image
Documentation for the Ames Housing Data indicates that there are outliers present in the training data(数据文档表明训练集中有离群点)
image
We can see at the bottom right two with extremely large GrLivArea that are of a low price. These values are huge oultliers. Therefore, we can safely delete them.(我们可以发现右下有两个离群点,因此我们可以安全地将其删除)

train = train.drop(train[(train['GrLivArea']>4000) & (train['SalePrice']<300000)].index)

There are probably others outliers in the training data. However, removing all them may affect badly our models if ever there were also outliers in the test data. That's why , instead of removing them all, we will just manage to make some of our models robust on them.(训练数据中可能存在其他异常值。然而,如果测试数据中存在异常值,则删除它们可能会严重影响我们的模型。这就是为什么我们不将它们全部删除,我们将设法使我们的一些模型对它们具有鲁棒性。)

sns.distplot(train['SalePrice'] , fit=norm);
(mu, sigma) = norm.fit(train['SalePrice'])
print( '\n mu = {:.2f} and sigma = {:.2f}\n'.format(mu, sigma))
plt.legend(['Normal dist. ($\mu=$ {:.2f} and $\sigma=$ {:.2f} )'.format(mu, sigma)],loc='best')
plt.ylabel('Frequency')
plt.title('SalePrice distribution')
fig = plt.figure()
res = stats.probplot(train['SalePrice'], plot=plt)
plt.show()

image
image
The target variable is right skewed. As (linear) models love normally distributed data , we need to transform this variable and make it more normally distributed. (目标变量是右偏的。由于(线性)模型喜欢正态分布的数据,所以我们需要变换这个变量并使其更加正常分布。)
Log-transformation of the target variable(用log函数转换变量)

train["SalePrice"] = np.log1p(train["SalePrice"])

image
image
The skew seems now corrected and the data appears more normally distributed.(现在斜线正确了而且也呈现正太分布了)

Missing Data(缺失值)

all_data_na = (all_data.isnull().sum() / len(all_data)) * 100
all_data_na = all_data_na.drop(all_data_na[all_data_na == 0].index).sort_values(ascending=False)[:30]
missing_data = pd.DataFrame({'Missing Ratio' :all_data_na})
missing_data.head(20)

image
image

corrmat = train.corr()
plt.subplots(figsize=(12,9))
sns.heatmap(corrmat, vmax=0.9, square=True)

image

Imputing missing values(填充缺失值)

Stacking averaged Models Class(Stacking平均模型)

stacked_averaged_models = StackingAveragedModels(base_models = (ENet, GBoost, KRR),meta_model = lasso)
score = rmsle_cv(stacked_averaged_models)
print("Stacking Averaged models score: {:.4f} ({:.4f})".format(score.mean(), score.std()))

we just average Elastic Net Regression、 Kernel Ridge Regression、Gradient Boosting Regression, then we add LASSO Regression as meta-model. this is the Ensembling StackedRegressor
(stacking模型以Elastic Net Regression、Kernel Ridge Regression、Gradient Boosting Regression集成为初级学习器,然后以LASSO Regression作为二级学习器,这是Ensembling StackedRegressor)

and then Ensembling StackedRegressor, XGBoost and LightGBM
(然后我们集成刚训练完的stacking模型和XGBoost和LightGBM)

the submission will be ensemble = stacked_pred * 0.70 + xgb_pred * 0.15 + lgb_pred * 0.15
(以stacked_train_pred0.70 + xgb_train_pred0.15 + lgb_train_pred*0.15 集成为最终结果)

Submissions are evaluated on Root-Mean-Squared-Error (RMSE) between the logarithm of the predicted value and the logarithm of the observed sales price. (提交结果用RMSE来评价预测值和真实值)

image

get the score of 0.11549 (获得评分0.11549)

kaggle--House Price(房价预测)--线性回归模型 相关系数矩阵 异常值处理 get_dummies去除量纲 交叉验证 阅读详情

相关推荐

Tensorflow:深度神经网络DNN预测波士顿房价(boston house price)【二】

在Tensorflow:深度神经网络DNN预测波士顿房价(boston house price)【一】 中训练了网络还保存了模型。如何使用训练好的模型?请往下看。。import用到的包# coding: utf-8 import tensorflow as tf from sklearn.datasets import load_boston from sklearn.preprocessing i

mvs2008的专栏 8824

数据科学 案例2 统计推断基础之房价预测(代码)

数据科学 案例2 统计推断基础之房价预测(代码)第6讲 统计推断基础6.1 参数估计1、进行描述性统计分析2、置信度区间估计1、法一(直接计算)2、法二(定义函数计算)3、法三(直接调用函数)6.2 假设检验与单样本T检验6.3 两样本T检验6.4 方差分析6.5 相关分析6.6卡方检验 第6讲 统计推断基础 数据说明:本数据是地区房价增长率数据 名称-中文含义 dis_name-小区名称 ra...

irober的博客 1443

Tensorflow:深度神经网络DNN预测波士顿房价(boston house price)【一】

刚学习TF,尝试拿sklearn的datasets来做下练习。波士顿房价数据是个不错的选择。 python3.5 tensorflow 0.12把所有的包import进来# coding: utf-8 import tensorflow as tf from sklearn.datasets import load_boston import matplotlib.pyplot as plt f

mvs2008的专栏 1万+

house-prices

分析报告探索性数据分析1 查看缺失值特征工程建立模型 探索性数据分析 在这一部分主要是对训练集的81个features进行了分析,以对数据有一个初步的了解,方便后续进行特征工程和模型的建立。在进行数据探索之前,先了解一下训练集和测试集的样本量,训练集的shape为(1460, 81) ,测试集的shape为(1459, 80),测试集比训练集少了“SalePrice”目标值这一列;此外也统计了训...

xiaotian127的博客 1241

【深度学习实战】Kaggle比赛:房价预测(kaggle-house-price)

实战Kaggle比赛:房价预测实战Kaggle比赛:房价预测Kaggle比赛获取和读取数据集预处理数据训练模型KKK折交叉验证模型选择预测并在Kaggle提交结果小结Jupyternotebook读取数据预处理数据连续数值的特征做标准化(standardization)离散数值转成指示特征训练模型K折交叉验证模型选择模型预测 实战Kaggle比赛:房价预测 作为深度学习基础篇章的总结,我们将对本章内容学以致用。下面,让我们动手实战一个Kaggle比赛:房价预测。本节将提供未经调优的数据的预处理、模型的设计和

全网粉丝30W+,优快云、稀土掘金人工智能领域签约作者,人工智能、大模型、Python 爬虫,商务合作,请私信沟通。 1万+

House-Prices-Advanced-Regression-Techniques

AirBnB-NYC-可视化-项目 一个采用机器学习技术为该Kaggle( )数据集进行准确预测的项目。 该数据集包括79个解释变量,描述了爱荷华州埃姆斯市住宅房屋的各个方面。

Kaggle - House_Price基础篇

Kaggle - House price 数据处理Kaggle: House Prices: Advanced Regression Techniques1,读取数据: 使用pd.read_csv()导入 train_df, test_df数据2,合并数据: label:  使用log1p平滑处理train_df中的label得到[y_train] -&gt; 最后需要用expm1() 变回来提取...

sinat_15355869的博客 1525

HOUSE_PRICE_PREDICTION

HOUSE_PRICE_PREDICTION 要求购房者描述他们的梦想中的房子,他们可能不会从地下室天花板的高度或与东西方铁路的距离开始。 但是,这场运动场比赛的数据集证明,与价格或卧室或白色栅栏的数量相比,影响价格谈判的因素更多。 借助79个解释性变量(几乎)描述了爱荷华州埃姆斯市住宅的方方面面,本次竞赛要求您预测每个房屋的最终价格。 数据字段这是一个简短的版本: SalePrice-物业的销售价格(以美元为单位)。 这是您要预测的目标变量。 MSSubClass:建筑类MSZoning:总体分区分类LotFrontage:连接到属性Lot的街道的线性英尺LotArea:平方英尺的地块大小Street:道路通道的类型Alley:胡同通道的类型LotShape:属性的一般形状LandContour:属性实用程序:可用的实用程序类型LotConfig:批次配置LandSlope:属性

Kaggle-House-Price竞赛完整代码:精准预测房价的利器

Kaggle-House-Price竞赛完整代码:精准预测房价的利器 去发现同类优质开源项目:https://gitcode.com/ Kaggle-House-Price竞赛完整代码,30个字内精准概括:基于数据清洗与机器学习,实现房价预测。 项目介绍 房价预测是房地产领域的一项关键任务,对于投资者、开发商及相关部门决策都具有重要意义。Kaggle-House-Price竞赛旨在通过数据科学方法...

gitblog_06714的博客 921

house_price_kaggle.zip

kaggle平台上波士顿房价预测的数据集以及代码实现过程, 主要涉及遇到一个新问题是如何分析数据,对数据进行处理,做特征工程,到最后的预测

kaggle比赛HousePrices之数据预处理

kaggle比赛HousePrices之数据预处理部分的完整代码,包含非常详细的注释,属于数据挖掘预处理的经典流程性代码。

kaggle (1) : house price 房价预测

kaggle入门(一) house price 题目地址:https://www.kaggle.com/c/house-prices-advanced-regression-techniques/overview

May the Force be with you 2821

预测房价问题 House Price Advanced Regression Techniques

购房者描述他们的梦想房屋,预测最终价格。问题转换为回归问题,评价标准时RMSE,从MSSubClass,MSZoning,LotFrontage等特征提取新的特征。考虑到评价指标是RMSE,本质是一个回归问题,模型融合时候可以使用多个回归模型进行stacker。采用数据清洗、特征工程、建模和高级回归技术,实现了对数据进行分析,分析数据之间的联系,数据的分布,数据的类型等,最终实现了堆叠回归预测房价,其主要功能包括预测销售价格并练习特征工程,RF和梯度提升,特点是堆叠回归,预测值与真实值误差小。 源代码:House price.py 训练集:train.csv 测试集:test.csv 提交样例:sample_submission.csv 最终提交:submission.csv

探索AI预测房价的秘密:HeLiangHIT/house_price项目解析

探索AI预测房价的秘密:HeLiangHIT/house_price项目解析 house_price全国房价数据爬取+分析项目地址:https://gitcode.com/gh_mirrors/ho/house_price 在当今大数据和人工智能时代,数据驱动的决策已经成为各行各业的标准实践。特别是在房地产市场,了解房屋价格的趋势和影响因素至关重要。 是一个开源项目,它利用机器学习模型来预测房价...

gitblog_00096的博客 524

Kaggle: House Price-数据集

Kaggle: House Price-数据集

ENSP:小型企业网络拓扑设计

包含的技术:ospf、dhcp中继、ac+ap、vrrp+mstp、acl、浮动路由、静态路由、vlan划分

weixin_45921302的博客 1万+

[kaggle] House-price(房价预测)中的代码

pandas.DataFrame.dtypes 用法:df.dtypes,返回一个Series(sereies的index是DF每一列的名字,value是每一列的dtype),描述了每一列的数据类型,可以通过列的索引来索引返回的Series。如果某一列中混合了多种类型,则该列的类型被认为是object类型。 df = pd.DataFrame({'float': [1.0], 'int': [1], 'datetime'.

weixin_43476632的博客 990

数字信号处理实验:信号谱分析与FFT算法的应用

​ (1)给定信号为 ,其中a为42,b为1。理论分析信号 的频率成分。 (2)分别采用采样频率为 , , , 对 进行采样,其中 , , , ,根据是否满足采样定理要求分析四种采样频率下频谱的分布,在满足采样定理情况下做频谱分析。 (3)任意生成两组有限长信号,对信号分别进行直接卷积和FFT算法求卷积,并分析圆周卷积与线性卷积的关系。

m0_56324525的博客 3201

使用GitCode上的House-price-prediction项目进行房屋价格预测

使用GitCode上的House-price-prediction项目进行房屋价格预测 在数据科学和机器学习领域,预测模型是核心工具之一,它们能够帮助我们解析复杂的数据并做出准确的决策。项目就是一个很好的实例,它展示了如何利用Python和机器学习算法来预测房价。 项目简介 该项目是一个基于Python的数据挖掘与机器学习实践,目标是根据一系列的房屋特征(如面积、位置等)预测其市场价格。数据集来源...

gitblog_00058的博客 465

Transformer是什么?看完这篇你就醍醐灌顶

前言 由谷歌团队提出的预训练语言模型BERT近年来正在各大自然语言处理任务中屠榜(话说学者们也挺有意思的,模型名都强行凑个芝麻街的人物名,哈哈哈)。 BERT算法的最重要的部分便是Transformer的概念,它本质上是Transformer的编码器部分。 而Transformer是什么呢?transformer是永远的神,自从transformer使用了抛弃rnncnn的纯attention机制之后,各种基于transformer结构的预训练模型都如雨后春笋般雄起,而transformer中最重要就是使用

fs1341825137的博客 6万+

STM32内存大小与地址的对应关系以及计算方法

1、概述 在计算机中要访问存储区,都是通过地址来进行访问的,包括所有的外设(比如串口、内存、硬盘等),都对应有一个访问地址,地址就相当于门牌号,有了门牌号,我们才知道操作的是哪一个区域、哪一个外设。 最被大家熟知的是计算机内存,计算机内存有4G、8G,16G等等,对于程序员而言,要在代码中操作这些内存,肯定得知道内存的地址,此外,还需要会计算地址与内存大小的计算方法与对应关系。STM32作为微

Ace's Blog 4万+
上一篇: ColorNet(灰图涂色)
下一篇: Titanic(泰坦尼克号)
流左沙
博客等级 码龄11年 46粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值