《机器学习实战》学习笔记-[8]-回归-普通最小二乘OLS
来源:互联网 发布:网络视频协议 编辑:程序博客网 时间:2024/06/08 13:22
- 分类的目标变量为标称型数据
- 回归可对连续性数据做出预测
- 回归的目的就是求出预测数值的目标值,最直接的办法就是写出一个目标值的计算公式:Y=aX+b(线性)或者非线性,回归即为求取系数的过程。
OLS理论基础
对于线性
Y = (X^T)w
根据平方误差最小求系数(最小二乘)
OLS评价标准
判断模型的好坏可以用相关系数
'''机器学习实战-回归'''from numpy import *def loadDataSet(fileName): numFeat = len(open(fileName).readline().split('\t')) - 1 dataMat = []; labelMat = [] fr = open(fileName) for line in fr.readlines(): lineArr = [] curLine = line.strip().split('\t') for i in range(numFeat): lineArr.append(float(curLine[i])) # 获取数据部分 dataMat.append(lineArr) labelMat.append(float(curLine[-1])) # 获取输出部分 return dataMat, labelMat'''OLS'''def standRegres(xArr, yArr): xMat = mat(xArr) yMat = mat(yArr).T xTx = xMat.T * xMat if linalg.det(xTx) == 0.0: # 行列式的值是否为0,判断是否可逆 print("矩阵不可逆") return ws = xTx.I * (xMat.T*yMat) return ws #返回归回系数
测试
import osfrom numpy import *from ML_Learn.com.ML.Regression.BasicRegressionOLS import regressionimport matplotlib.pyplot as plt#导入训练数据集xArr, yArr = regression.loadDataSet(os.getcwd() + '/resource/ex0.txt')ws = regression.standRegres(xArr,yArr)print("xArr[0:2]: \n", xArr[0:2])print("yArr[0:2]: \n", yArr[0:2])print("ws: \n" ,ws)print("xArr[0:2]*ws.T = \n",mat(xArr[0:2])*ws)xMat = mat(xArr)yMat = mat(yArr)yHat = xMat*ws#判断模型的好坏-相关系数cor = corrcoef(yHat.T,yMat)print("相关系数= \n", cor)## xArr[0:2]:# [[1.0, 0.067732], [1.0, 0.42781]]# yArr[0:2]:# [3.176513, 3.816464]# ws:# [[ 3.00774324]# [ 1.69532264]]# xArr[0:2]*ws.T =# [[ 3.12257084]# [ 3.73301922]]# 相关系数=# [[ 1. 0.98647356]# [ 0.98647356 1. ]]fig = plt.figure()ax = fig.add_subplot(111)ax.scatter(xMat[:,1].flatten().A[0],yMat.T[:,0].flatten().A[0])xCopy = xMat.copy()xCopy.sort(0)yHat = xCopy*wsax.plot(xCopy[:,1],yHat)plt.show()
源代码
github
阅读全文
0 0
- 《机器学习实战》学习笔记-[8]-回归-普通最小二乘OLS
- 《机器学习实战》学习笔记-[9]-回归-加权最小二乘LWLR
- 机器学习笔记_回归_2: 最小二乘问题
- 【机器学习】一元线性回归模型:最小二乘估计
- 机器学习--岭回归与偏最小二乘
- 机器学习笔记_回归_4: 最小二乘的改进(1)
- 机器学习笔记_回归_4: 最小二乘问题(2)
- 机器学习笔记_回归_4: 最小二乘问题(3)
- 机器学习概念总结笔记(一)——机器学习算法分类、最小二乘回归、岭回归、LASSO回归
- 【机器学习详解】线性回归、梯度下降、最小二乘的几何和概率解释
- Andrew NG 机器学习听课笔记(2)——过学习与欠学习,最小二乘的概率意义、logistic回归
- Andrew NG 机器学习听课笔记(2)——过学习与欠学习,最小二乘的概率意义、logistic回归
- 最小二乘(OLS)回归法及其在R中的…
- 斯坦福机器学习: 网易公开课系列笔记(二)——线性回归、梯度下降算法和最小二乘公式
- 《机器学习实战》学习笔记---Logister回归
- 有监督回归:最小二乘学习法
- 机器学习实战(二)线性回归模型
- 机器学习 最小二乘学习法 matlab
- POJ 3481 Double Queue(STL之双向优先队列)
- HashTable与HashMap的区别
- Day01 varnish
- CSS之解决高度塌陷问题方法终极版
- android 弹出消息框
- 《机器学习实战》学习笔记-[8]-回归-普通最小二乘OLS
- MYSQL学习笔记(九)分组数据
- JSP/Servlet
- tomcat安装-->使用homebrew安装tomcat并且运行tomcat服务器
- #bzoj2239#猜谜语(DP)
- UCML自定义查询(导致点击列头排序弹出异常)
- Python的深拷贝与浅拷贝
- ASP.net—总结
- PackageManagerService分析(二)