前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >ML:教你聚类并构建学习模型处理数据(附数据集)

ML:教你聚类并构建学习模型处理数据(附数据集)

作者头像
数据派THU
发布于 2018-06-12 03:54:41
发布于 2018-06-12 03:54:41
9140
举报
文章被收录于专栏:数据派THU数据派THU

本文以Ames住房数据集为例,对数据进行聚类,并构建回归模型。

摘要

本文将根据41个描述性分类特征的维度,运用无监督主成分分析(PCA)和层次聚类方法对观测进行分组。将数据聚类可以更好地用简单的多元线性模型描述数据或者识别更适合其他模型的异常组。此方法被编写在python类中,以便将来能实现类似网格搜索的参数优化。

结果与讨论

本项目中,我们将机器学习技术应用于Ames住房数据集,用79个解释变量来预测房屋的销售价格,其中包括41个分类变量(分类型变量),38个连续数值变量(连续型变量)。在最初探索性数据分析(EDA)和特征选择的过程中,为了更好地理解数据,我们仅用两个连续变量来拟合数据,以便通过三维散点图反映数据和模型。通过列举38个连续数值变量的所有双变量排列组合并分别拟合线性回归模型,我们选出了两个对销售价格预测能力最强的变量。在考虑整个训练集时,地上居住面积和整体质量参数是最佳的预测指标,但这只解释了房屋销售价73.9%的方差。通过使用41个分类特征来识别数据集内的组群,我们可以将数据集分解为方差更小的子集,并找到更好地描述每个特定房屋子集的模型。

附Ames housing数据集: https://www.kaggle.com/c/house-prices-advanced-regression-techniques

一个简单的线性回归模型可以体现地上居住面积和整体质量对住宅销售价格的影响,它解释了74%的房价变动

由于分类变量较多,并且对Ames房屋市场的专业知识有限,我们使用无监督的聚类方法找到变量里的模式并在此基础上分组。首先通过PCA对数据集进行降维,以避免大量分类变量造成的“维度灾难”效应。PCA还有其他的好处,它能把对总体方差没有贡献的变量数量降到最低,并且将维度降低到三维以便我们直观地改进聚类算法的图形表示(并且将维度降低至三维,给了我们一个图形化的分类效果展示,以便做出直观地改进)。下图展示了由PCA将分类变量降到3维的图形:

由41个分类变量浓缩后的三维PCA空间数据表示

通过对此图的初步观察,数据大部分的差异体现在新的Y(垂直)维度。在X(宽度)和Z(深度)维度中,差异来源于设定的类别,进而导致数据形成垂直方向的条纹。由于群集的各向异性,我们利用有k-nearest neighbor connector参数的层次聚类算法来定义组,这样就不会将条带分割成多个部分。(我们利用层次聚类算法中的k邻近算法,在不把竖状条纹割开的基础上重新定义各个组。)(在Python的sklearn库中,AgglomerativeClustering方法可以用于聚类。本案例中,基于Ward linkage标准把类的数量设置为6,以及由kneighbors_graph包生成连接数组,其中参数n_neighbors设置为20)。

层次聚类分组的PCA空间表示

基于邻近地区着色和PCA降维的观测有助于发现影响降维及聚类的因素

由PCA 、聚类方法生成的群集非常好地区别了分组中的垂直“条纹”。为了找到无监督聚类和其所对应的房屋特征之间的相似点,这些群集也基于每个分类变量着色。其中一些彩色的散点图类似于无监督聚类,表明这些特定的房子特征在确定每个数据点的最终PCA向量时起较大的作用。特别注意的是,基于邻近区域(neighborhood)着色突出了与无监督方法相似的垂直分组,这表明邻近区域是影响分解子集的一个重要因素。为了此类应用,我们需要设计更精确的方法来确定每个因素对最终PCA维度的整体“贡献”。

为了确定每个组中哪两大因素是销售价格最好的预测因素,我们用这6个集群把连续数值数据分为子集,并假设一个简单的二元线性回归模型

组别

最有影响力的自变量

判定系数

1

Overall Quality : GrLivArea

79.5%

2

Overall Quality : GarageArea

68.2%

3

Overall Quality : GarageCars

73.5%

4

Overall Quality : 1stFlrSF

62.5%

5

Overall Quality : GarageCars

85.9%

