线性回归, 最简单的机器学习算法, 当你看完这篇文章, 你就会发现, 线性回归是多么的简单.

首先, 什么是线性回归. 简单的说, 就是在坐标系中有很多点, 线性回归的目的就是找到一条线使得这些点都在这条直线上或者直线的周围, 这就是线性回归(Linear Regression).

是不是有画面感了? 那么我们上图片:

那么接下来, 就让我们来看看具体的线性回归吧

首先, 我们以二维数据为例:

我们有一组数据\(x\)和\(y\), 其中\(x\)是我们的特征, \(y\)就是我们的真实值(也就是每一个x对应的值), 我们需要找到一个\(w\)和\(b\)从而得到一条直线\(y=wx+b\), 而这条直线的\(w\)和\(b\)就是我们线性回归所需要求的参数

那么, \(w\)和\(b\)需要怎样求得呢? 那么我们需要先来了解一下他的机制

如我们之前所说, 我们需要这条直线使得所有的点尽可能的在直线上或者直线的两边, 也就是说, 我们这些\(x\)在我们直线上对应的值与我们真实的值的差尽可能的小, 即\(|y-(wx+b)|\)尽可能的小, 因此就有了我们的损失函数:

\[L=\frac1n\sum^n_{i=1}(y-(wx+b))^2
\]

那么我们的目标就变成了使得\(L\)尽可能的小

首先我们对损失函数求导:

\[\frac{\partial L}{\partial\omega}=2\left(\omega\sum^n_{i=1}x_i^2-\sum^n_{i=1}(y_i-b)x_i\right)=0
\]

\[\frac{\partial L}{\partial b}=2\left(nb-\sum^n_{i=1}(y_i-\omega x_i)\right)=0
\]

求解以后可得:

\[\omega=\frac{\sum^n_{i=1}y_i(x_i-\overline x)}{\sum^n_{i=1}x^2_i-\frac1m\left(\sum^m_{i=1}x_i\right)^2}
\]

\[b = \frac1m\sum^n_{i=1}(y_i-\omega x_i)
\]

其中\(\overline x=\frac1n\sum^n_{i=1}x_i\)即\(\overline x\)是\(x\)的均值

而这就是我们的最小二乘法, 求解得到的\(w\)和\(b\)就是我们拟合出来的直线的参数.

那么就下来, 我们来看一看当\(X\)为多维的情况, 也就是多元线性回归

与上面的一样, 我们需要拟合一个直线\(w^TX+b\)使得大多数的点在直线上或者在直线周围, 不同的是, 现在我们的\(w\)是多维的, 而我们的损失函数也就变成了

\[L=\frac1n\sum^n_{i=1}(y-(w^TX+b))^2
\]

根据上面的经验, 我们需要对损失函数求偏导, 在这里就不赘述了, 大家可以参考https://xiaoxiablogs.top/index.php/机器学习/least-square-method.html

以上, 就是我们的线性回归以及使用最小二乘法求线性回归了

本人博客https://xiaoxiablogs.top

