Python人工智能之波士顿房价数据分析

目录
  • 1.数据概览分析
    • 1.1 数据概览
    • 1.2 数据分析
  • 2. 项目总体思路
    • 2.1 数据读取
    • 2.2 模型预处理
      • (1)数据离群点处理
      • (2)数据归一化处理
    • 2.3. 特征工程
    • 2.4. 模型选择
    • 2.5. 模型评价
    • 2.6. 模型调参
  • 3. 项目总结

【人工智能项目】机器学习热门项目-波士顿房价

1.数据概览分析

1.1 数据概览

本次提供:

  • train.csv,训练集;
  • test.csv,测试集;
  • submission.csv 真实房价文件;

训练集404行数据,14列,每行数据表示房屋以及房屋周围的详细信息,已给出对应的自住房平均房价。要求预测102条测试数据的房价。

1.2 数据分析

通过学习房屋以及房屋周围的详细信息,其中包含城镇犯罪率,一氧化氮浓度,住宅平均房间数,到中心区域的加权距离以及自住房平均房价等等,训练模型,通过某个地区的房屋以及房屋周围的详细信息,预测该地区的自住房平均房价。

回归问题,提交测试集每条数据对应的自住房平均房价。评估指标为均方误差mse。

2. 项目总体思路

2.1 数据读取

数据集:波士顿房间训练集.csv (404条数据)
数据集字段如下:
CRIM:城镇人均犯罪率。
ZN:住宅用地超过 25000 sq.ft. 的比例。
INDUS:城镇非零售商用土地的比例。
CHAS:查理斯河空变量(如果边界是河流,则为1;否则为0)。
NOX:一氧化氮浓度。
RM:住宅平均房间数。
AGE:1940 年之前建成的自用房屋比例。
DIS:到波士顿五个中心区域的加权距离。
RAD:辐射性公路的接近指数。
TAX:每 10000 美元的全值财产税率。
PTRATIO:城镇师生比例。
B:1000(Bk-0.63)^ 2,其中 Bk 指代城镇中黑人的比例。
LSTAT:人口中地位低下者的比例。
MEDV:自住房的平均房价,以千美元计。

2.2 模型预处理

(1)数据离群点处理

首先对训练集进行拆分为子训练集与子测试集,利用train_data.sort_values对训练集进行排序,依次删除每个特征对应的离群样本,利用子训练集与子测试集对模型进行训练与测试并确定该特征下所需删除样本的最佳个数。

(2)数据归一化处理

利用sklearn.preprocessing. StandardScaler对数据集与标签分别进行标准化处理。

2.3. 特征工程

利用随机森林特征选择算法剔除不敏感特征。

2.4. 模型选择

使用GradientBoostingRegressor集成回归模型。

Gradient Boosting 在迭代的时候选择梯度下降的方向来保证最后的结果最好。损失函数用来描述模型的“靠谱”程度,假设模型没有过拟合,损失函数越大,模型的错误率越高

如果我们的模型能够让损失函数持续的下降,则说明我们的模型在不停的改进,而最好的方式就是让损失函数在其梯度方向上下降。

2.5. 模型评价

采用均方误差(MSE)评分标准,MSE: Mean Squared Error 。均方误差是指参数估计值与参数真值之差平方的期望值;

MSE可以评价数据的变化程度,MSE的值越小,说明预测模型描述实验数据具有更好的精确度。计算公式如下:

其在测试集上的MSE值为:

2.6. 模型调参

对n_ n_estimators的参数进行调参:

3. 项目总结

通过多次实验,我们目前得到的最优解为8.18左右。在处理小数据集出现过拟合时,首先应当考虑减小模型或增加数据集。由于本次实验是通过大量训练取最优的办法均使用缺省参数,对超参数进一步调优也许可更进一步。