虽然有些节点比其他节点更适合线性回归,但相比于将数据作为整体来处理,用模型拟合这些群集在精度上没有累积差异。然而,这只是概念验证的初始迭代,还没有优化关键参数,如n_nodes、(节点数量),PCA dimensions(PCA维度)和KNN connectivity parameters(KNN连通度)。将这些方法编码到一个python类中,它可以协助使用类似于网格搜索的优化过程来确定最佳的集群参数,从而最大化简单线性回归模型的准确性。请参考下列GitHub链接中的"MC_regressor_Code.ipynb":

https://github.com/dgoldman916/housing-ml。

未来工作

此时,“概念验证”的关键缺失是对新数据进行训练和分类的能力。在引入测试集时,要先基于训练得到的参数将新数据被分为有标记的组。这就需要一个有监督的聚类方法,比如决策树或支持向量机(SVM)。在添加此类函数之后,可以将其应用到组的其他工作流程中。我们可以通过预期的最终迭代在拟合穿过节点的更复杂的模型,并将这些模型的结果集中在一起。

原文标题:

Machine Learning: Unsupervised dimension reduction and clustering to process data for pooled regression models

原文链接:

https://nycdatascience.com/blog/student-works/machine-learning-unsupervised-dimension-reduction-and-clustering-to-process-data-for-pooled-regression-models/

译者简介

王雨桐,统计学在读,数据科学硕士预备,跑步不停,弹琴不止。梦想把数据可视化当作艺术,目前日常是摸着下巴看机器学习。

翻译组招募信息

工作内容:需要一颗细致的心,将选取好的外文文章翻译成流畅的中文。如果你是数据科学/统计学/计算机类的留学生,或在海外从事相关工作,或对自己外语水平有信心的朋友欢迎加入翻译小组。

你能得到:定期的翻译培训提高志愿者的翻译水平,提高对于数据科学前沿的认知,海外的朋友可以和国内技术应用发展保持联系,THU数据派产学研的背景为志愿者带来好的发展机遇。

