1 从方程说起

我这里先不谈线性回归,就面对一个简简单单的方程,看你能不能解吧。

                                                            (1)

我们也知道答案是:

但是,如何用计算机将其解出?这就是个理论问题了。下面请看我如何展开题目,让诸位举一反三地认知这个问题。

假定任意给出一组近似的解:

。    将其带入等式(1)立即得到近似结果,可以写成:

,进一步写出其残差方程:

                                            (2)

叫做剩余,显然,如果:,那么上边的 就一定是方程(1)精确解!

因此,解方程(1)的问题转化成“如何让剩余等于0的问题,即”的问题。

以上内容核心点:是否可以从一个非精确解开始,自动迭代地慢跑到精确解附近。

2 凸函数如何求极值的问题

对于凸连续函数,求出它的极值点坐标还是容易的。这是因为,图函数的极值点只有一个,如果不是凸函数,极值点有多个,那就无法得到唯一解。

举个例子:

函数:的极值点是(0,0,0)这个点,其算法是先求f的梯度,令梯度等于0,解出x,y,z:

拓展你的思路:将上述函数换成,只要是令梯度等于0。就可以得出: 极值点,同时解出:,这就是方程(1)最后解。

3 梯度下降法计算极值

改写成:

按照以下步骤求解:

1)给出一组任意值作为方程(1)的近似解  

2)  求出梯度的表达式

(是个较为复杂的式子,暂时不展开)

带入,得到此点(就是当前近似解)对应梯度:

,这是一个具体的数值向量。

3)修改近似解:将近似解移动一个微小位移;具体就是顺梯度反方向移动0.001倍个长度:

4)返回到1)再次迭代。

5)迭代N遍后停止,得到(1)方程的数字解。

注:上文中的f就是所谓的代价函数。

4 以上方程的程序实现

import numpy as npcs = np.array([[23],[23],[26]])
ix = np.array([[0.001],[0.002],[0.003]])IA = np.array([[2.,3.,5.],[4,  5, 3],[6, 7, 2]  ])for  i in range(6000000):grd = np.dot( IA.T,np.dot( IA, ix) - cs)   # 我估计百分之九十的同学,看不出这步如何得到!!# 那就继续努力吧ix = ix - 0.0001*grd
print(ix)

在没有任何优化的前提,迭代了六百万次,高效得到结果:

《从函数逼近论看回归问题》《非线性的回归,乃至任意的回归问题》[[1.06834998]
 [1.93894111]
 [3.00954498]]

是不是和精确结果

      很类似呢?列位不妨将代码粘下去跑跑。好了,如果能理解上述所讲,下面解释线性回归就毫无难度了。

后记:

以上只是回归问题的冰山之一角,后面还有更奇葩的东西,那就是:《从函数逼近论看回归问题》《非线性的回归,乃至任意的回归问题》《机器学习2:回归问题之一览众山小【2】》此两篇主要介绍更一般的理论,可以推广到回归问题、神经网络、协同过滤等一些列问题,通过学习后,保证你看明白yolo,gan、rnn等一些列难懂的东西,竟然就是点数学玩具而已。

