zoukankan      html  css  js  c++  java
  • 调用robustfit函数作稳健回归

    调用robustfit函数作稳健回归

    regress函数和regstats函数利用普通最小二乘法估计模型中的参数,参数的估计值受异常值的影响比较大。robustfit函数采用加权最小二乘法估计模型中的参数,受异常值的影响就比较小。robustfit函数用来作稳健的多重线性或广义线性回归分析,下面介绍robustfit函数的用法。
    1.4.1.robustfit函数的用法
    robustfit函数有以下几种调用方式:
    b = robustfit(X,y)
    b = robustfit(X,y,wfun,tune)
    b = robustfit(X,y,wfun,tune,const)
    [b,stats] = robustfit(…)
    (1)b = robustfit(X,y)
    返回多重线性回归方程中系数向量β的估计值b,这里的b为一个1p×的向量。输入参数X为自变量观测值矩阵(或设计矩阵),它是的矩阵。与regress函数不同的是,默认情况下,robustfit函数自动在X第1列元素的左边加入一列1,不需要用户自己添加。输入参数y为因变量的观测值向量,是的列向量。robustfit函数把y或X中不确定数据NaN作为缺失数据而忽略它们。np×1n×
    (2)b = robustfit(X,y,wfun,tune)
    用参数wfun指定加权函数,用参数tune 指定调节常数。wfun为字符串,其可能的取值如表1-3所示。
    表1-3 robustfit函数支持的加权函数
    加权函数(wfun)
    函数表达式
    默认调节常数值
    'andrews' sin(||)rwIrrπ=⋅<
    1.339
    'bisquare'(默认值)
    22(1)(||1)wrIr=−⋅<
    4.685
    'cauchy' 21(1)wr=+
    2.385
    'fair' 1(1||)wr=+
    1.400
    'huber' 1max(1, ||)wr=
    1.345
    'logistic' tanh()wr=
    1.205
    'ols'
    普通最小二乘,无加权函数

    'talwar'
    (||1)wIr=<
    2.795
    'welsch'
    2rwe−=
    2.985
    若调用时没有指定调节常数tune,则用表1-3中列出的默认调节常数值进行计算。表1-3中加权函数中的r通过下式计算residr =tunes1-h××
    其中resid为上一步迭代的残差向量,tune为调节常数,h是由最小二乘拟合得到的中心化杠杆值向量,s为误差项的标准差的估计。s的计算公式为:s = MAD/0.6745,其中MAD为残差绝对值的中位数,在正态分布下,这个估计是无偏的。若X中有p列,计算MAD时,将残差绝对值向量的前p个最小值舍去。
    用户可以定义自己的权重函数,函数的输入必须是残差向量,输出是权重向量。在调用robustfit函数时,把自定义权重函数的句柄(形如@myfun)作为wfun参数传递给robustfit函数,此时必须指定tune参数。
    (3)b = robustfit(X,y,wfun,tune,const)
    用参数const来控制模型中是否包含常数项。若const取值为 'on' 或1,则模型中包含常数项,此时自动在X第1列的左边加入一列1,若const取值为 'off' 或0,则模型中不包含常数项,此时不改变X的值。
    (4)[b,stats] = robustfit(…)
    返回一个结构体变量stats,它的字段包含了用于模型诊断的统计量。stats有以下字段:
    • stats.ols_s — 普通最小二乘法得出的σ的估计(RMSE);
    • stats.robust_s — σ的稳健估计;
    • stats.mad_s — 用残差绝对值的中位数计算σ的估计;
    • stats.s — σ的最终估计,是ols_s 和robust_s的加权平均与robust_s中的最大值;
    • stats.se — 系数估计的标准误差;
    • stats.t — b与stats.se的比值;
    • stats.p — t检验的p值;
    • stats.covb — 系数向量的协方差矩阵的估计;
    • stats.coeffcorr — 系数向量的相关系数矩阵的估计;
    • stats.w — 稳健拟合的权重向量;
    • stats.h — 最小二乘拟合的中心化杠杆值向量;
    •  stats.R — 矩阵X的QR分解中的R因子

  • 相关阅读:
    线程安全 ---Struts1与Struts2
    sql servset 有表,没表备份数据。
    group by 使用及体会 和having用法
    js 去掉输入的空格
    struts + json + ajax +级联 例子
    js 级联 思路
    return break continue 的用法和作用
    eclise 怎么集成 spket 。及spket 与 sdk.jsb3管理起来
    logback基本用法
    log4j:特定类的日志输出到指定的日志文件中
  • 原文地址:https://www.cnblogs.com/retrieval/p/3174692.html
Copyright © 2011-2022 走看看