资料

参考视频:
【详细推导】【本视频还证明了收敛性】https://www.bilibili.com/video/BV16a4y1t76z?from=search&seid=35153938940534319
【简单介绍】https://www.bilibili.com/video/BV1jE411u7bx?from=search&seid=35153938940534319

梯度下降法

本算法由梯度下降所引申:
对于优化问题:

使用梯度下降:

注意,alpha也是可以算的:求一个a使得f(x0+aP0)最小,是求函数极值的,这时候是关于a的一个函数,所以对a求导求极小值,复合函数求导法则最后就会得到求导等于0,这时候的点是驻点,就是导数值为0的点,因为二阶导数黑塞矩阵正定,所以一定为极小值点。这时候就求出了在P0方向上的最小值点。
图中()意味内积。

共轭和预备知识

共轭:A共轭的定义

引申:非零向量如果共轭,则一定线性无关。

此图:只要a_i彼此正交,则xi很容易计算。

问题再次转化:要求x,可以用aplha表示,而alpha只和p有关
因此,只要给出一组A共轭的向量组,就可以把x写出来。

如何获得P?


怎么得到线性无关的向量组?
施密特正交法:【不断地做A-投影(指内积是A内积)】

共轭梯度下降算法


残量是梯度的相反数】
【图中的(AP0,R1)代表内积】
一二步和最速下降一样,对新的残量。
新的前进方向,让r1在P0上做投影,沿着共轭方向前进。

优点

  • 可以证明,比梯度下降法收敛的快
  • 可以证明能得到精确解

    图中span代表子空间,可以证明是同一个子空间,最后一个等号是科里洛夫子空间

代码实现



此图中,去掉min res的注释即可得到梯度下降法代码。

例题



第二步迭代:【经评论区老哥提醒,下图P1的正负号写反了,感谢】

CG共轭梯度下降法【学习笔记、例题与代码】相关推荐

  1. 吴恩达《机器学习》学习笔记十一——神经网络代码

    吴恩达<机器学习>学习笔记十一--神经网络代码 数据准备 神经网络结构与代价函数· 初始化设置 反向传播算法 训练网络与验证 课程链接:https://www.bilibili.com/v ...

  2. 【学习笔记】低代码平台(LCAP:Low-Code Application Platform)

    学习笔记:低代码平台(LCAP:Low-Code Application Platform) [概念] 开发者写很少的代码,通过低代码平台提供的界面.逻辑.对象.流程等可视化编排工具来完成大量的开发工 ...

  3. 梯度消亡--学习笔记

    梯度消亡 一. 梯度消亡 神经网络靠输入端的网络层的系数逐渐不再随着训练而变化,或者变化非常缓慢 随着网络层数增加,这个现象越发明显 梯度消亡的前提: 使用基于梯度的训练方法(如梯度下降法) 使用的激 ...

  4. 李航统计学习方法----感知机章节学习笔记以及python代码

    目录 1 感知机模型 2 感知机学习策略 2.1 数据集的线性可分性 2.2 感知机学习策略 3 感知机学习算法 3.1 感知机学习算法的原始形式 3.2 感知机算法的对偶形式 4 感知机算法pyth ...

  5. 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁

    什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...

  6. 共轭梯度下降法matlab,用matlab实现最速下降法,牛顿法和共轭梯度法求解实例

    用matlab实现最速下降法,牛顿法和共轭梯度法求解实例 (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 实验的题目和要求 1.所属 ...

  7. 2.0 自动梯度 - PyTorch学习笔记

    自动梯度 (AUTOGRAD: AUTOMATIC DIFFERENTIATION) 导入 torch 包 import torch 新建一个需要的2x2张量,并设置梯度记录为开启状态 x = tor ...

  8. python怎么计算图像梯度_Opencv-Python学习笔记十——图像梯度、边缘检测 Gradient, Edge Detection...

    图像梯度 边缘检测 图像梯度,图像边界 使用到的函数有: cv2.Sobel(), cv2.Schar(), cv2.Laplacian() 梯度简单来说就是求导,OpenCV 提供了三种不同的梯度滤 ...

  9. WQS二分 学习笔记 + 例题([BZOJ2654]Tree、[联考2018]林克卡特树)

    目录 问题类型 WQS二分思路 形象地说 板题 题意 & 解法 CODE 省选题 题意 & 解法 CODE 问题类型 形如"恰好取 k 个--时的最优答案(并非具体方案)&q ...

最新文章

  1. SqlServer示例数据库Northwind(一)——实体关系
  2. 【机器学习基础】数学推导+纯Python实现机器学习算法24:LightGBM
  3. 微电网日前优化调度 。算例有代码(0)
  4. Ant在Java项目中的使用(一眼就看会)
  5. Bitmap 之 getPixels() 的 stride
  6. vim永久取消空格颜色
  7. python自动控制库_一个可以自动化控制鼠标键盘的库:PyAUtoGUI
  8. it just sudo_just do it是什么梗
  9. 秒懂文件路径 ‘/‘ , ‘./‘ , ‘../‘ 的区别
  10. 前端能改变session吗_编程真的能改变思维方式吗?「渡一教育」
  11. 使用Areas分离ASP.NET MVC项目
  12. java textarea 自动滚动条,textarea根据内容自动延伸,不显示滚动条
  13. Caliburn.Micro WPF教程——入门
  14. 在计算机系统中 cpu指什么地方,在计算机中cpu指的是什么
  15. vue中activated
  16. 计算机两个用户怎么设置密码,电脑如何设置密码 电脑密码三个设置
  17. 【新塘N76E003】NU-LINK脱机烧写
  18. Java6面向对象编程创建一个矩形类, 求周长 面积
  19. 什么是α-β剪枝算法?
  20. PXIEBPMCx4载板转接卡

热门文章

  1. midi java_Java程序中添加播放MIDI音乐功能的实现方法详解
  2. java 单链表一元多项式_java单链表实现一元多项式加法和乘法运算
  3. Android应用中捕捉所有点击事件实现
  4. 如何用google translate API接口
  5. 微信小程序的路由,以及生命周期
  6. Python画了一朵花
  7. mysql 生成随机数 —— 数字、字符串、手机号、日期、姓名、一段中文汉字
  8. ITSS服务项目经理 IT服务工程师 培训 证书延续
  9. 为华生物NHS-PEG-MAL 马来酰亚胺聚乙二醇活性酯的简介及应用说明
  10. KPM字符串匹配next矩阵计算