zoukankan      html  css  js  c++  java
  • 机器学习笔记—局部权重线性回归

    看下面三幅图,x 轴是房间面积,y 轴是房价。

    左图是 y = θ0 + θ1x 拟合数据集的结果。可以看到数据并不贴靠在直线上,所以拟合并不好。

    中图是 y = θ0 + θ1x + θ2x2 拟合数据集的结果,拟合得还不错。

    右图是 y = θ0 + θ1x + θ2x2  + θ3x3 + θ4x4 + θ5x5 拟合数据集的结果,虽然曲线跟数据拟合得极好,但我们这是一个好的预测。

    左图被称为欠拟合,数据并没有被模型捕获。右图被称为过拟合。

    由以上例子可见,特征的选择对于保证学习算法好的性能是很重要的。当我们讲到模型选择时,会看到自动选择特征集合的算法。

    这次我们先讲局部权重线性回归算法,使得特征的选择没那么重要,怎么做到的呢?请往下看。

    在原始的线性回归算法中,要在 x 点做一个预测,我们会执行:

    1、变动 θ 以最小化 ∑i(y(i)Tx(i))2

    2、输出 θTX

    在局部权重线性回归算法中,做法稍有不同:

    1、变动 θ 以最小化 ∑iw(i)(y(i)Tx(i))2

    2、输出 θTX

    多了个 w(i),是做什么用的呢?

    w(i) 是非负值的权重,直观上看,当 w(i) 很大时,那么在选择 θ 时,我们会尽量使 x(i) 点的值 (y(i)Tx(i))小,也就是更加重视 x(i) 点的预测准确度,当 w(i) 很小时,那么 x(i) 点的准确度我们就不那么在乎, (y(i)Tx(i))2 的误差大也无所谓,也可以说不在乎 x(i) 点。

    权重通常定义为:

    可以看到权重大小决定于我们要评估的 x 点的位置,当 x(i) 离 x 点很近,即 |x(i)-x| 很小接近于 0 时,那么 w(i) 就接近 1;当 x(i) 离 x 点很远,即 |x(i)-x| 很大时,那么 w(i) 就变得很小。所以在 θ 的选择上给予查询点 x 附近的训练集更高的权重。τ 是控制 x(i) 的权重随着离 x 距离变远而变小的速度。

    局部权重线性回归算法是我们介绍的第一个非参数算法。之前我们介绍的线性回归算法是参数学习算法,因为它有固定、有限个数的参数 θ,一旦我们找到合适的 θ,在预测新数据是,就不再需要训练数据集。而局部权重线性回归算法,做预测时,就需要用到整个训练集。术语 ”非参数“ 实际上就是为了表示假设 h,我们需要保持的负担量随训练集大小呈线性增长。

    参考资料:

    1、http://cs229.stanford.edu/notes/cs229-notes1.pdf

  • 相关阅读:
    .net core 发布iis 错误
    windows下grunt安装提示不成功
    个人随笔
    跟人备忘
    CSS中的高度和宽度
    编程语言的阴阳之争
    [数据模型] 数据表三种关联的概述
    MySQL server has gone away 问题的解决方法
    Java中PreparedStatement和Statement的用法区别
    Java 程序在执行时的内存划分区域
  • 原文地址:https://www.cnblogs.com/NaughtyBaby/p/5289552.html
Copyright © 2011-2022 走看看