机器学习入门

深度学习和机器学习?

深度学习在某种意义上可以认为是机器学习的一个分支,只是这个分支非常全面且重要,以至于可以单独作为一门学科来进行研究。

回忆知识

求解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\)

从而:

\[e^x= e^{ k\times \ln 2+2}
\]
\[=e^{ k\times \ln 2}\cdot e^r
\]
\[=2^k \cdot e^r
\]

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)数学分析与概率论的更多相关文章

  1. (邹博ML)矩阵和线性代数

    主要内容 矩阵 特征值和特征向量 矩阵求导 矩阵 SVD的提法 奇异值分解(Singular Value Decomposition)是一种重要的矩阵分解方法,可以看做对称方阵在任意矩阵上的推广. 假 ...

  2. (邹博ML)凸优化

    目录 凸集的基本概念 凸函数的基本概念 凸优化的一般提法 凸集基本概念 思考两个不能式 两个正数的算术平均数大于等于几何平均数 给定可逆对称阵Q,对于任意向量x,y,有: 思考凸集和凸函数 在机器学习 ...

  3. (ML邹博)回归

    目录 线性回归 高斯分布 最大似然估计 最小二乘法的本质 Logistic回归 工具 梯度下降算法 最大似然估计 线性回归 对于单个变量: y=ax+b 对于多个变量: 使用极大似然估计解释最小二乘法 ...

  4. Machine Learning读书会,面试&算法讲座,算法公开课,创业活动,算法班集锦

    Machine Learning读书会,面试&算法讲座,算法公开课,创业活动,算法班集锦 近期活动: 2014年9月3日,第8次西安面试&算法讲座视频 + PPT 的下载地址:http ...

  5. 怀念Galois

    我的第一篇谈到具体学科的博客,还是献给我最钟爱的数学. 个人比较喜欢离散数学,并非因为曲高和寡,而是因为数学分析.概率论.拓扑学.泛函之类的高手实在太多.而离散数学更为抽象,抽象到抽象代数直接以抽象二 ...

  6. 【转】科大校长给数学系学弟学妹的忠告&本科数学参考书

    1.老老实实把课本上的题目做完.其实说科大的课本难,我以为这话不完整.科大的教材,就数学系而言还是讲得挺清楚的,难的是后面的习题.事实上做1道难题的收获是做10道简单题所不能比的. 2.每门数学必修课 ...

  7. 理解 LDA 主题模型

    前言 gamma函数 0 整体把握LDA 1 gamma函数 beta分布 1 beta分布 2 Beta-Binomial 共轭 3 共轭先验分布 4 从beta分布推广到Dirichlet 分布 ...

  8. 通俗理解LDA主题模型

    通俗理解LDA主题模型 0 前言 印象中,最開始听说"LDA"这个名词,是缘于rickjin在2013年3月写的一个LDA科普系列,叫LDA数学八卦,我当时一直想看来着,记得还打印 ...

  9. 通俗理解LDA主题模型(boss)

    0 前言 看完前面几篇简单的文章后,思路还是不清晰了,但是稍微理解了LDA,下面@Hcy开始详细进入boss篇.其中文章可以分为下述5个步骤: 一个函数:gamma函数 四个分布:二项分布.多项分布. ...

随机推荐

  1. 一文弄懂js的执行上下文与执行上下文栈

    目录 执行上下文与执行上下文栈 变量提升与函数提升 变量提升 函数提升 变量提升与函数提升的优先级 变量提升的一道题目引出var关键字与let关键字各自的特性 执行上下文 全局执行上下文 函数(局部) ...

  2. [WC2014]时空穿梭

    这才叫莫比乌斯反演题. 一.题目 点此看题 二.解法 也没有什么好的思路,我们不妨把暴力柿子写出来,我们想枚举直线,但是这道题不能枚举直线的斜率,所以就要用整数来表示直线,我们不妨枚举出发点和终止点的 ...

  3. 字符串匹配-BF算法和KMP算法

    声明:图片及内容基于https://www.bilibili.com/video/av95949609 BF算法 原理分析 Brute Force 暴力算法 用来在主串中查找模式串是否存以及出现位置 ...

  4. JavaCV 树莓派打造监控系统平台

    使用树莓派搭建视频监控平台去年就简单的实现了,只不过功能比较简陋,最近抽时间重构了原来的平台. 环境搭建 环境部分,参考旧版的安装及配置: 树莓派搭建视频监控平台 树莓派视频监控平台实现录制归档 框架 ...

  5. LAB1 启动操作系统

    从机器上电到运行OS发生了什么? 在电脑主板上有一个Flash块,存放了BIOS的可执行代码.它是ROM,断电不会丢掉数据.在机器上电的时候,CPU要求内存控制器从0地址读取数据(程序第一条指令)的时 ...

  6. 2019 GDUT Rating Contest I : Problem G. Back and Forth

    题面: G. Back and Forth Input file: standard input Output file: standard output Time limit: 1 second Mem ...

  7. java 面试经典题

    面向对象编程(OOP) Java是一个支持并发.基于类和面向对象的计算机编程语言.下面列出了面向对象软件开发的优点: 代码开发模块化,更易维护和修改. 代码复用. 增强代码的可靠性和灵活性. 增加代码 ...

  8. Hive源码分析(1)——HiveServer2启动过程

    1.想了解HiveServer2的启动过程,则需要找到启动HiveServer2的入口,hive服务的启动命令为hive --service HiveServer2,通过分析$HIVE_HOME/bi ...

  9. python之模块与类库

    什么是模块 模块是一组类,函数,方法所组成的.这些类都储存在文本文件中..py是python程序代码中的扩展名,模块可能是c或者python写的.模块的扩展名可以是.py或者是.pyc(经过编译的.p ...

  10. 什么是IPFS集群?IPFS集群有什么好处?

    IPFS作为区块链不多的创新技术,其热度一直居高不下.IPFS挖矿效率最高的就是集群结构,那么今天我就带着大家了解IPFS的集群挖矿. 什么是集群挖矿?   集群(cluster)就是计算机集群,指在 ...