matlab做岭回归分析,基于MATLAB的岭回归分析程序设计及其应用

第 20 卷 第 6 期 辽宁工程技术大学学报(自然科学版) 2001 年 12 月 Vol.20, No.6 Journal of Liaoning Technical University(Natural Science) Dec., 2001 _______________________________ 收稿日期:2001-01-09 作者简介:曾繁会(1970-),女,辽宁 阜新人,讲师,理学学士.本文编校:唐巧凤 基于 MATLAB 的岭回归分析程序设计及其应用 曾繁会, 吕渭济 (辽宁工程技术大学 工商管理学院,阜新 123000) 摘 要:岭回归分析是多元线性回归分析中的一种方法,在实际应用中经常遇到。本文通过设计MATLAB 中的Ridge1 函数程序,介绍 如何利用 MATLAB 进行岭回归分析。 关键词:岭回归;MATLAB;岭回归分析;岭回归系数;程序设计 中图号:O 212.4 文献标识码:A 0 引 言 岭回归亦称“脊回归估计”、“岭估计”,是一种改进最小二乘估计的方法,适用于自变量x1,x2,…,xp间相关性强时,或某些变量的变化范围太小时,也即线性回归模型中正规方程的系数矩阵 X ′X 接近奇异时的情形。在这种情况下,用传统的基于最小二乘法估计参数的多元线性回归、逐步回归等方法往往不能得到令人满意的结果,甚至有的结果与专业知识不一致,通常可以采用岭回归分析方法。 MATLAB(5.3 版本)的数值计算功能强大,又便于进行输出结果可视化的程序设计,它的统计工具箱(Statistic Toolbox)中的功能函数有 200 多个。MATLAB 的操作简便、可扩充性等诸多优点决定了它将在 SAS 等概率统计软件领域中占据及其重要的地位。笔者发现其中用于岭回归分析的函数程序 Ridge.m中有几处欠佳,如其中的标准化处理、回归系数的求解。本文意在对其 Ridge.m进行改进,并利用改进后的程序 Ridge1.m 作基于 MATLAB的岭回归分析的应用。 1 岭回归程序(Ridge1.m)的设计 设有 p 个自变量 x1,x2,…,xp,一个因变量 y,进行 n 次统计得到数据表 Xnxp,Ynx1。对于岭参数 k(k ∈[0,1]),估计岭回归系数的步骤如下: (1) 将原始数据 x1,x2,…,xp,y 作标准化变换,变 换后均值为 0,标准差为 1。X,Y 矩阵分别变为 Z,Y。 (2 ) 对于 k∈[0,1],求 )1( −nk 。 (3)将标准化变换后的矩阵 Znxp,Ynx1 添加伪样本数据变为 Zplus(n+p)xp,Yplus(n+p)x1. (4)利用 MATLAB中 Regress 函数拟合过原点的多元线性回归方程,所估计出的回归系数即为岭回归系数βi(k)(i=1,2,…,p)。 (5)在应用程序中通过 MATLAB 的画图语句Plot 绘出βi(k) 随 k 变化的趋势,决定选择合适的k 对应的βi(k)作为最后的岭回归系数。 岭回归函数 Ridge.m程序清单如下: function [b,bint,r,rint,stats] = ridge1(Y,X,k) [n,p] = size(X); mx = mean (X); my = mean (Y); stdx = std(X);stdy=std(Y); idx = find(abs(stdx) < sqrt(eps)); MX = mx(ones(n,1),:);STDX = stdx(ones(n,1),:); Z = (X - MX) ./

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值