置信序列与一致边界

confseq的Python项目详细描述


置信序列和均匀边界

这个库支持计算均匀边界,置信序列, 总是有效的p值。这些结构在顺序A/B中很有用 测试、最佳臂识别和其他顺序统计 程序。主要参考文献是

S.R.霍华德,A.拉姆达斯,J.麦考利夫,J.塞孔。统一、非参数, 非渐近置信 序列。预印本,arxiv:1810.08240。

此外,该库还包括一些分位数置信度函数 基于

的序列和A/B测试

S.R.霍华德,A.拉姆达斯。分位数的序贯估计及其应用 至A/B-测试和最佳ARM 标识。预印本,arxiv:1906.09712。

这个图书馆处于早期开发阶段,不应考虑 稳定的。我只在MacOS Mojave上的Python3.7.0上测试过它。这个 实现是在C++中的,编译器需要用C++ 14来支持编译。 包裹。

安装python包

运行pip3 install confseq

演示

在随机试验中估计平均治疗效果

demo/ate_demo.py演示如何计算平均值的置信序列 一项随机试验的治疗效果,其潜在疗效有限 具有始终有效的p值序列。该方法基于 并利用伽玛指数混合边界。此演示需要 numpypandas

分位数置信序列

demo/quantiles.py演示如何使用一些包含的边界来 基于 身份证样本。该文件包含一个函数,用于估计单个 分位数,以及同时估计所有分位数的函数 分位数和时间上的误差控制一致。

均匀边界

confseq.bounders模块实现了 置信序列纸。

  • 有四个混合边界。这些由函数实现 <;type>;_log_mixed()<;type>;_mixed_bound(),其中<;type>;正常(命题4和命题5),伽马指数(命题8), 伽马泊松(命题9),或贝塔二项(命题6和7)。

    • <;type>;_log_mixed(s,v,…)返回混合的对数 当被叫来与s_t,鞅和v_t,the 内在时间过程。这个值的指数的倒数是 始终有效的p值。这些函数在 纸.<
    • <;type>;_mixed_bound(v,alpha,…)返回具有 最大α交叉概率,在固有时间v下计算。

    每个函数都有另一个必需的参数v_opt和一个可选的 参数alpha_opt=0.05。这些参数用于设置调整 每种混合物的参数,在文中用rho或r表示,优化 内禀时间具有交叉概率alpha_opt的均匀边界 v_opt。本文第3.5节讨论了这种调谐。

    伽马指数和伽马泊松混合物也需要一个标度 参数c。β二项混合物需要范围参数gh。最后,函数接受 可选的布尔参数是单向的,默认情况下是真的。如果 false,使用这些混合物的双面变体(命题4 6)

  • 聚几何缝合边界(见定理1和随后的例子) 通过poly_-stitching_-bound实现。除了valpha,这个 函数需要调整参数v_min和可选参数 cseta,所有这些都记录在论文中。

  • 该模块还包括一个bernoulli_confidence_sequence函数 计算任意有界分布均值的置信序列 利用次伯努利条件支持。观察结果必须 按比例缩放,使支架在单位间隔[0,1]内。

所有函数都接受numpy数组并执行矢量化操作。

分位数界限

confseq.quantiles模块实现两个分位数的一致置信 分位数纸上的序列。

  • 经验过程_lil_bound基于定理2,可用于 构造分位数的重对数率置信序列,其中 所有分位数的置信半径(分位数空间)都是常数。这个 也可用于运行 第7.2节
  • 双缝合界限基于定理3,可用于构造 其中置信半径(分位数)为 空间)变化,对于接近0和1的极端分位数,变得更小。

最后,分位数ab_p_值实现 假设两个总体对于某个分位数具有相等的值,基于 定理5。这个定理涵盖了除等式以外的零假设的检验,如 以及单面测试,但尚未实现。

C++库

下面的实现是在单个文件中,只在头文件中添加C++库 src/confseq/uniform_bounders.h。文件顶部定义了 接口镜像上述python接口。下面是一个 面向对象的接口对于更复杂的工作很有用。这个 confseq.bounderspython模块是由 pybind11

单元测试

<> >运行<代码> --C/PAT/OT/CONSEQ /测试RunTest<(代码)>以运行C++单元测试。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JPQL中默认查询中的java错误列   java在Swing中设置JComboBox的背景   rest API数据的编码格式,如何在java中解码   java使用RandomAccessFile在中间插入文本之后会删除一些文本   Jackson ObjectMapper JSON to Java对象返回空值   java如何在所有活动上创建一个共享线程?   java无法将UTC转换为IST,它仍然只返回UTC   java main(String[]args)与String[]args={….}不同?   java正则表达式从下面的页面中提取段落   在linux中使用http_代理变量的代理背后的Java应用程序   java视频不会在第二个活动中播放   java将REST响应转换回服务响应   从spring批处理中的java类读取数据   线程“main”中的java异常:0   包含Java containsAll在给定列表时不返回true   安全java许可证实施,创建激活密钥的算法?   java Play框架:将参数传递给自定义标记   java Android Studio从URL获取JSON致命异常   java在安卓中以EditText保存信息