机器学习系列2:从线性方程的角度看的线性回归【1】相关推荐

  1. 吴恩达机器学习系列理论加实践(二 、单变量线性回归及matlab实践)

    二.单变量线性回归 2.1模型表示 同样以之前的房屋价格预测实例开始: 通过学习算法利用训练集训练模型h,对于新输入的数据size of house就可以输出其预测值price: 如何表达这个模型h: ...

  2. 【机器学习系列】概率图模型第一讲:从概率和图的角度理解概率图模型

    作者:CHEONG 公众号:AI机器学习与知识图谱 研究方向:自然语言处理与知识图谱 前言: 文中含有大量公式,若需获取本文全部的手书版原稿资料,扫码关注公众号[AI机器学习与知识图谱],回复: 概率 ...

  3. 机器学习系列(8)_读《Nature》论文,看AlphaGo养成

    机器学习系列(8)_读<Nature>论文,看AlphaGo养成  标签: 机器学习算法深度学习神经网络蒙特卡罗树搜索 2016-03-16 11:23 17843人阅读 评论(8) 收藏 ...

  4. 机器学习系列(二)ML经典十大算法之一:决策树算法--从代码和统计学角度谈谈cs是如何预测你的行为

    写在前面: 我是「nicedays」,一枚喜爱做特效,听音乐,分享技术的大数据开发猿.这名字是来自world order乐队的一首HAVE A NICE DAY.如今,走到现在很多坎坷和不顺,如今终于 ...

  5. 关于从安全角度看机器学习:真实的故事

    今天,我们从安全的角度对机器学习进行考察,并回顾一些最有趣的事件. 机器学习如何应用于信息安全 一方面,机器学习帮助信息安全产品检测攻击,并帮助专家识别数据中新的依赖关系.另一方面,ML正在成为网络犯 ...

  6. 机器学习系列(2)_从初等数学视角解读逻辑回归

    作者:龙心尘 && 寒小阳  时间:2015年10月.  出处:http://blog.csdn.net/longxinchen_ml/article/details/49284391 ...

  7. svm多分类代码_跟我一起机器学习系列文章知识点与代码索引目录,持续更新…...

    <跟我一起机器学习> 系列文章知识点与代码索引目录 0 环境配置 如何才能入门机器学习? 优雅的安装和使用Anaconda 使用Conda来进行环境的创建与管理 Pycharm安装与使用 ...

  8. 机器学习系列(三)——目标函数、损失函数以及代价函数

    机器学习基础(三) 机器学习系列(一)--基础概念及分类 机器学习系列(二)--分类及回归问题 文章目录 机器学习基础(三) 4. 代价函数 4.1 为什么要使用代价函数 4.2 目标函数的作用原理 ...

  9. 机器学习系列(4)_机器学习算法一览,应用建议与解决思路

    作者:寒小阳 时间:2016年1月. 出处:http://blog.csdn.net/han_xiaoyang/article/details/50469334 声明:版权所有,转载请联系作者并注明出 ...

最新文章

  1. Git查看、删除、重命名远程分支和tag【转】
  2. caffe读书笔记1 CIFAR-10在caffe上进行训练与学习
  3. 记录从数据库把数据初始化mongodb缓存的一些坑
  4. python模拟地面网管接收数据
  5. 列出本机安装的所有硬件设备
  6. c++ 中文乱码_Visual Studio Code 中 CodeRunner 插件的输出窗口中文乱码
  7. Egret开发HTML5小游戏代码分享
  8. 【Elasticsearch】Limit of total fields [1000] in index [xxxxxx_index] has been exceeded
  9. 互联网创业的重重风险
  10. Command(命令)
  11. r语言集合补集_极速统计教程之八 | 概率和集合
  12. 基于Android的Word在线预览
  13. 手动下载Windows Defender离线更新包
  14. 远程计算机关机了怎么办,远程关机的详细步骤有哪些?向日葵怎么远程关机?...
  15. docker部署sftp,连接报algorithm negotiation fail错误
  16. base64在线解码(等号或者双等号结尾的数据的解码)
  17. MATLAB强化学习入门——四、用DQN实现网格迷宫算例
  18. 【Qt Quick】零基础入门系列之安装与卸载(一)
  19. Python len()方法
  20. 基于CentOS7.2的服务器搭建教程《一》

热门文章

  1. 推荐系统笔记:无任何限制的矩阵分解
  2. 强化学习笔记: MDP - Policy iteration
  3. MATLAB可视化实战系列(四十二)-图像特征提取-使用低秩 SVD 进行图像压缩实例
  4. 内容社区,为什么有必要做内容标签系统?
  5. 机器学习中的数学(1)-回归(regression)、梯度下降(gradient descent)
  6. 数据挖掘导论读书笔记2
  7. Java7里try-with-resources分析--转
  8. jquery学习手记(1)
  9. jms在jboss上的简单应用
  10. 【开发工具】学习记录 初学MATLAB