(邹博ML)数学分析与概率论
机器学习入门
深度学习和机器学习?
深度学习在某种意义上可以认为是机器学习的一个分支,只是这个分支非常全面且重要,以至于可以单独作为一门学科来进行研究。
回忆知识
求解S.
对数函数的上升速度
我们使用Python简单写一段代码可以很容易获得结果。但是我们使用数学来分析:
令\(f(x)=log_ax\)
则:
那么我们需要考虑:
构造数列:
我们很容易推出:
根据前文,已经证明了数组\({a_n}\)单增有上界,因此,必有极限,记作e。
根据夹逼定理,函数极限存在,为e.
导数
- 简单来说,导数就是曲线的斜率,是曲线变化快慢的反应
- 二阶导数是斜率变化快慢的反应,表征曲线凹凸行
- 二阶导数连续的曲线,往往称之为“光顺”的
- 根据可以得到函数\(f(x)=lnx\)的导数,进而进一步通过换底公式,反函数求导等,得到其他初等函数的导数
常用函数的导数
应用1
已知函数\(f(x)=x^x,x>0\),
求f(x)的最小值
此处直接求导并不合适,我们可以取对数在求导。
\(N^{\frac{1}{log_2N}}\)=?
在计算机算法跳跃表Skip List的分析中,用到了该常数。
背景:跳表是支持增删改查的动态数据结构,能够达到与平衡二叉树、红黑树近似的效率,而实现代码简单
求解:
积分应用2
证明:
在算法复杂度分析中,任何一种关键字比较的排序算法时间复杂度为\(NlgN\),可由上式推出。
解:\(\ln N!=\sum_{i=1}^{N}\ln i\approx \int_{1}^{N}\ln xdx\)
我们采用分部积分法:
Taylor公式-Maclaurin公式
Taylor公式应用1
数值计算:初等函数值的计算(在原点展开)
在实践中,往往需要做一定程度的变换。
给定正实数x,计算\(e^x\)=?
一种可行的思路是求整数k和小数r,使得:
\(x= k\times \ln 2+2, |r|\le0.5\times \ln 2\)
从而:
\]
\]
\]
Taylor公式应用2
考察Gini系数的图像、熵、分类误差率三者之间的关系
将\(f(x)=-\ln x\)在x=1出一阶展开,忽略高阶无穷小,得到\(f^{'}(x)\approx1-x\)
具体细节在决策树中描述。
方向导数
如果函数z=f(x,y)在点P(x,y)是可微分的,那么,函数在该点沿任意方向L的方向导数都存在,且有:
其中,\(\varphi\)为x轴到方向L的转角。
梯度
设函数z=f(x,y)在平面区域D内具有一阶连续偏导数,这对于每一个点P(x,y)\(\in\)D,向量:
为函数z=f(x,y)在点P的梯度,记作\(gradf(x,y)\)。
- 梯度的方向是函数在该点变化最快的方向。
- 梯度下降法
概率论
对概率论的认识
P(x)\(\in\)[0,1]
p=0,事件出现的概率为0\(\to\)事件不会发生吗?
我们希望概率为0,但是实际上定义域为连续的。比如投针到桌子上,我们可以认为针的尖端为0,这样理论上桌面被投中的概率为0,但是,实际上还是会被投中。当然,这是极限情况,我们可以基本无视。
若x为离散/连续变量,则p(x=\(x_0\))表示\(x_0\)发生的概率/概率密度。
累计分布函数
\(\Phi\)一定为单增函数
min(\(\Phi(x)\))=0,max(\(\Phi(x)\))=0。
将值域为[0,1]的某单增函数y=F(x)看成:X事件的累积概率函数(CDF)
- 若F(x)可导,则f(x)=F'(x)为某概率密度函数(PDF)。
古典概型
举例:将n个不同的球放入N(N\(\ge\)n)个盒子中,假设盒子容量无限,求事件A{每个盒子至多有一个球}的概率。
解:
基本事件总数:
- 第一个球,N种放法
- 第二个球,N种放法
- ......
- 共有:\(N^n\)种放法
每个盒子至多放1个球的事件数:
- 第一个球,N种放法
- 第二个球,N-1种放法
- ......
- 共有:N(N-1)(N-2)...(N-n+1)
\(P(A)=\frac{P_N^n}{N^n}\)
生日悖论
假定班内50人,假设一年365天,则至少有2人生日相同的概率是多少?
那么n=50,N=365。只需1-(每个人生日都不同)最终结果97%。
这和我们的经验出现偏差,告诉我们,我们的先验不一定正确。
装箱问题
将12件正品和3件次品随机装在3个箱子中,每箱子装5件,则每箱中恰有一件次品的概率是多少?
解:
组合数
装箱问题与组合数的关系
组合数的背后
最终结果就是信息论中的信息熵。
概率公式
条件概率:
全概率公式:
贝叶斯(Bayes)公式:
需要掌握各种分布
二项分布Bernoulli distribution
- 期望np,方差np(1-p)
- 离散的
泊松分布Poisson distribution
可以通过泰勒展开式获得泊松分布
期望方差均为\(\lambda\)
离散的
均匀分布
期望0.5(a+b),方差\((b-a)^2/12\)
连续的
指数分布
- 无记忆性
正态分布(高斯分布)
指数族
某一函数可以写作类似如下指数形式:
这个函数描述的分别可以称为指数族分布。例如Bernoulli分布、高斯分别、泊松分布,伯努利分布、Gamma分布等。
Bernoulli分布:
在推导过程中出现了logistic方程:
这也就是sigmoid函数,图像如下:
sigmoid函数的导数:
(邹博ML)数学分析与概率论的更多相关文章
- (邹博ML)矩阵和线性代数
主要内容 矩阵 特征值和特征向量 矩阵求导 矩阵 SVD的提法 奇异值分解(Singular Value Decomposition)是一种重要的矩阵分解方法,可以看做对称方阵在任意矩阵上的推广. 假 ...
- (邹博ML)凸优化
目录 凸集的基本概念 凸函数的基本概念 凸优化的一般提法 凸集基本概念 思考两个不能式 两个正数的算术平均数大于等于几何平均数 给定可逆对称阵Q,对于任意向量x,y,有: 思考凸集和凸函数 在机器学习 ...
- (ML邹博)回归
目录 线性回归 高斯分布 最大似然估计 最小二乘法的本质 Logistic回归 工具 梯度下降算法 最大似然估计 线性回归 对于单个变量: y=ax+b 对于多个变量: 使用极大似然估计解释最小二乘法 ...
- Machine Learning读书会,面试&算法讲座,算法公开课,创业活动,算法班集锦
Machine Learning读书会,面试&算法讲座,算法公开课,创业活动,算法班集锦 近期活动: 2014年9月3日,第8次西安面试&算法讲座视频 + PPT 的下载地址:http ...
- 怀念Galois
我的第一篇谈到具体学科的博客,还是献给我最钟爱的数学. 个人比较喜欢离散数学,并非因为曲高和寡,而是因为数学分析.概率论.拓扑学.泛函之类的高手实在太多.而离散数学更为抽象,抽象到抽象代数直接以抽象二 ...
- 【转】科大校长给数学系学弟学妹的忠告&本科数学参考书
1.老老实实把课本上的题目做完.其实说科大的课本难,我以为这话不完整.科大的教材,就数学系而言还是讲得挺清楚的,难的是后面的习题.事实上做1道难题的收获是做10道简单题所不能比的. 2.每门数学必修课 ...
- 理解 LDA 主题模型
前言 gamma函数 0 整体把握LDA 1 gamma函数 beta分布 1 beta分布 2 Beta-Binomial 共轭 3 共轭先验分布 4 从beta分布推广到Dirichlet 分布 ...
- 通俗理解LDA主题模型
通俗理解LDA主题模型 0 前言 印象中,最開始听说"LDA"这个名词,是缘于rickjin在2013年3月写的一个LDA科普系列,叫LDA数学八卦,我当时一直想看来着,记得还打印 ...
- 通俗理解LDA主题模型(boss)
0 前言 看完前面几篇简单的文章后,思路还是不清晰了,但是稍微理解了LDA,下面@Hcy开始详细进入boss篇.其中文章可以分为下述5个步骤: 一个函数:gamma函数 四个分布:二项分布.多项分布. ...
随机推荐
- 从代理模式 到 SpringAOP
前言 Spring AOP 就是通过代理模式来实现切面编程的.代理模式用来为其他对象提供一种代理,以控制对这个对象的访问. 代理对象在客户端和目标对象之间起到中介的作用.通过控制对这个对象的访问,可以 ...
- innerHTML,innerText
文本替换 <p id="p1">Hello World!</p><div>神经</div><h3 class="hh ...
- [THUPC2019] 找树
一.题目 点此看题 二.解法 这道题很离谱啊,看上去是求一个最大值,其实是把生成树权值为 \(i\) 的个数都给算出来,因为权值很小. 既然是生成树可以考虑矩阵树定理,我们考虑他是求这样一个式子: \ ...
- idea自制模板代码快捷键
一:/** 方法描述 /*** 功能描述: * @param: $param$ * @return: $return$ * @auther: $user$ * @date: */二./c** 类描述 ...
- validator库参数校验
目录 validator库参数校验若干实用技巧 基本示例 翻译校验错误提示信息 自定义错误提示信息的字段名 自定义结构体校验方法 自定义字段校验方法 自定义翻译方法 validator库参数校验若干实 ...
- Unknown host 'd29vzk4ow07wi7.cloudfront.net'. You may need to adjust the proxy settings in Gradle.
修改项目下build.gradle文件 在jcenter()前添加mavenCentral() 1 // Top-level build file where you can add configur ...
- salesforce零基础学习(一百零二)Limitation篇之 CPU Limit
本篇参考: https://help.salesforce.com/articleView?id=000339361&type=1&mode=1 https://developer.s ...
- Linux内核源码分析之setup_arch (四)
前言 Linux内核源码分析之setup_arch (三) 基本上把setup_arch主要的函数都分析了,由于距离上一篇时间比较久了,所以这里重新贴一下大致的流程图,本文主要分析的是bootmem_ ...
- 第三单元总结——JML契约式编程
OO第三单元博客作业--JML与契约式编程 OO第三单元的三次作业都是在课程组的JML规格下完成.完成作业的过程是契约式编程的过程:设计者完成规格设计,实现者按照规格具体实现.作业正确性的检查同样围绕 ...
- TypeError: Can't convert 'int' object to str implicitly Python常见错误
尝试连接非字符串值与字符串 想要字符串连接非字符串需要先进行强制转化 可以用str()函数 --------------------------------