会员中心 |  会员注册  |  兼职信息发布    浏览手机版!    精选9.9元!    人工翻译    英语IT服务 贫困儿童资助 | 留言板 | 设为首页 | 加入收藏  繁體中文
当前位置:首页 > 机翻技术 > 识别技术 > 正文

局部加权线性回归

发布时间: 2023-03-16 09:28:40   作者:etogether.net   来源: 网络   浏览次数:
摘要: 其中的一个方法是局部加权线性回归,在该算法中,我们给待预测点附近的每个点赋予一定的权重,然后在这个子集上基于最小均方差...


线性回归的一个问题是有可能出现欠拟合现象,因为它求的是具有最小均方误差的无偏估计。显而易见,如果模型欠拟合将不能取得最好的预测效果。所以有些方法允许在估计中引入一些偏差,从而降低预测的均方误差。


其中的一个方法是局部加权线性回归(Locally Weighted Linear Regression,LWLR)。在该算法中,我们给待预测点附近的每个点赋予一定的权重;然后在这个子集上基于最小均方差来进行普通的回归。与kNN一样,这种算法每次预测均需要事先选取出对应的数据子集。

该算法解出回归系数w的形式如下:


式1.png

其中w是一个矩阵,用来给每个数据点赋予权重。


LWLR使用“核”(与支持向量机中的核类似)来对附近的点赋予更高的权重。核的类型可以自由选择,最常用的核就是高斯核,高斯核对应的权重如下:


式2.png

这样就构建了一个只含对角元素的权重矩阵w,并且点x与x(i)越近,w(i,i)将会越大。上述公式包含一个需要用户指定的参数k,它决定了对附近的点赋予多大的权重,这也是使用LWLR时唯一需要考虑的参数,在图1中可以看到参数k与权重的关系。


图1.png


图1 每个点的权重图(假定我们正预测的点是x=0.5),最上面的图是原始数据集,第二个图显示了当k=0.5时,大部分的数据都用于训练回归模型;而最下面的图显示当k=0.01时,仅有很少的局部点被用于训练回归模型


下面看看模型的效果,打开文本编辑器,将程序清单1-1的代码添加到文件regression.py中。


程序清单1-1局部加权线性回归函数


程序清单1-1.png


程序清单1-1中代码的作用是,给定x空间中的任意一点,计算出对应的预测值yHat。函数1wlr()的开头与程序清单1-1类似,读入数据并创建所需矩阵,之后创建对角权重矩阵weights。权重矩阵是一个方阵,阶数等于样本点个数。也就是说,该矩阵为每个样本点初始化了一个权重。接着,算法将遍历数据集,计算每个样本点对应的权重值:随着样本点与待预测点距离的递增,权重将以指数级衰减。输入参数k控制衰减的速度。与之前的函数stand-Regress()一样,在权重矩阵计算完毕后,就可以得到对回归系数ws的一个估计。



微信公众号

[1] [2] [下一页] 【欢迎大家踊跃评论】
我来说两句
评分: 1分 2分 3分 4分 5分
评论内容:
验证码:
【网友评论仅供其表达个人看法,并不表明本站同意其观点或证实其描述。】
评论列表
已有 0 条评论(查看更多评论)