通俗理解线性回归(Linear Regression)的更多相关文章

  1. TensorFlow 学习笔记(1)----线性回归(linear regression)的TensorFlow实现

    此系列将会每日持续更新,欢迎关注 线性回归(linear regression)的TensorFlow实现 #这里是基于python 3.7版本的TensorFlow TensorFlow是一个机器学 ...

  2. Ng第二课:单变量线性回归(Linear Regression with One Variable)

    二.单变量线性回归(Linear Regression with One Variable) 2.1  模型表示 2.2  代价函数 2.3  代价函数的直观理解 2.4  梯度下降 2.5  梯度下 ...

  3. 斯坦福第二课:单变量线性回归(Linear Regression with One Variable)

    二.单变量线性回归(Linear Regression with One Variable) 2.1  模型表示 2.2  代价函数 2.3  代价函数的直观理解 I 2.4  代价函数的直观理解 I ...

  4. 机器学习方法:回归(一):线性回归Linear regression

    欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 开一个机器学习方法科普系列:做基础回顾之用,学而时习之:也拿出来与大家分享.数学水平有限,只求易懂,学习与工 ...

  5. 机器学习 (一) 单变量线性回归 Linear Regression with One Variable

    文章内容均来自斯坦福大学的Andrew Ng教授讲解的Machine Learning课程,本文是针对该课程的个人学习笔记,如有疏漏,请以原课程所讲述内容为准.感谢博主Rachel Zhang的个人笔 ...

  6. 机器学习 (二) 多变量线性回归 Linear Regression with Multiple Variables

    文章内容均来自斯坦福大学的Andrew Ng教授讲解的Machine Learning课程,本文是针对该课程的个人学习笔记,如有疏漏,请以原课程所讲述内容为准.感谢博主Rachel Zhang 的个人 ...

  7. ML 线性回归Linear Regression

    线性回归 Linear Regression MOOC机器学习课程学习笔记 1 单变量线性回归Linear Regression with One Variable 1.1 模型表达Model Rep ...

  8. Stanford机器学习---第二讲. 多变量线性回归 Linear Regression with multiple variable

    原文:http://blog.csdn.net/abcjennifer/article/details/7700772 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...

  9. 机器学习(三)--------多变量线性回归(Linear Regression with Multiple Variables)

    机器学习(三)--------多变量线性回归(Linear Regression with Multiple Variables) 同样是预测房价问题  如果有多个特征值 那么这种情况下  假设h表示 ...

随机推荐

  1. Elasticsearch+SpringBoot报NoNodeAvailableException解决方案

    Elasticsearch整合SpringBoot 首先大家在整合的时候一定要注意版本兼容问题,此问题尤为重要 Elasticsearch简称Es 在使用SpringBoot整合Elasticsear ...

  2. 虚拟机安装mysql遇到的坑

    相信很多同学也跟我一样在家里,windows安装个虚拟机,再安装linux.然后在linux下模拟出一套运行环境.这次我装的是mysql 8.0.中间遇到很多坑,记录一下.(用的linux为redha ...

  3. CF 1383B GameGame

    传送门 题目:给定长度为n的数组a,A和B轮流拿走一个数,开始时A和B拥有的v为0,A和B每次拿走一个数时,他的v = v^ ai,A和B都很聪明,问都按照最优的情况考虑,拿完所有数之后A和B的v的大 ...

  4. 【ZJOI2012】灾难 - LCA+拓扑排序

    题目描述 阿米巴是小强的好朋友. 阿米巴和小强在草原上捉蚂蚱.小强突然想,如果蚂蚱被他们捉灭绝了,那么吃蚂蚱的小鸟就会饿死,而捕食小鸟的猛禽也会跟着灭绝,从而引发一系列的生态灾难. 学过生物的阿米巴告 ...

  5. 编写有提示的listbox控件 2008-06-29 17:13

    在MFC中几乎所有的控件都有信息提示,而惟有listbox却没有这样的一个功能,每当我们把鼠标移到listbox上控件时,啥玩意儿都没有是不是很气馁啊,所以我今天特地写了一个简单的有提示的listbo ...

  6. CODING 仪表盘功能正式推出,实现工作数据可视化!

    CODING 仪表盘功能现已正式推出!该功能旨在用一张张统计卡片的形式,统计并展示使用 CODING 中所产生的数据.这意味着无需额外的设置,就可以收集归纳宝贵的工作数据并予之量化分析.这些海量的数据 ...

  7. openVswitch(OVS)源代码分析之工作流程(flow流表查询)

    原文链接: openVswitch(OVS)源代码分析之工作流程(flow流表查询)

  8. 使用docker搭建redis集群

    创建网卡 docker network create redis --subnet 172.20.0.0/ --gateway 172.20.0.1 通过脚本创建6个redis配置 for i in ...

  9. openstack vnc 报1006的错误

    1.问题现象 创建完虚拟机以后,通过nova get-vnc-console命令,获取虚机的vnc连接地址,在浏览器中打开该连接,报1006错误 2.vnc的原理图 3.定位分析 1)分别在控制节点和 ...

  10. HM16.0 TAppEncoder

    参考:  https://www.cnblogs.com/tiansha/p/6458573.html https://blog.csdn.net/liangjiubujiu/article/deta ...