zoukankan      html  css  js  c++  java
  • 损失函数(Loss Function)

     线性回归中提到最小二乘损失函数及其相关知识。对于这一部分知识不清楚的同学可以参考上一篇文章《线性回归、梯度下降》。本篇文章主要讲解使用最小二乘法法构建损失函数最小化损失函数的方法。

    最小二乘法构建损失函数

        最小二乘法也一种优化方法,用于求得目标函数的最优值。简单的说就是:让我们的预测值与真实值总的拟合误差(即总残差)达到最小。

        在线性回归中使用最小二乘法构建了损失函数:

        

        上一篇文章《线性回归、梯度下降》中提到求解使损失函数J(θ)取最小的θ值有两种方法:梯度下降(gradient descent)正则方程(The normal equations)。下面主要讲一下正则方程。梯度下降方法最小化损失函数参考文章《线性回归、梯度下降

    正则方程

        将训练特征表示为X矩阵,结果表示成y向量,仍然是线性回归模型,损失函数不变。那么θ可以直接由下面公式得出:

        

        推导过程涉及线性代数方面的知识,这里不再详细展开线性代数知识。

        设m为训练样本数;x为样本中的自变量,即二手房价格预测中的房屋面积和我是数目,x为n维向量;向量y为训练数据中的房屋价格,y为m维向量。那么训练数据可以用矩阵表示为:

                   

        因为,所以就可以表示为:

        

        损失函数就转化为:

        

        线性代数中有两个公式:

        

        其中符号表示一个m*n的矩阵,这个矩阵的第(i,j)个元素为。上面两个公式合起来可以表示为:

        

        依据这这个公式对损失函数J(θ)推导:

        

        为了最小化J(θ),又因为J(θ)由最小二乘法得到,J(θ)的取值大于等于0,即最小值为0。所以,我们使,从而得到θ取值:

        

  • 相关阅读:
    javascript通用循环遍历方法forEach
    伪数组
    引用和基本类型
    谈谈Javascript的this指针
    理解内存分配
    理解undefined和null
    getElementsByClassName实现
    NSubstitute完全手册(十五)自动递归模拟
    NSubstitute完全手册(十七)参数匹配器上的操作
    NSubstitute完全手册(九)检查接收到的调用
  • 原文地址:https://www.cnblogs.com/zhangyuhang3/p/6873351.html
Copyright © 2011-2022 走看看