学习中的多种概率分布

2023-12-26 21:58
文章标签 多种 学习 概率分布

本文主要是介绍学习中的多种概率分布,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

概率分布是随机变量所有可能结果及其相应概率的列表。

概率分布的目的:反向推演出某一个事态(随机变量)发生的概率,为决策提供依据,掌控事态变化的关键。

 

下图是多种概率分布的联系。

 

其中共轭(conjugate)表示的是互为共轭的概率分布;

Multi-Class 表示随机变量多于 2 个;

N Times 表示我们还会考虑先验分布 P(X)。

 

共轭的意思

          共轭分布(conjugate distribution)的概率中一共涉及到三个分布:先验、似然和后验,如果由先验分布和似然分布所确定的后验分布与该先验分布属于同一种类型的分布,则该先验分布为似然分布的共轭分布,也称为共轭先验。 

例如:

          在贝叶斯概念理论中,如果后验分布 p(θ | x) 与先验分布 p(θ) 是相同的概率分布族,那么后验分布可以称为共轭分布,先验分布可以称为似然函数的共轭先验。

 

概率分布和特性

1、均匀分布(连续型)

           均匀分布是指闭区间 [a, b] 内的随机变量,且每一个变量出现的概率是相同的。

2. 伯努利分布(离散型)

       1、Bernoulli分布不考虑先验概率P(X)。因此,如果我们优化到最大的可能性,我们将很容易被过度拟合。

       2、我们用二元交叉熵对二进制分类进行分类。它的形式类似于取Bernoulli分布的负对数。

二元交叉熵的一般表达式:

                                       

 3. 二项分布(离散型)

        1、参数n和p的二项分布是n个独立实验序列中成功次数的离散概率分布。

        2、二项分布是通过指定预先选择的数目来考虑先验概率的分布。

 

二项分布就是重复n次独立的伯努利试验。 

 4.多贝努利分布,范畴分布(离散)

        1、多伯努利称为范畴分布,是一种概率扩展超过2

        2、交叉缠绕具有相同的形式,就像采取负对数的多伯努利分布。

5.多项式分布(离散),

范畴分布是多项式分布(Multinomial distribution)的一个特例,它与范畴分布的关系就像伯努利分布与二项分布之间的关系。

        1、多项式分布与伯努利分布与二项分布的关系相同。

6.β分布(连续)

贝塔分布(Beta Distribution) 是一个作为伯努利分布和二项式分布的共轭先验分布的密度函数,它指一组定义在 (0,1) 区间的连续概率分布。均匀分布是 Beta 分布的一个特例,即在 alpha=1、 beta=1 的分布。

     1、β分布共轭于二项式分布和Bernoulli分布。

     2、通过构造,我们可以更容易地利用已知的先验分布来得到后验分布。

     3、当β分布满足特殊情况时,均匀分布是相同的(alpha=1,β=1)。

7. 狄利克雷分布(连续型)

       狄利克雷分布(Dirichlet distribution)是一类在实数域以正单纯形(standard simplex)为支撑集(support)的高维连续概率分布,是 Beta 分布在高维情形的推广。在贝叶斯推断中,狄利克雷分布作为多项式分布的共轭先验得到应用,在机器学习中被用于构建狄利克雷混合模型。

       1、Dirichlet分布与多项式分布共轭。

       2、如果k=2时,则为Beta分布。

8.伽马分布(连续)

      1、伽马分布将是β分布,如果Gamma(a,1) / Gamma(a,1) + Gamma(b,1)Beta(a,b).

      2、Gamma 分布是统计学中的常见连续型分布,指数分布、卡方分布和 Erlang 分布都是它的特例。

 

9. 指数分布(连续型)

      指数分布可以用来表示独立随机事件发生的时间间隔,比如旅客进入机场的时间间隔、打进客服中心电话的时间间隔等等。当 alpha 等于 1 时,指数分布就是 Gamma 分布的特例。

10. 高斯分布(连续型)

       高斯分布或正态分布是最为重要的分布之一,它广泛应用于整个机器学习的模型中。例如,我们的权重用高斯分布初始化、我们的隐藏向量用高斯分布进行归一化等等。

        当正态分布的均值为 0、方差为 1 的时候,它就是标准正态分布,这也是我们最常用的分布。

