社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

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

kaggle竞赛宝典 • 1 年前 • 218 次点击  
↑↑↑关注后"星标"kaggle竞赛宝典
  kaggle竞赛宝典  
作者:Python,文章摘自算法进阶

你应该知道的LightGBM各种操作!

简介x

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

一、概率分布的关系概览


  • 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] 上具有相同的概率值,是简单概率分布。
2. 伯努利分布(离散)
  • 先验概率 p(x)不考虑伯努利分布。因此,如果我们对最大似然进行优化,那么我们很容易被过度拟合。

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

3. 二项分布(离散)
  • 参数为 n 和 p 的二项分布是一系列 n 个独立实验中成功次数的离散概率分布。
  • 二项式分布是指通过指定要提前挑选的数量而考虑先验概率的分布。
    """各分布的生成代码(算法进阶 附注):https://github.com/graykode/distribution-is-all-you-needCode by Tae-Hwan Hung(@graykode)"""import numpy as npfrom matplotlib import pyplot as plt
    import operator as opfrom 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()
4. 多伯努利分布,分类分布(离散)
  • 多伯努利称为分类分布。
  • 交叉熵和采取负对数的多伯努利分布具有相同的形式。
5. 多项式分布(离散)
多项式分布与分类分布的关系与伯努尔分布与二项分布的关系相同。
6. β分布(连续)
  • β分布与二项分布和伯努利分布共轭。
  • 利用共轭,利用已知的先验分布可以更容易地得到后验分布。
  • 当β分布满足特殊情况(α=1,β=1)时,均匀分布是相同的。
7. Dirichlet 分布(连续)
  • dirichlet 分布与多项式分布是共轭的。
  • 如果 k=2,则为β分布。
8. 伽马分布(连续)
  • 如果 gamma(a,1)/gamma(a,1)+gamma(b,1)与beta(a,b)相同,则 gamma分布为β分布。
  • 指数分布和卡方分布是伽马分布的特例。
9. 指数分布(连续)
指数分布是 α 为 1 时 γ 分布的特例。
10. 高斯分布(连续)
高斯分布是一种非常常见的连续概率分布。
11. 正态分布(连续)
正态分布为标准高斯分布,平均值为 0,标准差为 1。
12. 卡方分布(连续)
  • k 自由度的卡方分布是 k 个独立标准正态随机变量的平方和的分布。

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

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

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

 

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/158120
 
218 次点击