美文网首页
线性回归算法

线性回归算法

作者: shadowflow | 来源:发表于2019-01-26 14:57 被阅读0次

    h_\theta(x) = θ₀ + θ₁x₁ + θ₂x₂ (θ₀ 是偏置项)
    整合:
    h_\theta(x)=\sum_{i=0}^Nθ_ix_i=θ^TX
    注:(x_0=1

    1 误差

    1.1 真实值与预测值之间肯定要存在差异的(用\epsilon来表示该误差)

    (0) 对于每个样本:y^{(i)}=\theta^T x^{(i)} + \epsilon^{(i)}

    误差\epsilon^{(i)}是独立并且具有相同的分布,并且服从均值为0方差为\theta^2的高斯分布

    • 独立:张三和李四一起来贷款,他俩没关系
    • 同分布:他俩都是来的我们假定的这家银行
    • 高斯分布:银行可能会多给,也可能会少给,但是绝大多数情况下这个浮动不会太大,极小情况下浮动比较大,符合正常情况。

    2 似然函数

    (1)高斯分布:f(x)=\frac{1} {\sqrt[]2\pi\sigma}exp(-\frac{(x-\mu)^2}{2\sigma^2})
    (2)由于误差服从u=0,\sigma^2的高斯分布:p(\epsilon^{(i)})=\frac{1} {\sqrt[]2\pi\sigma}exp(-\frac{(\epsilon(i)^2)}{2\sigma^2})
    (3)将(0)带入(2)求解:p(y^{(i)}|x^{(i)};\theta)=\frac{1} {\sqrt[]2\pi\sigma}exp(-\frac{(y^{(i)}-\theta^T x^{(i)})^2}{2\sigma^2})
    似然函数:L(\theta)=\prod_{i=1}^mp(y^{(i)}|x^{(i)};\theta)=\prod_{i=1}^m\frac{1} {\sqrt[]2\pi\sigma}exp(-\frac{(y^{(i)}-\theta^T x^{(i)})^2}{2\sigma^2})
    对数似然:logL(\theta)=log\prod_{i=1}^m\frac{1} {\sqrt[]2\pi\sigma}exp(-\frac{(y^{(i)}-\theta^T x^{(i)})^2}{2\sigma^2})
    似然函数越大越好

    3 目标函数

    J(\theta)=\frac{1} {2}\sum_{i=1}^m(y^{(i)}-\theta^Tx^{(i)})^2   (越小越好)
    J(\theta)=\frac{1} {2}\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})^2

    4 求偏导

    \nabla_\theta J(\theta)=X^TX\theta-X^Ty
    偏导等于0:\theta=(X^TX)^{-1}X^Ty

    5 评估方法

    最常用的评估项R^2:1-\frac{ \sum_ {i=1}^m(\hat{y}_i-y_i)^2}{\sum_{i=1}^m(y_i-\bar{y})^2}
    注:R^2取值越接近于1我们认为模型拟合的越好

    6 梯度下降

    引入:当我们得到了一个目标函数后,如何进行求解?(并不一定可直接求解,线性回归是个特例而已)
    常规套路:机器学习的套路就是我交给机器一堆数据,然后告诉它什么样的学习方式是对的(目标函数),然后它朝着这个方向去做
    如何优化:一口吃不成个胖子,我们要静悄悄的一步步的完成迭代(每次优化一点)
    目标函数:J(\theta)=\frac{1} {2m}\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})^2

    相关文章

      网友评论

          本文标题:线性回归算法

          本文链接:https://www.haomeiwen.com/subject/qsfvjqtx.html