11. 卡方分布(连续型)

       简单而言,卡方分布(Chi-squared)可以理解为,k 个独立的标准正态分布变量的平方和服从自由度为 k 的卡方分布。卡方分布是一种特殊的伽玛分布,是统计推断中应用最为广泛的概率分布之一,例如假设检验和置信区间的计算。

12. 学生 t-分布

      学生 t-分布(Student t-distribution)用于根据小样本来估计呈正态分布且变异数未知的总体,其平均值是多少。t 分布也是对称的倒钟型分布,就如同正态分布一样,但它的长尾占比更多,这意味着 t 分布更容易产生远离均值的样本。

 


 

 

这篇关于学习中的多种概率分布的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/540916

相关文章

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co

Java 中实现异步的多种方式

《Java中实现异步的多种方式》文章介绍了Java中实现异步处理的几种常见方式,每种方式都有其特点和适用场景,通过选择合适的异步处理方式,可以提高程序的性能和可维护性,感兴趣的朋友一起看看吧... 目录1. 线程池(ExecutorService)2. CompletableFuture3. ForkJoi

mss32.dll文件丢失怎么办? 电脑提示mss32.dll丢失的多种修复方法

《mss32.dll文件丢失怎么办?电脑提示mss32.dll丢失的多种修复方法》最近,很多电脑用户可能遇到了mss32.dll文件丢失的问题,导致一些应用程序无法正常启动,那么,如何修复这个问题呢... 在电脑常年累月的使用过程中,偶尔会遇到一些问题令人头疼。像是某个程序尝试运行时,系统突然弹出一个错误提

C++字符串提取和分割的多种方法

《C++字符串提取和分割的多种方法》在C++编程中,字符串处理是一个常见的任务,尤其是在需要从字符串中提取特定数据时,本文将详细探讨如何使用C++标准库中的工具来提取和分割字符串,并分析不同方法的适用... 目录1. 字符串提取的基本方法1.1 使用 std::istringstream 和 >> 操作符示

python展开嵌套列表的多种方法

《python展开嵌套列表的多种方法》本文主要介绍了python展开嵌套列表的多种方法,包括for循环、列表推导式和sum函数三种方法,具有一定的参考价值,感兴趣的可以了解一下... 目录一、嵌套列表格式二、嵌套列表展开方法(一)for循环(1)for循环+append()(2)for循环+pyPhWiFd

Python实现PDF与多种图片格式之间互转(PNG, JPG, BMP, EMF, SVG)

《Python实现PDF与多种图片格式之间互转(PNG,JPG,BMP,EMF,SVG)》PDF和图片是我们日常生活和工作中常用的文件格式,有时候,我们可能需要将PDF和图片进行格式互转来满足... 目录一、介绍二、安装python库三、Python实现多种图片格式转PDF1、单张图片转换为PDF2、多张图

电脑开机提示krpt.dll丢失怎么解决? krpt.dll文件缺失的多种解决办法

《电脑开机提示krpt.dll丢失怎么解决?krpt.dll文件缺失的多种解决办法》krpt.dll是Windows操作系统中的一个动态链接库文件,它对于系统的正常运行起着重要的作用,本文将详细介绍... 在使用 Windows 操作系统的过程中,用户有时会遇到各种错误提示,其中“找不到 krpt.dll”

python多种数据类型输出为Excel文件

《python多种数据类型输出为Excel文件》本文主要介绍了将Python中的列表、元组、字典和集合等数据类型输出到Excel文件中,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一.列表List二.字典dict三.集合set四.元组tuplepython中的列表、元组、字典

电脑报错cxcore100.dll丢失怎么办? 多种免费修复缺失的cxcore100.dll文件的技巧

《电脑报错cxcore100.dll丢失怎么办?多种免费修复缺失的cxcore100.dll文件的技巧》你是否也遇到过“由于找不到cxcore100.dll,无法继续执行代码,重新安装程序可能会解... 当电脑报错“cxcore100.dll未找到”时,这通常意味着系统无法找到或加载这编程个必要的动态链接库

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx