机器学习从入门到创业手记-2.1.1 线性回归与房价还涨么

我还在回味着路思的话,这么干都不能在北京买房,不敢生孩子,这样的北漂有什么意思,还不如回家乡天津去,虽然机会不多,但生活成本里面我减少了租房的费用还可以每天有母亲做的可口饭菜,现在天天的 X老师红烧肉我已经吃不出味道了,而这个CBD区确实也没有更便宜更卫生的饭餐供应了。

 

       休息时间到了,杨导师回到了战情室,突然间的同理心让我对他有了些好感,可能我将来也要面临同样的难题吧,杨导师说:“我之前也没有辅导过没有基础的实习生,HR说你们的问题都是在于之前没有接触过机器学习,虽然在前面的培训学习中掌握了部分概念但只限于死记硬背,从培训总结里也能看出都是生搬硬套,所以我打算用更多的示例来让你们先对机器学习有个感官认识,你们平时都关心些什么数据?”

 

       我脱口而出:“房价”。

 

       这回倒是轮到了杨指导吃了一惊:“你刚毕业就关心房价?打算在北京买房了?”

 

       我说:“我喜欢北京,喜欢这个到处是机会的城市,我想留下来,但现在的房价实在太高了,我买不起,也不敢买,现在漫天新闻都是讨论房价起伏的,有说涨的,有说跌的,谁能预测出房价今后的走势啊。”      

 

       杨导师笑了笑:“你们最大的优势就是年轻,未来是可以无限想象的,不过既然你提到房价了,咱们就以房价的涨跌开始咱们的学习。”

 

       “首先你们认为什么决定房价?”,杨指导问到。

 

       “学区,地点,商业成熟度,地铁,公摊面积,升值前景。。。。”,我们七嘴八舌的说到。

 

       杨指导:“那么你们认为这些属性是不是和房价存在这样的线性关系,这些属性越好,房价越贵呢?”。

 

       我回答:“是的,存在这种线性关系,而且这么多属性每个影响房价的力量是不一样的,比如学区和地铁的权重就远远高于公摊面积这个属性,我们要把这些属性都统一按照权重来产生一个预测房价的公式。但这个权重如何知道呢?如果能计算出权重也就知道了预测公式了。”

 

       “不错,你说的可以用这种线性公式来表示”,杨导师说道,并在白板上写下了线性公式Y = wX + b,“这里Y就是我们的房价,而X是房屋的各种属性,w是房屋每种属性附带的权重,也就是安逸提到我们不知道的这个值,b是偏置值,当公式不能找到适合的X与W使公式成立时,我们加入b来使它成立,这里房价有多个属性,所以公式是Y = w1X1 + w2X2+。。。wnXn+b,高维你能理解这个公式么”。

 

       显然刚才的游戏环节将高维是个数学低能儿暴露出来了,高维说:“我明白是明白,但Y= wX+b能叫线性方程,这个公式本身能求得Y是一条直线,而这么多X明显画不出对应是一个直线的Y了”

 

       路思说:你说的多个X就不叫线性方程了,叫线性回归方程,如果X的个数只有一个就叫简单回归,多个X叫多元回归,这个回归英文是regression有回到从前的意思,翻译成回归很多人就不理解了,我们有称为Y的因变量,还有一些称为X的自变量,我们现在要回到过去找到他们的对应关系系数”。

 

       原来是这样,以前我也不知道回归的英文是原本有这样的意思,路思的这个翻译让我好理解多了。

 

       “休息一会,下面我会使用Weka分析软件结合波士顿房屋售价预测数据做出线性回归在房屋售价预测应用”,说完,杨导师头也不回的走出了战情室。

 

       在战情室里面待着确实有些憋屈,空气不流动让我有点走神想到将来也会成为一个蚁族,天天忙忙碌碌,回家还要挤在一个狭小的空间里,可能还没有战情室舒服,这不是生活艰难而是生存艰难,之前人民日报曾有文章写到失去奋斗,拥有再多的房产我们也将无家可归,这话没错,可如果再努力奋斗也买不起房,那我还是宁愿拥有更多的房产,宁愿无家可归失去奋斗吧。

      

       短暂游离后,回到现实我还是那个没有房子的北漂,只有努力了,不然真无家可归了。 

 

杨导师使用weka打开了数据集,我让英语好的路思把字段说明先列出来,图2-1-1则是路思写的字段说明。     

       https://images2015.cnblogs.com/blog/1131167/201705/1131167-20170515230147025-377436408.png

图2-1-1波士顿房价数据属性

 

       用weka查看数据也很方便的,图2-1-2显示的波士顿房价数据集的十分适合机器学习,所有数据都已经量化了,可以直接使用线性公式来推导数学模型。这里MEDV字段是我们要预测的房价也就是因变量Y,其它字段都是房屋属性也就是自变量X,然后去推导线性回归方程。

             

      

图2-1-2 数据集概要

 

      

       Weka里面关于线性回归一共有两个算法模型SimpleLinearRegression和LinearRegression,其中区别是SimpleLinearRegression会一个一个的使用属性进行预测,找到采用哪个属性得到的预测值与正确值方差最小,这样就构成了一个Y=wX+b的一元回归方程,而由于找到的这个X具有到Y最近的方差值从而被认为所有属性中能最准预测Y的属性,而LinearRegression则利用所有属性进行回归预测,得到是多元回归预测方程。

 

       图2-1-3 SimpleLinearRegression运行结果

      

       先执行了简单线性回归,得到方程式Y = -0.95 * LSTAT + 34.55,这里LSTAT是被选出影响房价最大的属性,这个属性的含义是该地区中低收入者的比例,从字面意义看很好理解这个字段为什么最影响房价了,收入高的住高房价区,收入低的住廉租房呗。

 

      

图2-1-4 LinearRegression运行结果

 

       图2-1-4是多元线性回归的公式,高维问我为什么LSTAT字段是负的呀,刚才看简单线性回归公式就想问这个问题,我说这个属性是穷人所占的比例,这个值越高房价应该越低,这属于是负相关性,如果是富人所占的比例,就是正相关了,你还可以看RM属性是个比较明显的正相关属性,其代表的意思是房间数,也就是房间数越多房价越高。    

      

“房价各个属性之前其实也是有关联的,比如低收入社区的房间数会比较少”,说着我将房间数RM字段作为X轴与作为Y轴的LSTAT做了一个散点分布图,可以看到低收入比例高的区域都在X轴接近原点的区域,也就是房间数很少,整体成了一个很明显线性关系。

 

图2-1-5 社区居民收入比例与房间数

 

       没用两个小时落后三人组就在杨导师的带领下就完成了房价线性回归预测的总结,气氛也轻松了些。

 

“明天就周日终于可以休息一天了,你们怎么安排的时间?”,我问。

 

“我得在宿舍复习考研的东西,今年一定要考上清华,成为我们县城第一人”,路思说。

 

“哎,也就你们这样的县城还注重这个”,我回答到,我其实并不关心路思干什么,主要是想知道高维有没有什么事情,我希望周末能请她去看场电影吃个饭什么的。

 

“哦,我和刘思聪约好了,他带我去北京的商场看看,来北京这么长时间一直都没时间出去逛逛,咱们这里就思聪是本地人,我就约他了”,高维说道。

 

“那个矮富帅啊,好吧,玩的愉快点,谁让我不是北京人呢,我周日也想去买点日常用品本来还想叫你们一起去呢。”,没人回复我,大家各自低头玩起了手机。

 

猜你喜欢

转载自blog.csdn.net/yoki2009/article/details/88417424
今日推荐