华盛顿大学机器学习课程(个案研究法)
来源:互联网 发布:jsp引入java文件 编辑:程序博客网 时间:2024/05/16 08:27
本课程主要是从应用入手,来解释一些机器学习中的模型。
案例一:regression, linear regression(回归、线性回归)
这个是一个经典的预测房价的案例。假设我们有一组房子的数据,包括房子面积,房间数目,卫生间个数,以及出售价格等属性,那么如何通过这些已知数据,来预测一个房子的出售价格呢?
利用的方法就是统计学中常用的数据分析方法——线性回归。利用该方法找到最合适的模型,来对新的数据进行预测。一般情况下,会把已知的真实数据划分为两部分,一个叫训练集(training set),一个叫测试集(test set)。训练集用于训练模型,测试集用于评价模型的准确性,并根据测试结果,按需调整模型的参数,使模型更加准确。
模型代码:
首先也要导入graphlab库
import graphlab
这边因为我没有在他给的笔记文件路径下使用,而是自己新建了一个文件,但是我想用他的数据,不知道怎么描述数据路径,这里用了os库查了一下当前路径
import osos.getcwd()
然后就返回了当前路径:
修改工作目录:
os.chdir('')#括号里的路径貌似要写\\的
得到当前路径,然后根据其格式改到数据所在路径,然后就能载入数据了。
sales = graphlab.SFrame('/home/jovyan/work/Week 2/home_data.gl/')
得到数据后,我们想在notebook下把它展示出来,不必打开新的浏览器,句式如下:
graphlab.canvas.set_target("ipynb")sales.show(view="Scatter Plot",x="sqft_living",y="price")#散点图,x轴为面积,y轴为价格
下面开始用该数据实现一个简单的回归模型。
之前说明过,数据在做任何处理之前,都要先把它分为训练集和测试集。
分离数据:
train_data,test_data = sales.random_split(.8,seed=0)#这边要设置随机分裂的种子
构建一个线性模型
sqft_model = graphlab.linear_regression.create(train_data,target='price',features=['sqft_living'])#利用训练数据集,目标输出是price,输入特征为sqft_living。这边输入特征不选的话默认所有。
模型训练完成之后,用测试数据集进行测试
print(sqft_model.evaluate(test_data))
这里的RMSE是均方根误差.
下面看一下我们的预测模型是什么样子的
导入matplotlib包
import matplotlib.pyplot as plt%matplotlib inline
查看模型中的相关系数:
sqft_model.get('coefficients')
观察数据里的其他特征
my_features = ['bedrooms','bathrooms','sqft_living','sqft_lot','floors','zipcode']sales[my_features].show()sales.show(view='BoxWhisker Plot',x='zipcode',y='price')
阅读全文
0 0
- 华盛顿大学机器学习课程(个案研究法)
- 华盛顿大学机器学习基础:案例研究week2
- 华盛顿大学机器学习3:聚类和相似度
- 华盛顿大学--初探深度学习
- 华盛顿大学2:分类学习笔记
- 华盛顿大学--推荐系统(协同过滤)
- 免费学习大学课程
- 华盛顿大学计算机专业课程
- (斯坦福机器学习课程笔记)牛顿法算法学习
- 华盛顿大学-Quing Zhu, PhD
- 华盛顿大学-Lihong V.Wang
- 大学开放课程学习表
- 大学应该学习哪些课程
- 机器学习笔记1(吴恩达机器学习课程)
- 机器学习课程笔记整理(1)
- 机器学习课程笔记整理(2)
- 机器学习基石(林轩田)课程笔记
- 《机器学习基石》课程笔记(1)
- Bootstrap插件(六)——警告框(alert.js)
- 操作系统启动过程
- (子域名扫描器)Knock Subdomain Scan v.4.1.0
- 2017/9/18小米机试题(桌子坐人问题)
- C++写链表一些基础的操作
- 华盛顿大学机器学习课程(个案研究法)
- Chapter 9. Sequential Containers
- Swift 3D(三维动画制作软件) v6 免费版
- SpringWeb MVC处理请求的流程:(处理器映射器、处理器适配器、视图解析器称为springmvc的三大组件)
- 资源管理类
- 【http】相关知识
- webLogic内存溢出解决方案
- 大规模SQL注入漏洞扫描器:SQLiv
- 算法提高 ADV-211 2-2整数求和