其他福利:来自于名企的数据科学工作者,北大清华以及海外等名校学生他们都将成为你在翻译小组的伙伴。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-04-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据派THU 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
选择困难症?一文通解如何选择最合适的机器学习算法
大数据文摘作品,转载要求见文末 编译 | 姜范波,寒小阳,钱天培 如果你是一个初学/中等程度的数据科学家/分析师,并且想要将机器学习的算法运用到解决你关心的问题的上,那么这篇文章正是为你写的! 初学者面对各种机器学习算法,一个典型的问题是:我应该使用哪种算法?问题的答案取决于许多因素,包括: 数据的大小,质量和性质。 可接受的计算时间。 任务的紧迫性。 你想用数据做什么。 即使是经验丰富的数据科学家也无法在尝试不同的算法之前,就断定哪种算法会是最好的。在此我们并非倡导一蹴而就的方法,但是我们希望根据一些明确
大数据文摘
2018/05/25
6300
R语言k-means聚类、层次聚类、主成分(PCA)降维及可视化分析鸢尾花iris数据集|附代码数据
最近我们被客户要求撰写关于鸢尾花iris数据集的研究报告,包括一些图形和统计输出。
拓端
2023/02/24
1.7K0
机器学习-线性回归预测房价模型demo
从给定的房屋基本信息以及房屋销售信息等,建立一个回归模型预测房屋的销售价格。 数据下载请点击:下载,密码:mfqy。
mantch
2019/07/30
1.9K0
机器学习-线性回归预测房价模型demo
影响房价指标画像——数值指标
中国的房价从2005年到现在发生了天翻地覆的变化,如果能提前预测出这种趋势,并做出正确的选择,会更有利于我们财富的积累。
阿黎逸阳
2023/08/21
4490
影响房价指标画像——数值指标
盘点实际项目应用中的最佳机器学习模型
关键时刻,第一时间送达! 作者简介:chen_h,AI 算法工程师,擅长利用 TensorFlow 处理 NLP 问题。曾任职蘑菇街(美丽联合集团)和 AI100(CSDN)担任算法工程师。主要负责项目:语料文本分类,聊天机器人设计与开发,组织举办大数据竞赛。 本文来自作者在 GitChat 上分享「在实际项目中,如何选择合适的机器学习模型」。 本文我们主要面向初学者或中级数据分析师,他们对识别和应用机器学习算法都非常感兴趣,但是初学者在面对各种机器学习算法时,都会遇到一个问题是 “在实际项目中,我到底
企鹅号小编
2018/02/08
8370
盘点实际项目应用中的最佳机器学习模型
快速选择合适的机器学习算法
本文主要适用于初学者到中级数据科学家或分析师,他们有兴趣识别和应用机器学习算法来解决他们感兴趣的问题。
小莹莹
2018/07/24
6570
快速选择合适的机器学习算法
R语言软件对房屋价格预测:回归、LASSO、决策树、随机森林、GBM、神经网络和SVM可视化|数据分享
在房地产市场中,准确地预测房屋价格是至关重要的。过去几十年来,随着数据科学和机器学习的快速发展,各种预测模型被广泛应用于房屋价格预测中。而R语言作为一种强大的数据分析和统计建模工具,被越来越多的研究者和从业者选择用于房屋价格预测(点击文末“阅读原文”获取完整代码数据)。
拓端
2024/12/31
1460
R语言软件对房屋价格预测:回归、LASSO、决策树、随机森林、GBM、神经网络和SVM可视化|数据分享
初学者如何选择合适的机器学习算法(附算法速查表)
来源:机器之心 参与:黄小天、蒋思源、吴攀 校对:谭佳瑶 本文长度为4000字,建议阅读6分钟 本文针对算法的选择为你提供一些参考意见。 本文主要的目标读者是机器学习爱好者或数据科学的初学者,以及对学习和应用机器学习算法解决实际问题抱有浓厚兴趣的读者。面对大量的机器学习算法,初学者通常会问自己一个典型的问题:「我该使用哪一种算法?」有很多因素会影响这一问题的答案,比如: 数据的大小、质量及性质 可用计算时间 任务的急迫性 数据的使用用途 在没有测试过不同算法之前,即使是经验丰富的数据科学家和机器学习算法
数据派THU
2018/01/29
1.2K0
初学者如何选择合适的机器学习算法(附算法速查表)
这几种机器学习算法,你都应该知道!
假设有一些跟数据相关的难题需要你去解决。之前你已经听过机器学习算法的厉害之处了,因此你自己也想借此机会尝试一番——但是你在这个领域并没有经验或知识。于是你开始用谷歌搜索一些术语,比如“机器学习模型”和“机器学习方法”,但一段时间后,你发现自己在不同算法之间已经完全迷失了,所以便开始放弃了。 坚持才能胜利! 幸运的是,我将在本文介绍三个主要的机器学习算法,了解了这些内容后,我相信针对于大多数的数据科学难题,你都可以满怀自信去解决。 在下面的文章中,我们将讨论决策树、聚类算法和回归,指出它们之间的
机器人网
2018/04/25
4880
机器学习模型,全面总结!
附注:除了以上两大类模型,还有半监督学习和强化学习等其他类型的机器学习模型。半监督学习是指在有部分标签数据的情况下,结合监督学习和无监督学习的方法进行模型训练。强化学习是指通过让计算机自动与环境交互,学习出如何最大化奖励的策略。
算法进阶
2023/11/08
4000
机器学习模型,全面总结!
SQL SERVER ANALYSIS SERVICES决策树、聚类、关联规则挖掘分析电商购物网站的用户行为数据|附代码数据
最近我们被客户要求撰写关于电商购物网站的用户行为的研究报告,包括一些图形和统计输出。
拓端
2023/07/21
3170
独家 | 经验&教训分享:我的第一个机器学习项目
在这片博客中,我将介绍队友(Aron,Ashish,Gabriel)和我如何完成我们的第一个机器学习项目。写这篇博客的目的是为了记录——记录下我作为一名有抱负的数据科学家的旅程。同时,这篇博客也是为了写下逐步完善预测模型背后的思维和推理过程。由于我的目的是建立一个可以快速使用的通用工作流程,所以我将尽可能的简化推理过程。我的最终目标是当某一天再次回顾这个数据集时,可以应用更好的预测模型,看到自己原本可以做出哪些改进,并且能看到自己作为一个数据科学家的成长。
数据派THU
2020/02/12
5920
独家 | 经验&教训分享:我的第一个机器学习项目
AI行业实践精选: Kaggle竞赛 —— 2017年房价预测
【AI00导读】本文的两位作者分别是杜克大学电气工程博士后和莱斯大学电气与计算机工程系博士生,他们正在参加在纽约数据科学院举办的在线数据科学训练营计划。这篇文章是他们为其参与的“机器学习”课程而编写的
AI科技大本营
2018/04/26
2.2K0
AI行业实践精选: Kaggle竞赛 —— 2017年房价预测
5 大常用机器学习模型类型总结
本文介绍了 5 大常用机器学习模型类型:集合学习算法,解释型算法,聚类算法,降维算法,相似性算法,并简要介绍了每种类型中最广泛使用的算法模型。我们希望本文可以做到以下三点: 1、应用性。 涉及到应用问题时,知识的普适性显然非常重要。所以我们希望通过给出模型的一般类别,让你更好地了解这些模型应当如何应用。 2、相关性。 本文并不包括所有的机器学习模型,比如Naïve Bayes(朴素贝叶斯)和SVM这种传统算法,在本文中将会被更好的算法所取代。 3、可消化性。对于数学基础较薄弱的读者而言,过多地解释算法会让
张俊红
2022/03/29
2.9K0
机器学习算法备忘单!
机器学习(ML)是人工智能(AI)和计算机科学的一个子领域,主要是利用数据和算法来模仿人的学习方式,逐步提高其准确性。使用这个树状图作为指南,以确定使用哪种ML算法来解决你的AI问题。
Datawhale
2022/10/31
4050
机器学习算法备忘单!
Python和Plotly实用统计与可视化
上周的一天,在谷歌上搜索“ Python的统计数据 ”,结果有些没有用。大多数文献,教程和文章都侧重于使用R进行统计,因为R是一种专门用于统计的语言,并且具有比Python更多的统计分析功能。
代码医生工作室
2019/06/21
2.2K0
Python和Plotly实用统计与可视化
【视频】R语言支持向量分类器SVM原理及房价数据预测应用及回归、LASSO、决策树、随机森林、GBM、神经网络对比可视化
在大数据时代,精准的数据分类与预测对各领域的发展至关重要。超平面作为高维空间中的关键概念,可将线性空间一分为二,为数据分类奠定了理论基石。基于此发展而来的最大边缘分类器,通过最大化边际距离,精准划分数据类别,而支持向量分类器则进一步优化,提升了分类的稳健性(点击文末“阅读原文”获取完整代码数据)。
拓端
2025/01/16
850
【视频】R语言支持向量分类器SVM原理及房价数据预测应用及回归、LASSO、决策树、随机森林、GBM、神经网络对比可视化
开源 NLP 中文面试学习资料:面向算法面试,理论代码俱全!
没有多余的废话,尽是知识要点。拿着这样一份重点笔记有针对性地学习、复习,岂不爽哉?
GitHubDaily
2019/09/29
4840
开源 NLP 中文面试学习资料:面向算法面试,理论代码俱全!
手把手教你在多种无监督聚类算法实现Python(附代码)
本文简要介绍了多种无监督学习算法的 Python 实现,包括 K 均值聚类、层次聚类、t-SNE 聚类、DBSCAN 聚类。
数据派THU
2018/07/30
7200
手把手教你在多种无监督聚类算法实现Python(附代码)
NLP中文面试学习资料:面向算法面试,理论代码俱全,登上GitHub趋势榜
这里有一份NLP面试大全,全中文教学,囊括机器学习及NLP算法面试中常考的知识点,还有算法实战代码,实乃算法工程师求职路上,必备良品。
代码医生工作室
2019/10/08
5840
NLP中文面试学习资料:面向算法面试,理论代码俱全,登上GitHub趋势榜
推荐阅读
选择困难症?一文通解如何选择最合适的机器学习算法
6300
R语言k-means聚类、层次聚类、主成分(PCA)降维及可视化分析鸢尾花iris数据集|附代码数据
1.7K0
机器学习-线性回归预测房价模型demo
1.9K0
影响房价指标画像——数值指标
4490
盘点实际项目应用中的最佳机器学习模型
8370
快速选择合适的机器学习算法
6570
R语言软件对房屋价格预测:回归、LASSO、决策树、随机森林、GBM、神经网络和SVM可视化|数据分享
1460
初学者如何选择合适的机器学习算法(附算法速查表)
1.2K0
这几种机器学习算法,你都应该知道!
4880
机器学习模型,全面总结!
4000
SQL SERVER ANALYSIS SERVICES决策树、聚类、关联规则挖掘分析电商购物网站的用户行为数据|附代码数据
3170
独家 | 经验&教训分享:我的第一个机器学习项目
5920
AI行业实践精选: Kaggle竞赛 —— 2017年房价预测
2.2K0
5 大常用机器学习模型类型总结
2.9K0
机器学习算法备忘单!
4050
Python和Plotly实用统计与可视化
2.2K0
【视频】R语言支持向量分类器SVM原理及房价数据预测应用及回归、LASSO、决策树、随机森林、GBM、神经网络对比可视化
850
开源 NLP 中文面试学习资料:面向算法面试,理论代码俱全!
4840
手把手教你在多种无监督聚类算法实现Python(附代码)
7200
NLP中文面试学习资料:面向算法面试,理论代码俱全,登上GitHub趋势榜
5840
相关推荐
选择困难症?一文通解如何选择最合适的机器学习算法
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文