深度学习必掌握的 13 种概率分布

作者:Python,文章摘自算法进阶

简介x

深度学习从业者,你需要知道概率分布相关的知识。这里有一份最常见的基本概率分布教程,大多数和使用 python 库进行深度学习有关。

一、概率分布的关系概览

d1d78660011bdfb9f7fd63751dc6adde.jpeg

  • conjugate 意味着它有共轭分布的关系。

  • Multi-Class表示随机方差大于 2。

  • N Times意味着我们还考虑先验概率 P(X)。

  • 为了进一步了解概率,我建议阅读 [pattern recognition and machine learning,Bishop 2006]。

在贝叶斯概率论中,如果后验分布 p(θx)与先验概率分布 p(θ)在同一概率分布族中,则先验和后验称为共轭分布,先验称为似然函数的共轭先验。共轭先验维基百科在这里(https://en.wikipedia.org/wiki/Conjugate_prior)。无损原图可见:https://github.com/graykode/distribution-is-all-you-need/blob/master/overview.pptx

二、分布概率与特征

1. 均匀分布(连续)

均匀分布在 [a,b] 上具有相同的概率值,是简单概率分布。

d6090860147a56780ee21214baab0654.jpeg

2. 伯努利分布(离散)

  • 先验概率 p(x)不考虑伯努利分布。因此,如果我们对最大似然进行优化,那么我们很容易被过度拟合。

  • 利用二元交叉熵对二项分类进行分类。它的形式与伯努利分布的负对数相同。

5dee4b1dfd9511f5826904c4d17f1d6f.jpeg

3. 二项分布(离散)

  • 参数为 n 和 p 的二项分布是一系列 n 个独立实验中成功次数的离散概率分布。

  • 二项式分布是指通过指定要提前挑选的数量而考虑先验概率的分布。

"""
各分布的生成代码(算法进阶 附注):
https://github.com/graykode/distribution-is-all-you-need
Code by Tae-Hwan Hung(@graykode)
"""
import numpy as np
from matplotlib import pyplot as plt


import operator as op
from functools import reduce


def const(n, r):
    r = min(r, n-r)
    numer = reduce(op.mul, range(n, n-r, -1), 1)
    denom = reduce(op.mul, range(1, r+1), 1)
    return numer / denom


def binomial(n, p):
    q = 1 - p
    y = [const(n, k) * (p ** k) * (q ** (n-k)) for k in range(n)]
    return y, np.mean(y), np.std(y)


for ls in [(0.5, 20), (0.7, 40), (0.5, 40)]:
    p, n_experiment = ls[0], ls[1]
    x = np.arange(n_experiment)
    y, u, s = binomial(n_experiment, p)
    plt.scatter(x, y, label=r'$\mu=%.2f,\ \sigma=%.2f$' % (u, s))


plt.legend()
plt.savefig('graph/binomial.png')
plt.show()

eeca06784cde8d779d6b1a2faf17f572.jpeg

4. 多伯努利分布,分类分布(离散)

  • 多伯努利称为分类分布。

  • 交叉熵和采取负对数的多伯努利分布具有相同的形式。

f65bc4844b2321b034dcb00c11fb308b.jpeg

5. 多项式分布(离散)

多项式分布与分类分布的关系与伯努尔分布与二项分布的关系相同。

be2b6352be7735fc292db739b77e1b42.jpeg

6. β分布(连续)

  • β分布与二项分布和伯努利分布共轭。

  • 利用共轭,利用已知的先验分布可以更容易地得到后验分布。

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

2ab8c6970775ef36f987ea3dd95deb3b.jpeg

7. Dirichlet 分布(连续)

  • dirichlet 分布与多项式分布是共轭的。

  • 如果 k=2,则为β分布。

f096d5682a62048fad4d0c9660cb87cd.jpeg

8. 伽马分布(连续)

  • 如果 gamma(a,1)/gamma(a,1)+gamma(b,1)与beta(a,b)相同,则 gamma分布为β分布。

  • 指数分布和卡方分布是伽马分布的特例。

8208c6896bf876cff7be0c7c5f7585b8.jpeg

9. 指数分布(连续)

指数分布是 α 为 1 时 γ 分布的特例。

6c88af138090dd81ec16aebdfed66c47.jpeg

10. 高斯分布(连续)

高斯分布是一种非常常见的连续概率分布。

4a9db6eae84452b8ced499ede422b7bc.jpeg

11. 正态分布(连续)

正态分布为标准高斯分布,平均值为 0,标准差为 1。

ae2c8778535e0ec576bc914547e1275c.jpeg

12. 卡方分布(连续)

  • k 自由度的卡方分布是 k 个独立标准正态随机变量的平方和的分布。

  • 卡方分布是 β 分布的特例

2a358a9ca8a2ca204aa997c1012f766e.jpeg

13. t 分布(连续)

t 分布是对称的钟形分布,与正态分布类似,但尾部较重,这意味着它更容易产生远低于平均值的值。

7c13e5d971ee261ca2ef342be63139ca.jpeg

代码:https://github.com/graykode/distribution-is-all-you-need/

推荐阅读:

我的2022届互联网校招分享

我的2021总结

浅谈算法岗和开发岗的区别

互联网校招研发薪资汇总

2022届互联网求职现状,金9银10快变成铜9铁10!!

公众号:AI蜗牛车

保持谦逊、保持自律、保持进步

9a1104020ee893eb6b170cd26b63bbfa.jpeg

发送【蜗牛】获取一份《手把手AI项目》(AI蜗牛车著)

发送【1222】获取一份不错的leetcode刷题笔记

发送【AI四大名著】获取四本经典AI电子书

猜你喜欢

转载自blog.csdn.net/qq_33431368/article/details/132529969