我有一个离散分布说x=[1,2,4,5]; P(x)=[0.1, 0.2, 0.3, 0.4]。CDF 由 给出F(x)=[0.1, 0.3, 0.6, 1]。这里P和F数组表示给定 处的相应值x。就我而言,实际上P并不是离散分布,而是分段均匀分布x \in [1, 9],即x \in [1, 2], P(x)=0.1; x \in [2, 4], P(x)=0.1; x \in [4, 5], P(x)=0.3; x \in [5,9], P(x)=0.1
我想在不同点查询该分布的 CDF,例如y=[0.5, 1.6, 2.3, 3.4, 4.5, 5.7, 8.9]。现在F(y)=[0, 0.06, 0.13, 0.24, 0.45, 0.67, 0.99]。有没有一种方法(某些库函数)可以F(y)快速获得而无需手动计算?
就我而言,x和P是 shape 的值列表(二维数组)的数组(batch_size, num_bins),y也是 shape …
python vectorization probability-distribution pytorch cumulative-distribution-function