到此这篇关于Python人工智能之波士顿房价数据分析的文章就介绍到这了,更多相关Python 波士顿房价内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python 实例进阶之预测房价走势

    目录 项目描述 项目分析 Show Time Step 1 导入数据 Step 2 分析数据 基础统计运算 特征观察 Step 3 数据划分 Step 4 定义评价函数 Step 5 模型调优 学习曲线 小结 该分享源于 Udacity 机器学习进阶中的一个mini作业项目,用于入门非常合适,刨除了繁琐的部分,保留了最关键.基本的步骤,能够对机器学习基本流程有一个最清晰的认识.欢迎收藏学习,喜欢点赞支持,文末提供技术交流群. 项目描述 利用马萨诸塞州波士顿郊区的房屋信息数据训练和测试一个模型,并

  • Python实现并行抓取整站40万条房价数据(可更换抓取城市)

    写在前面 这次的爬虫是关于房价信息的抓取,目的在于练习10万以上的数据处理及整站式抓取. 数据量的提升最直观的感觉便是对函数逻辑要求的提高,针对Python的特性,谨慎的选择数据结构.以往小数据量的抓取,即使函数逻辑部分重复,I/O请求频率密集,循环套嵌过深,也不过是1~2s的差别,而随着数据规模的提高,这1~2s的差别就有可能扩展成为1~2h. 因此对于要抓取数据量较多的网站,可以从两方面着手降低抓取信息的时间成本. 1)优化函数逻辑,选择适当的数据结构,符合Pythonic的编程习惯.例如,

  • Python人工智能之波士顿房价数据分析

    目录 1.数据概览分析 1.1 数据概览 1.2 数据分析 2. 项目总体思路 2.1 数据读取 2.2 模型预处理 (1)数据离群点处理 (2)数据归一化处理 2.3. 特征工程 2.4. 模型选择 2.5. 模型评价 2.6. 模型调参 3. 项目总结 [人工智能项目]机器学习热门项目-波士顿房价 1.数据概览分析 1.1 数据概览 本次提供: train.csv,训练集: test.csv,测试集: submission.csv 真实房价文件: 训练集404行数据,14列,每行数据表示房屋

  • 详解Python对某地区二手房房价数据分析

    目录 房价数据分析 数据简单清洗 各区均价分析 全市二手房装修程度分析 各区二手房数量所占比比例 热门户型均价分析 总结 房价数据分析 数据简单清洗 data.csv 数据显示 # 导入模块 import pandas as pd # 导入数据统计模块 import matplotlib # 导入图表模块 import matplotlib.pyplot as plt # 导入绘图模块 # 避免中文乱码 matplotlib.rcParams['font.sans-serif'] = ['Sim

  • 基于Python实现的微信好友数据分析

    最近微信迎来了一次重要的更新,允许用户对"发现"页面进行定制.不知道从什么时候开始,微信朋友圈变得越来越复杂,当越来越多的人选择"仅展示最近三天的朋友圈",大概连微信官方都是一脸的无可奈何.逐步泛化的好友关系,让微信从熟人社交逐渐过渡到陌生人社交,而朋友圈里亦真亦幻的状态更新,仿佛在努力证明每一个个体的"有趣". 有人选择在朋友圈里记录生活的点滴,有人选择在朋友圈里展示观点的异同,可归根到底,人们无时无刻不在窥探着别人的生活,唯独怕别人过多地了解

  • python人工智能算法之线性回归实例

    目录 线性回归 使用场景 分析: 总结: 线性回归 是一种常见的机器学习算法,也是人工智能中常用的算法.它是一种用于预测数值型输出变量与一个或多个自变量之间线性关系的方法.例如,你可以使用线性回归模型来预测房价,根据房屋的面积.地理位置.周围环境等. 主要思想是通过构建一个线性模型,来描述自变量和输出变量之间的关系.模型可以表示为: y = a0 + a1*x1 + a2*x2 + - + an*xn 其中,y是输出变量(也称为响应变量),x1.x2.….xn是自变量(也称为特征),a0.a1.

  • Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现

    简单的问答已经实现了,那么问题也跟着出现了,我不能确定问题一定是"你叫什么名字",也有可能是"你是谁","你叫啥"之类的,这就引出了人工智能中的另一项技术: 自然语言处理(NLP) : 大概意思就是 让计算机明白一句话要表达的意思,NLP就相当于计算机在思考你说的话,让计算机知道"你是谁","你叫啥","你叫什么名字"是一个意思 这就要做 : 语义相似度 接下来我们用Python大法来实

  • Python人工智能之路 之PyAudio 实现录音 自动化交互实现问答

    Python 很强大其原因就是因为它庞大的三方库 , 资源是非常的丰富 , 当然也不会缺少关于音频的库 关于音频, PyAudio 这个库, 可以实现开启麦克风录音, 可以播放音频文件等等,此刻我们不去了解其他的功能,只了解一下它如何实现录音的 首先要先 pip 一个 PyAudio pip install pyaudio 一.PyAudio 实现麦克风录音 然后建立一个py文件,复制如下代码 import pyaudio import wave CHUNK = 1024 FORMAT = py

  • 使用Python对微信好友进行数据分析

    1.准备工作 1.1 库介绍 只有登录微信才能获取到微信好友的信息,本文采用wxpy该第三方库进行微信的登录以及信息的获取. wxpy 在 itchat 的基础上,通过大量接口优化提升了模块的易用性,并进行丰富的功能扩展. wxpy一些常见的场景: •控制路由器.智能家居等具有开放接口的玩意儿 •运行脚本时自动把日志发送到你的微信 •加群主为好友,自动拉进群中 •跨号或跨群转发消息 •自动陪人聊天 •逗人玩 总而言之,可用来实现各种微信个人号的自动化操作. 1.2 wxpy库安装 wxpy 支持

  • Python实现的微信好友数据分析功能示例

    本文实例讲述了Python实现的微信好友数据分析功能.分享给大家供大家参考,具体如下: 这里主要利用python对个人微信好友进行分析并把结果输出到一个html文档当中,主要用到的python包为itchat,pandas,pyecharts等 1.安装itchat 微信的python sdk,用来获取个人好友关系.获取的代码 如下: import itchat import pandas as pd from pyecharts import Geo, Bar itchat.login() f

  • Python实现的北京积分落户数据分析示例

    本文实例讲述了Python实现的北京积分落户数据分析.分享给大家供大家参考,具体如下: 北京积分落户状况 获取数据(爬虫/文件下载)-> 分析 (维度-指标) 从公司维度分析不同公司对落户人数指标的影响 , 即什么公司落户人数最多也更容易落户 从年龄维度分析不同年龄段对落户人数指标影响 , 即什么年龄段落户人数最多也更容易落户 从百家姓维度分析不同姓对落户人数的指标影响 , 即什么姓的落户人数最多即也更容易落户 不同分数段的占比情况 # 导入库 import numpy as np import

  • 用Python 爬取猫眼电影数据分析《无名之辈》

    前言 作者: 罗昭成 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 http://note.youdao.com/noteshare?id=3054cce4add8a909e784ad934f956cef 获取猫眼接口数据 作为一个长期宅在家的程序员,对各种抓包简直是信手拈来.在 Chrome 中查看原代码的模式,可以很清晰地看到接口,接口地址即为:http://m.maoyan.com/mmdb/comments/movie/1208282.json?_v_=yes&o

随机推荐