岭回归
来源:互联网 发布:潜水是什么意思网络语 编辑:程序博客网 时间:2024/03/29 03:52
对于样本数据的特征比数据样本点还多的数据我们就没有办法使用标准线性回归和局部加权线性回归来计算,因为没有办法对矩阵求逆。所以这一小节我们引入岭回归来处理这种数据,当然岭回归也可以处理普通的数据。回归系数的计算公式:
在这个公式中我们加入了一项:进而就可以对矩阵求逆,是用户指定的值,是一个单位矩阵,通过引入该项可以减少不重要的参数。了解了公式我们就来分析一下代码:
def ridgeRegres(xMat,yMat,lam=0.2): xTx = xMat.T*xMat denom = xTx + eye(shape(xMat)[1])*lam if linalg.det(denom) == 0.0: print "This matrix is singular, cannot do inverse" return ws = denom.I * (xMat.T*yMat) return ws def ridgeTest(xArr,yArr): xMat = mat(xArr); yMat=mat(yArr).T yMean = mean(yMat,0) yMat = yMat - yMean #regularize X's xMeans = mean(xMat,0) xVar = var(xMat,0) xMat = (xMat - xMeans)/xVar numTestPts = 30 wMat = zeros((numTestPts,shape(xMat)[1])) for i in range(numTestPts): ws = ridgeRegres(xMat,yMat,exp(i-10)) wMat[i,:]=ws.T return wMat
第一个函数用于计算回归系数,就是上面公式的实现,输入参数分别为训练数据集和标签数据集。以及lam值,如果用户不指定就会默认为0.2.接下来分析第二个函数,首先为了能够岭回归和缩减技术首先要对特征做标准化处理。使每维的特征具有同等重要性。接下来要进行30次调用上面的函数求解回归系数,当然我们也可以自己定义调用次数。最后返回所有的回归系数,我们就可以在这些回归系数中挑选最好的。
1 0
- 回归,岭回归。LASSO回归
- 岭回归 & lasso 回归
- lasso 回归 & 岭回归
- 岭回归
- 岭回归
- 岭回归
- [回归分析][13]--岭回归
- 回归算法之岭回归
- 线性回归和岭回归
- R---岭回归 & lasso回归
- sklearn中线性回归、岭回归、多xiang式回归
- 线性回归,LWLR,岭回归,逐步线性回归
- 机器学习总结(一):线性回归、岭回归、Lasso回归
- 各种回归全解:传统回归、逻辑回归、加权回归/核回归、岭回归、广义线性模型/指数族
- 岭回归and逐步线性回归杂记
- Python回归 岭回归(Ridge Regression)
- 最小二乘 岭回归 lasso回归
- ridge regression 脊回归 / 岭回归
- 关于链表的各种细节问题
- POJ 2142 The Balance 扩展欧几里德
- 理解LinkedHashMap
- python之numpy的用法
- Android Studio常用快捷键
- 岭回归
- oracle实现mysql的if exist drop table
- (一)创建一个新的安卓工程
- 【JAVA】38、构造方法的定义
- 导入Oracle的dmp文件
- Leetcode:223. Rectangle Area(JAVA)
- RESTful之Content negotiation
- 桶排序
- Youth by Samuel Ullman