o1 = 0
o2 = 0
o3 = 0
a = 0.002
x = [1,3,5,3,5,7,2,6,7,3,6,9,4,8,9,6,5,3,3,2,7,1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8,9,9,9]   #生成训练数据
x = x * 250              #将训练数据扩大50倍
y = []
#生成训练数据的理论结果
for i in range(int(len(x)/3)):y.append(14*x[i] + 5*x[i+1] + 58*x[i+2])# print('y[{}]:{}'.format(i,y[i]))
#进行随机梯度下降 每用一行数据,就下降一次,需要样本足够且,a值合理
for i in range(len(y)):o1 = o1 - a * (o1 * x[i] + o2 * x[i+1] + o3 * x[i+2] - y[i]) * x[i]o2 = o2 - a * (o1 * x[i] + o2 * x[i+1] + o3 * x[i+2] - y[i]) * x[i+1]o3 = o3 - a * (o1 * x[i] + o2 * x[i+1] + o3 * x[i+2] - y[i]) * x[i+2]print(o1 * x[i] + o2 * x[i+1] + o3 * x[i+2],y[i])
print(o1,o2,o3)

结果:

转载于:https://www.cnblogs.com/cxhzy/p/10672676.html

机器学习之--梯度下降和最小二乘法算线性回归相关推荐

  1. 梯度下降法和Sklearn实现线性回归

    1.线性回归模型 线性回归 (linear regression)是-种线性模型, 它假设输入变量 x和单个输出变量 y 之间存在线性关系.具体来说,利用线性回归模型,可以从-组输入变量 x 的线性组 ...

  2. 《机器学习》 梯度下降

     <机器学习> 梯度下降 2012-09-21 17:46 2712人阅读 评论(0) 收藏 举报 matrixc 参照<机器学习>这本书的第4.4.3节. 一.解决目标及 ...

  3. 机器学习算法(优化)之一:梯度下降算法、随机梯度下降(应用于线性回归、Logistic回归等等)...

    本文介绍了机器学习中基本的优化算法-梯度下降算法和随机梯度下降算法,以及实际应用到线性回归.Logistic回归.矩阵分解推荐算法等ML中. 梯度下降算法基本公式 常见的符号说明和损失函数 X :所有 ...

  4. Gradient Descen-univariate(吴恩达机器学习:梯度下降在线性模型的应用)

    梯度下降算法在Linear Regression中的应用 文章目录 梯度下降算法在Linear Regression中的应用 单变量(univariate) 题目:预测利润 处理Training se ...

  5. 吴恩达机器学习笔记-梯度下降

    通过前面的文章我们现在已经有了假设函数$h_\theta(x)$并知道如何度量这个函数与数据的符合程度,即代价函数$J(\theta_0,\theta_1)$取得最小值.那么现在要做的,就是如何去预估 ...

  6. 梯度下降原理及在线性回归、逻辑回归中的应用

    1 基本概念 1)定义 梯度下降法,就是利用负梯度方向来决定每次迭代的新的搜索方向,使得每次迭代能使待优化的目标函数逐步减小. 梯度下降法是2范数下的最速下降法. 最速下降法的一种简单形式是:x(k+ ...

  7. 【机器学习】梯度下降的Python实现

    作者 | Vagif Aliyev 编译 | VK 来源 | Towards Data Science 梯度下降是数据科学的基础,无论是深度学习还是机器学习.对梯度下降原理的深入了解一定会对你今后的工 ...

  8. 机器学习(二)梯度下降

    在上一节(线性回归)中介绍,在线性回归中参数值θ\thetaθ是不一定可以求出的,但是可以通过梯度下降的方式可求. 在微积分里面,对多元函数的参数求偏导数,把求得的各个参数的偏导数以向量的形式写出来, ...

  9. 机器学习中为什么需要梯度下降_机器学习 —— 多元梯度下降

    一.多维特征 前面所述的房价预测的线性模型,只用到了一维特征,即size,房屋尺寸,要用这个特征量来预测房屋价格: 当数据集的信息不止一种时,便有了多维特征,比如: 上图有四个X,即四个特征,来预测房 ...

最新文章

  1. git中Please enter a commit message to explain why this merge is necessary.
  2. android OkHttp form 上传图片和参数
  3. [TJOI2018]xor
  4. Rsync和Sersync(企业实时同步方案)
  5. 137.三网?哪三网?139.网络协议三要素?141.网络安全有哪些方面?
  6. [leetcode]344.反转字符串
  7. 第八节:数据库层次的锁机制详解和事务隔离级别
  8. 大圆距离matlab代码,python – cartopy:大圆距离线的更高分辨率
  9. python实现顺序查找和哈希查找算法
  10. Eclipse在当前行之上插入一行
  11. 清新脱俗的Java选课系统
  12. 百度影音盒插入论坛帖子自动播放代码及方法
  13. vue实现坐标拾取器功能demo
  14. 将Android手机无线连接到Ubuntu实现唱跳Rap
  15. java输出pdf(pdfptable和pdftcell)
  16. Android 设置边距总结
  17. 数据结构:栈(Stack)
  18. 【爬虫学习笔记day65】7.7. scrapy-redis实战-- IT桔子分布式项目1
  19. 【社区周会】2021-06-01 内容概要
  20. diy网页加速服务器教程,巧用网络加速工具 加速网页浏览速度

热门文章

  1. 正则东西类,简化正则匹配
  2. 百度地图API之MyLocationOverlay的使用(Android)
  3. LeetCode 295. 数据流的中位数 Hard难度
  4. LeetCode 86. 分隔链表 中等难度
  5. C++ 中的类型限定符 类型限定符提供了变量的额外信息。
  6. 10进制转换成16进制
  7. JavaScript 函数参数
  8. MyBatis ofType和javaType区别
  9. 074_html5音频
  10. 188tokens_Affiliate 追踪技术: tokens 和 postback URL 设置的教程