机器学习中的数学(一)--基础数学与基本微分学
写在前面
《机器学习中的数学》系列主要列举了在机器学习中用到的较多的数学知识,包括微积分,线性代数,概率统计,信息论以及凸优化等等。本系列重在描述基本概念,并不在应用的方面的做深入的探讨,如果想更深的了解某一方面的知识,请自行查找研究。
第一部分主要讲述了机器学习过程中应用比较多的基础数学知识与基本微分学知识,主要包括求和求积函数,对数函数的基本运算,一元函数与多元函数的微分,一元函数与多元函数的泰勒函数展开以及多元函数的一阶偏导与高阶偏导。
1.基础数学
1.1 求和函数
1.2 求积函数
1.3 对数函数以及基本运算
由于不同底的对数的结果是等比关系,所以,在机器学习中,有时底数是谁是无所谓的。因为绝大多数情况是求极值所对应的参数变量而不是具体的函数值,所以在处理乘积的式子时,经常取对数然后在求导。
2.极限
通俗来讲,函数f(x)在x0处的极限为L的数学符号为:
3.一元函数的微分
微分的核心思想是:逼近
如果存在一个实数L使得f(x)满足,
那么f(x)在x0处可导且导数为:
4. 多元函数的微分
在一元函数中,导数就是函数的变化率。对于二元函数研究它的“变化率”,由于自变量多了一个,情况比较复杂。在XOY平面内,当动点有P(x1,y1)沿不同方向变化时,函数f(x,y)的变化快慢一般来说是不同的,因此就需要研究f(x,y)在(x1,y1)点处沿不同方向的变化率。在这里我们只考虑函数f(x,y)沿平行于x轴和平行于y轴两个特殊方位变化时,f(x,y)的变化率。
x方向的偏导:
设有二元函数z=f(x,y),点(x1,y1)是其定义域D内一点。把y固定在y1而让x在x1有增量△x,相应地函数z=f(x,y)有增量(称为对x的偏增量)
如果△z与△x之比当△x->0时的极限存在,那么此极限值称为函数z=f(x,y)在(x1,y1)出对x的偏导数。函数z=f(x,y)在(x1,y1)处对x的偏导数,实际上就是把y固定在y1固定在y1看成常数后,一元函数z=f(x,y1)处的导数。
举例:
该函数的偏导数为:
5.一元函数的左右导数
函数f(x)在x1处的左右导数分别定义为:
机器学习中常见的函数求导有以下几个:
6. 多元函数的高阶导数
一阶导数的导数称为二阶导数,二阶以上的导数可由归纳法逐阶定义:
常见的高阶导数(机器学习中主要用到的是二阶函数)
7.多元函数的高阶偏导数
如果函数w(x,y,...z)的一阶偏导数关于某个变量可偏微分,就能做出二阶偏导数。同样能定义n阶偏导数。我们将一阶以上的偏导数称为高阶偏导数。将这些高阶偏导数记为:
举例:对于函数
其对于x,y的一阶和二阶偏导数为:
8. 复合函数的求导法则
链式法则
加法法则
乘法法则
除法法则
9. 一元函数的泰勒展开
如果f(x)是一个无限次可导的函数,那么在任何一点x0附近我们可对f(x)做多项式逼近:
最后一项是无穷小。泰勒展开就是利用一个多项式无穷的逼近一个函数,加上无穷小项就是和目标函数等价,如果去掉无穷小项,就是无限逼近目标函数但不等价。下面可以通过一组图来直观地感受泰勒公式的魅力。
函数的0阶展开 函数的1阶展开
函数的2阶展开 函数的3阶展开
函数的6阶展开 函数的10阶展开
上图是y=e^x函数在x=0处各阶展开,不难发现,随着阶数的增加,泰勒展开越来越逼近目标函数,在n=10的时候,肉眼几乎很难分辨二者的区别。参考链接:https://www.matongxue.com/madocs/7.html
10. 多元函数的泰勒展开
机器学习中的数学(一)--基础数学与基本微分学相关推荐
- 机器学习中的数学:一份新鲜出炉的热门草稿
来源:机器之心 本文约1500字,建议阅读5分钟. 本文为你分享近日<Mathematics for Machine Learning>的全部草稿已放出,我们整理了这本书的简要概述. 近日 ...
- 机器学习中的数学 人工智能深度学习技术丛书
作者:孙博 著 出版社:中国水利水电出版社 品牌:智博尚书 出版时间:2019-11-01 机器学习中的数学 人工智能深度学习技术丛书 ISBN:9787517077190
- 机器学习中的数学知识(part4)--拟牛顿法
学习笔记,仅供参考,有错必究 文章目录 机器学习中的数学知识 拟牛顿法 面临的问题(局部极小/鞍点) 机器学习中的数学知识 拟牛顿法
- 机器学习中的数学知识(part3)--凸优化
学习笔记,仅供参考,有错必究 文章目录 机器学习中的数学知识 凸优化 非凸优化 机器学习中的数学知识 凸优化 下面是实际问题中常见的凸集,记住它们对理解后面的算法非常有帮助. n n
- 机器学习中的数学知识(part2)
学习笔记,仅供参考,有错必纠 参考自:<机器学习与应用>–雷明 文章目录 机器学习中的数学知识 泰勒展开 梯度下降法 牛顿法 机器学习中的数学知识 泰勒展开 梯度下降法
- 机器学习中的数学知识(part1)
学习笔记,仅供参考,有错必纠 参考自:<机器学习与应用>–雷明 文章目录 机器学习中的数学知识 偏导数与梯度 雅克比矩阵 Hessian矩阵 奇异值分解 向量与矩阵求导 机器学习中的数学知 ...
- 我们该如何学习机器学习中的数学
数学在机器学习中非常重要,不论是在算法上理解模型代码,还是在工程上构建系统,数学都必不可少.通常离开学校后很难有机会静下心学习数学知识,因此我们最好能通过阅读小组或读书会等形式营造环境,并专注学习那些 ...
- 机器学习中的数学(七)--凸优化的基础知识
写在前面 <机器学习中的数学>系列主要列举了在机器学习中用到的较多的数学知识,包括微积分,线性代数,概率统计,信息论以及凸优化等等.本系列重在描述基本概念,并不在应用的方面的做深入的探讨, ...
- 机器学习中的数学(六)--信息论与激活函数
写在前面 <机器学习中的数学>系列主要列举了在机器学习中用到的较多的数学知识,包括微积分,线性代数,概率统计,信息论以及凸优化等等.本系列重在描述基本概念,并不在应用的方面的做深入的探讨, ...
最新文章
- java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)...
- 基于KVM虚拟化搭建lamp
- boost::hana::prepend用法的测试程序
- jsch连接mysql_求用jsch网络工具包通过ssh连接远程oracle数据库并发送sql操作语句(数据库在unix上)java代码例子...
- android 启动器开发,Android启动器(Launcher)开发详解
- Robot Framework + Selenium library + IEDriver环境搭建
- Java EE过去,现在和云7
- 有关 给Layout设置监听事件后,与Layout子控件的响应关系
- 5月20日,GaussDB将有大事发生
- source ./ 和 . 的区别
- php元素排序算法,php 4大基础排序算法
- Win7快速截屏的五种方法
- 如何快速去掉word页眉横线
- ssm框架 mysql 一对多_ssm2: :sparkles: 基于SSM框架简单的文章管理系统,使用MySQL多表存储方式实现留言回复功能...
- Manjaro 基础配置及常用软件安装
- 920C. Swap Adjacent Elements
- 使用Vivado软件进行硬件调试
- 学ui和python哪个好找工作_学it好不好找工作?过来人告诉你
- 医院WLAN无线认证解决方案
- 使用midi.js在浏览器上播放mid音频文件
热门文章
- 计算机基础优秀教案范文,《计算机基础知识与基本操作》教学课例(教学设计三等奖)...
- 200个c语言程序(由简单到复杂),200个c语言程序(由简单到复杂)
- matlab lti全响应,《LTI系统的响应——实验报告》.doc
- 系统500报警 php_Zabbix3.4 部署、监测及邮件报警
- 布隆过滤器及其数学推导
- 深入理解 LINQ to SQL 生成的 SQL 语句
- apply、call、callee、caller初步了解
- php 取整函数 ceil floor round intval 随笔
- iOS compare 字符串比较
- 比较字符串是否相同,比较大小