掌握机器学习数学基础之概率统计(三)
标题:
机器学习为什么要使用概率
概率学派和贝叶斯学派
何为随机变量和何又为概率分布?
条件概率,联合概率和全概率公式:
边缘概率
独立性和条件独立性
期望、方差、协方差和相关系数
常用概率分布
贝叶斯及其应用
中心极限定理
极大似然估计
概率论中的独立同分布?
读完估计需要10min,这里主要讲解第三部分,第一部分和第二部分详细看之前文章哦
贝叶斯及其应用
”栗子“引申出知识:曲奇饼问题
条件:碗1中有30个香草曲奇饼干和10个巧克力饼干,碗2中有上述饼干个20个。
问:闭上眼随机拿一块,从碗1中拿到香草曲奇的概率是多少?
解:首先,我们将“问”的内容用数学符号表示出来,即:P(碗1香草)。
PS1:这里我对为什么是“P(碗1香草)”而不是“P(香草碗1)”有点疑惑,个人感觉将问题描述成“得到的是香草饼干,而且该饼干是从碗1中拿到的”会更好。
PS2:顺便一提P(香草碗1) = 3/4。嗯?为什么?从碗1出拿出一块饼干是香草饼干的概率这不是显而易见的 3/4 么,这个和碗2完全没关系。
然后,我们计算P(碗1香草)。 。。。。这怎么算?嗯。。香草饼干一共50块,巧克力饼干一共30块,所以取出一块饼干是香草的概率是5/8然后。。然后。。饼干从碗1中取出的概率是1/2。
不行我编不下去了,还是看看书上怎么说的吧(其实上面这两个概率就是贝叶斯公式中的两个必求的概率)。(翻书翻书)书上说的求这个要用贝叶斯定理。
那我们先把这个问题暂停到这里,看一下贝叶斯定理。
贝叶斯定理
介绍 :贝叶斯定理是一种“根据数据集内容的变化而更新假设概率”的方法。
于是对于事件A和B,贝叶斯定理的表达式可写成:
在这种解释里,每项的意义如下:
P(B):先验概率。即:在的得到新数据前某一假设的概率。
P(BA):后验概率。即:在看到新数据后,要计算的该假设的概率。
P(AB) :似然度。 即:在该假设下,得到这一数据的概率。
P(A):标准化常亮。即:在任何假设下得到这一数据的概率
额。。不太好理解啊。 那我们还用香草饼干的例子来说明下。我们求得是P(碗1香草),所以上面的A对应的事件是“取出饼干的碗是碗1”,B对应的事件是“取出的饼干是香草饼干”。于是:
先验概率P(B) :取出饼干的碗是碗1的概率。结果是1/2。
后验概率P(BA) :得到的是香草饼干,且该饼干从碗1中拿到。待求。
似然度P(AB):在碗1中得到香草饼干的概率。结果是3/4。
标准化常亮P(A):饼干是香草饼干的概率。结果是5/8。
现在,上面这四个除了待求的后验概率外其他的求已经知道了!那这就好办了,我们代入公式,于是很容易就得出结果了。
注:以上总结来自《贝叶斯思维:统计建模的Python学习法》,以上例子来自网上。
贝叶斯概率很常见,在早些时候的邮件过滤系统就是用到贝叶斯概率,但需要注意,朴素贝叶斯算法的不足:分子出现为0的情况,这个时候可以使用拉普拉斯平滑(Laplace smoothing),自行了解。
中心极限定理
中心极限定理:是概率论中的一组定理。中央极限定理说明,大量相互独立的随机变量,其均值的分布以正态分布为极限。这组定理是数理统计学和误差分析的理论基础,指出了大量随机变量之和近似服从正态分布的条件。
本图描绘了多次抛掷硬币实验中出现正面的平均比率,每次实验均抛掷了大量硬币。我们就可以发现其是符合高斯分布的。
我们知道这个知识点就好,记住中心极限定理是什么。
极大似然估计
最大似然估计:是利用已知的样本结果,反推最有可能(最大概率)导致这样结果的参数值的一种方法。
注:图来自概率论课程PPT。例子是连续型的,但离散型的是类似的,可推之!
上面有定义和例子,应该比较好理解了,我们要注意的是离散型和联系型的区别。这个知识点特别重要,机器学习很多时候,应该说是非常多时候,都是在求参调参。怎么求参,很多时候用就是极大似然估计!
概率论中的独立同分布?
独立:就是每次抽样之间是没有关系的,不会相互影响。就像我抛色子每次抛到几就是几这就是独立的。但若我要两次抛的和大于8,其余的不算,那么第一次抛和第二次抛就不独立了,因为第二次抛的时候结果是和第一次相关的。不懂可查看独立性。
同分布:就是每次抽样,样本都服从同样的一个分布抛色子每次得到任意点数的概率都是1/6,这就是同分布的但若我第一次抛一个六面的色子,第二次抛一个正12面体的色子,就不再是同分布了
独立同分布:就是每次抽样之间独立而且同分布的意思
追问:同分布是指服从同一分布函数么?答:是的。
这是我在学习算法的时候不懂,然后查下,也不是说很重要吧,知道是什么就好!
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 牛客网-包含min函数的栈
- 牛客网-反转链表
- 牛客网-替换空格
- 手把手教你破解文件密码、wifi密码、网页密码
- 如何安装 Elastic 栈中的 Logstash
- 你的GitHub项目被封存到北极了吗?
- Logstash: 如何创建可维护和可重用的 Logstash 管道
- 手把手教你微信好友头像形成指定的文字
- Logstash: 应用实践 - 装载 CSV 文档到 Elasticsearch
- LeetCode 剑指 Offer 28. 对称的二叉树
- Mysql拼接查询结果
- 手把手教你如何重建二叉树(超精彩配图)
- 一文搞定插入排序算法
- LeetCode 107. 二叉树的层次遍历 II
- LeetCode 103. 二叉树的锯齿形层次遍历