From e64a6beacc0a4f3ffc89976312028aaedcd53ec5 Mon Sep 17 00:00:00 2001 From: dasen Date: Fri, 21 Apr 2023 15:03:34 +0800 Subject: [PATCH 1/5] add Geometric API's cn doc --- docs/api/paddle/distribution/Geometric_cn.rst | 217 ++++++++++++++++++ docs/api/paddle/distribution/Overview_cn.rst | 1 + 2 files changed, 218 insertions(+) create mode 100644 docs/api/paddle/distribution/Geometric_cn.rst diff --git a/docs/api/paddle/distribution/Geometric_cn.rst b/docs/api/paddle/distribution/Geometric_cn.rst new file mode 100644 index 00000000000..dc6f100ce10 --- /dev/null +++ b/docs/api/paddle/distribution/Geometric_cn.rst @@ -0,0 +1,217 @@ +.. _cn_api_distribution_Geometric: + +Geometric +------------------------------- + +.. py:class:: paddle.distribution.Geometric(probs) +几何分布 + +数学公式: + +.. math:: + $P(X=k) = (1-p)^{k-1}p$ + +上面数学公式中: + +:math:`p`:表示成功的概率。 + +:math:`X`:表示进行了多少次试验才获得第一次成功。 + +:math:`k`:表示实验次数,是一个正整数 + + +参数 +:::::::::::: + + - **probs** (float|Tensor) - 几何分布成功概率参数。数据类型为float、Tensor。 + +代码示例 +:::::::::::: + +COPY-FROM: paddle.distribution.Geometric + +属性 +::::::::: + +mean +''''''''' + +均值 + +数学公式: + +.. math:: + mean = \frac{1}{p}$ + +上面数学公式中: + +:math:`p`:试验成功的概率。 + +variance +''''''''' + +方差 + +数学公式: + +.. math:: + variance = \frac{1-p}{p^2}$ + +上面数学公式中: + +:math:`p`:试验成功的概率。 + +stddev +''''''''' + +标准差 + +数学公式: + +.. math:: + stddev = $\sqrt{variance} = \sqrt{\frac{1-p}{p^2}} = \frac{\sqrt{1-p}}{p}$ + +上面数学公式中: + +:math:`p`:试验成功的概率。 + + +方法 +::::::::: + +pmf(k) +''''''''' +几何分布的概率质量函数。 + +**参数** + + - **k** (int) - 几何分布的随机变量。 + +数学公式: + +.. math:: + pmf(X=k) = (1-p)^{k-1} p, \quad k=1,2,3,\ldots + +上面数学公式中: + +:math:`p`:试验成功的概率。 + +:math:`k`:几何分布的随机变量。 + +**返回** + + - **Tensor** - value 第一次成功所需的试验次数k的概率。 + +log_pmf(k) +''''''''' +几何分布的对数概率质量函数。 + +**参数** + + - **k** (int) - 几何分布的随机变量。 + +数学公式: + +.. math:: + + \log pmf(X = k) = \log(1-p)^k p + +上面数学公式中: + +:math:`p`:试验成功的概率。 + +:math:`k`:几何分布的实验次数。 + +**返回** + + - **Tensor** - value 第一次成功所需的试验次数k的概率的对数。 + +cdf(k) +''''''''' +几何分布的累积分布函数 + +**参数** + + - **k** (int) - 几何分布的随机变量。 + +数学公式: + +.. math:: + + cdf(X \leq k) = 1 - (1-p)^k, \quad k=0,1,2,\ldots + +上面的数学公式中: + +:math:`p`:试验成功的概率。 + +:math:`k`:几何分布的随机变量。 + +**返回** + + - Tensor: value 随机变量X小于或等于某个值x的概率。 + +entropy() +''''''''' +几何分布的信息熵。 + +数学公式: + +.. math:: + + entropy() = -\left[\frac{1}{p} \log p + \frac{1-p}{p^2} \log (1-p) \right] + +上面数学公式中: + +:math:`p`:试验成功的概率。 + +kl_divergence(other) +''''''''' +两个 Geometric 分布之间的 KL 散度。 + +**参数** + + - **other** (Geometric) - Geometric 的实例。 + +数学公式: + +.. math:: + KL(P \| Q) = \frac{p}{q} \log \frac{p}{q} + \log (1-p) - \log (1-q) + +上面的数学公式中: + +:math:`P`:Geometric 几何分布实例。 + +:math:`Q`:Geometric 几何分布实例。 + +:math:`p`:Geometric_p 分布试验成功的概率。 + +:math:`q`:Geometric_q 分布试验成功的概率。 + +**返回** + + - Tensor: 两个几何分布之间的 KL 散度。 + +sample(shape) +''''''''' +随机采样,生成指定维度的样本。 + +**参数** + + - **shape** (tuple(int)) - 采样的样本维度。 + +**返回** + + - **Tensor** - 预先设计好维度的样本数据。 + + +rsample(shape) +''''''''' +重参数化采样。 + +**参数** + + - **shape** (tuple(int)) - 重参数化采样的样本维度。 + +**返回** + + - **Tensor** - 预先设计好维度的样本数据。 diff --git a/docs/api/paddle/distribution/Overview_cn.rst b/docs/api/paddle/distribution/Overview_cn.rst index fda86da844a..c84f941e306 100644 --- a/docs/api/paddle/distribution/Overview_cn.rst +++ b/docs/api/paddle/distribution/Overview_cn.rst @@ -34,6 +34,7 @@ paddle.distribution 目录下包含飞桨框架支持的随机变量的概率分 " :ref:`Laplace `", "Laplace 概率分布类" " :ref:`LogNormal ` ", "LogNormal 概率分布类" " :ref:`Gumbel ` ", "Gumbel 概率分布类" + " :ref:`Geometric ` ", "Geometric 概率分布类" .. _about_distribution_transform: From f4d57a49c37c2136b9bb9394010586d3b58edabb Mon Sep 17 00:00:00 2001 From: dasen Date: Thu, 27 Apr 2023 22:14:49 +0800 Subject: [PATCH 2/5] fix docs of geometric --- docs/api/paddle/distribution/Geometric_cn.rst | 88 ++++++++++++------- 1 file changed, 56 insertions(+), 32 deletions(-) diff --git a/docs/api/paddle/distribution/Geometric_cn.rst b/docs/api/paddle/distribution/Geometric_cn.rst index dc6f100ce10..73be309cb9c 100644 --- a/docs/api/paddle/distribution/Geometric_cn.rst +++ b/docs/api/paddle/distribution/Geometric_cn.rst @@ -4,20 +4,21 @@ Geometric ------------------------------- .. py:class:: paddle.distribution.Geometric(probs) -几何分布 -数学公式: +在概率论和统计学中,几何分布是一种离散概率分布,由一个正形状参数参数化,用 probs 表示。在n次伯努利试验中,需要k次试验才能得到第一次成功的概率。 + +详细来说就是:前k-1次失败,第k次成功的概率,概率密度函数如下: .. math:: - $P(X=k) = (1-p)^{k-1}p$ + P(X=k) = (1-p)^{k-1}p 上面数学公式中: -:math:`p`:表示成功的概率。 + :math:`p`:表示成功的概率。 -:math:`X`:表示进行了多少次试验才获得第一次成功。 + :math:`X`:表示进行了多少次试验才获得第一次成功。 -:math:`k`:表示实验次数,是一个正整数 + :math:`k`:表示实验次数,是一个正整数 参数 @@ -35,46 +36,42 @@ COPY-FROM: paddle.distribution.Geometric mean ''''''''' - -均值 +几何分布的均值。 数学公式: .. math:: - mean = \frac{1}{p}$ + mean = \frac{1}{p} 上面数学公式中: -:math:`p`:试验成功的概率。 + :math:`p`:试验成功的概率。 variance ''''''''' - -方差 +几何分布的方差。 数学公式: .. math:: - variance = \frac{1-p}{p^2}$ + variance = \frac{1-p}{p^2} 上面数学公式中: -:math:`p`:试验成功的概率。 + :math:`p`:试验成功的概率。 stddev ''''''''' - -标准差 +几何分布的标准差。 数学公式: .. math:: - stddev = $\sqrt{variance} = \sqrt{\frac{1-p}{p^2}} = \frac{\sqrt{1-p}}{p}$ + stddev = \sqrt{variance} = \sqrt{\frac{1-p}{p^2}} = \frac{\sqrt{1-p}}{p} 上面数学公式中: -:math:`p`:试验成功的概率。 - + :math:`p`:试验成功的概率。 方法 ::::::::: @@ -94,14 +91,18 @@ pmf(k) 上面数学公式中: -:math:`p`:试验成功的概率。 + :math:`p`:试验成功的概率。 -:math:`k`:几何分布的随机变量。 + :math:`k`:几何分布的随机变量。 **返回** - **Tensor** - value 第一次成功所需的试验次数k的概率。 +**代码示例** + +COPY-FROM: paddle.distribution.Geometric + log_pmf(k) ''''''''' 几何分布的对数概率质量函数。 @@ -118,17 +119,21 @@ log_pmf(k) 上面数学公式中: -:math:`p`:试验成功的概率。 + :math:`p`:试验成功的概率。 -:math:`k`:几何分布的实验次数。 + :math:`k`:几何分布的实验次数。 **返回** - **Tensor** - value 第一次成功所需的试验次数k的概率的对数。 +**代码示例** + +COPY-FROM: paddle.distribution.Geometric + cdf(k) ''''''''' -几何分布的累积分布函数 +几何分布的累积分布函数。 **参数** @@ -142,14 +147,18 @@ cdf(k) 上面的数学公式中: -:math:`p`:试验成功的概率。 + :math:`p`:试验成功的概率。 -:math:`k`:几何分布的随机变量。 + :math:`k`:几何分布的随机变量。 **返回** - Tensor: value 随机变量X小于或等于某个值x的概率。 +**代码示例** + +COPY-FROM: paddle.distribution.Geometric + entropy() ''''''''' 几何分布的信息熵。 @@ -162,7 +171,11 @@ entropy() 上面数学公式中: -:math:`p`:试验成功的概率。 + :math:`p`:试验成功的概率。 + +**代码示例** + +COPY-FROM: paddle.distribution.Geometric kl_divergence(other) ''''''''' @@ -179,18 +192,22 @@ kl_divergence(other) 上面的数学公式中: -:math:`P`:Geometric 几何分布实例。 + :math:`P`:Geometric 几何分布实例。 -:math:`Q`:Geometric 几何分布实例。 + :math:`Q`:Geometric 几何分布实例。 -:math:`p`:Geometric_p 分布试验成功的概率。 + :math:`p`:Geometric_p 分布试验成功的概率。 -:math:`q`:Geometric_q 分布试验成功的概率。 + :math:`q`:Geometric_q 分布试验成功的概率。 **返回** - Tensor: 两个几何分布之间的 KL 散度。 +**代码示例** + +COPY-FROM: paddle.distribution.Geometric + sample(shape) ''''''''' 随机采样,生成指定维度的样本。 @@ -203,10 +220,13 @@ sample(shape) - **Tensor** - 预先设计好维度的样本数据。 +**代码示例** + +COPY-FROM: paddle.distribution.Geometric rsample(shape) ''''''''' -重参数化采样。 +重参数化采样,生成指定维度的样本。 **参数** @@ -215,3 +235,7 @@ rsample(shape) **返回** - **Tensor** - 预先设计好维度的样本数据。 + +**代码示例** + +COPY-FROM: paddle.distribution.Geometric From efff112358c1afe2b561d8453f41720e64c6c166 Mon Sep 17 00:00:00 2001 From: dasen Date: Fri, 28 Apr 2023 13:54:23 +0800 Subject: [PATCH 3/5] fix code example --- docs/api/paddle/distribution/Geometric_cn.rst | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/api/paddle/distribution/Geometric_cn.rst b/docs/api/paddle/distribution/Geometric_cn.rst index 73be309cb9c..86dc46e5bf4 100644 --- a/docs/api/paddle/distribution/Geometric_cn.rst +++ b/docs/api/paddle/distribution/Geometric_cn.rst @@ -101,7 +101,7 @@ pmf(k) **代码示例** -COPY-FROM: paddle.distribution.Geometric +COPY-FROM: paddle.distribution.Geometric.pmf log_pmf(k) ''''''''' @@ -129,7 +129,7 @@ log_pmf(k) **代码示例** -COPY-FROM: paddle.distribution.Geometric +COPY-FROM: paddle.distribution.Geometric.log_pmf cdf(k) ''''''''' @@ -157,7 +157,7 @@ cdf(k) **代码示例** -COPY-FROM: paddle.distribution.Geometric +COPY-FROM: paddle.distribution.Geometric.cdf entropy() ''''''''' @@ -175,7 +175,7 @@ entropy() **代码示例** -COPY-FROM: paddle.distribution.Geometric +COPY-FROM: paddle.distribution.Geometric.entropy kl_divergence(other) ''''''''' @@ -206,7 +206,7 @@ kl_divergence(other) **代码示例** -COPY-FROM: paddle.distribution.Geometric +COPY-FROM: paddle.distribution.Geometric.kl_divergence sample(shape) ''''''''' @@ -222,7 +222,7 @@ sample(shape) **代码示例** -COPY-FROM: paddle.distribution.Geometric +COPY-FROM: paddle.distribution.Geometric.sample rsample(shape) ''''''''' @@ -238,4 +238,4 @@ rsample(shape) **代码示例** -COPY-FROM: paddle.distribution.Geometric +COPY-FROM: paddle.distribution.Geometric.rsample From e8d5f3522e4baa6afe62846e0c27bf6a9a09d904 Mon Sep 17 00:00:00 2001 From: dasen Date: Wed, 10 May 2023 11:05:36 +0800 Subject: [PATCH 4/5] code-style --- docs/api/paddle/distribution/Geometric_cn.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/api/paddle/distribution/Geometric_cn.rst b/docs/api/paddle/distribution/Geometric_cn.rst index 86dc46e5bf4..b6c06db4515 100644 --- a/docs/api/paddle/distribution/Geometric_cn.rst +++ b/docs/api/paddle/distribution/Geometric_cn.rst @@ -97,7 +97,7 @@ pmf(k) **返回** - - **Tensor** - value 第一次成功所需的试验次数k的概率。 + - **Tensor** - value 第一次成功所需试验次数k的概率。 **代码示例** From 7299aaf080cdf3e77b0712c4b53b0060940f69f2 Mon Sep 17 00:00:00 2001 From: dasen Date: Tue, 16 May 2023 10:31:38 +0800 Subject: [PATCH 5/5] fix docs-code style --- docs/api/paddle/distribution/Geometric_cn.rst | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/api/paddle/distribution/Geometric_cn.rst b/docs/api/paddle/distribution/Geometric_cn.rst index b6c06db4515..4e29cdf0535 100644 --- a/docs/api/paddle/distribution/Geometric_cn.rst +++ b/docs/api/paddle/distribution/Geometric_cn.rst @@ -5,9 +5,9 @@ Geometric .. py:class:: paddle.distribution.Geometric(probs) -在概率论和统计学中,几何分布是一种离散概率分布,由一个正形状参数参数化,用 probs 表示。在n次伯努利试验中,需要k次试验才能得到第一次成功的概率。 +在概率论和统计学中,几何分布是一种离散概率分布,由一个正形状参数参数化,用 probs 表示。在 n 次伯努利试验中,需要 k 次试验才能得到第一次成功的概率。 -详细来说就是:前k-1次失败,第k次成功的概率,概率密度函数如下: +详细来说就是:前 k-1 次失败,第 k 次成功的概率,概率密度函数如下: .. math:: P(X=k) = (1-p)^{k-1}p @@ -24,7 +24,7 @@ Geometric 参数 :::::::::::: - - **probs** (float|Tensor) - 几何分布成功概率参数。数据类型为float、Tensor。 + - **probs** (float|Tensor) - 几何分布成功概率参数。数据类型为 float、Tensor。 代码示例 :::::::::::: @@ -97,7 +97,7 @@ pmf(k) **返回** - - **Tensor** - value 第一次成功所需试验次数k的概率。 + - **Tensor** - value 第一次成功所需试验次数 k 的概率。 **代码示例** @@ -125,7 +125,7 @@ log_pmf(k) **返回** - - **Tensor** - value 第一次成功所需的试验次数k的概率的对数。 + - **Tensor** - value 第一次成功所需的试验次数 k 的概率的对数。 **代码示例** @@ -153,7 +153,7 @@ cdf(k) **返回** - - Tensor: value 随机变量X小于或等于某个值x的概率。 + - Tensor: value 随机变量 X 小于或等于某个值 x 的概率。 **代码示例**