主持人采样器方便层

uhammer的Python项目详细描述


uhammeremcee提供了一个便利层。

功能:uhammer

  • 提供简化的API。
  • 在多核上运行或使用mpi运行之间不需要代码更改。
  • 修复了emcee/schwimmbad中mpi池的一些问题。
  • 当分配的节点/核心不适合指定时打印诊断消息 步行机或其他并行化相关设置的数目。
  • 可以将工作机特定的输出捕获到单独的文件。
  • 实现采样器状态的持久化,并支持以后继续采样。
  • 可以显示动画进度条。

示例用法

要使用uhammer,您需要:

  • 用于声明 要从中采样的参数。
  • 一个名为lnprob的函数,它接受一个parameters对象并可能 额外的论点。此函数返回计算的 后验概率。
  • 最后,调用sample运行采样器。
importtimeimportnumpyasnpfromuhammerimportParameters,samplesigma=.5defgen_data():a0=.5b0=.5c0=1x=np.linspace(-2,2,100)y_measured=a0+b0*x+c0*x**2+sigma*np.random.randn(*x.shape)returnx,y_measuredp=Parameters()p.add("a",(0,1))p.add("b",(0,1))p.add("c",(0,2))deflnprob(p,x,y_measured):time.sleep(.0002)y=p.a+p.b*x+p.c*x**2diff=(y-y_measured)/sigmareturn-np.dot(diff.T,diff)/2n_samples=15000n_walkers_per_param=200samples,lnprobs=sample(lnprob,p,args=gen_data(),n_walkers_per_param=n_walkers_per_param,n_samples=n_samples,show_progress=True,show_output=False,)print()print(samples[5000:].mean(axis=0))
$ python examples/sample_line_fit.py
uhammer: perform 25 steps of emcee sampler
✗ passed: 00:00:11.2 left: 00:00:00.0 - [∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣]

[0.52389808 0.53415134 1.01585175]

学分

这个包是用Cookiecutteruweschmitt/cookiecutter-pypackage项目模板创建的。

历史

0.4.0(2019-07-03)

  • 忽略参数的起始值。没有很好地使用emcee算法。

0.3.2(2019-05-24)

  • 关于欧拉的报告少了些闲聊,也简单了些。现有进度条 弄乱了lsf输出文件。现在我们以最小时间间隔报告 至少30秒。

0.3.1(2019-05-22)

  • 已从安装依赖项中删除mpipool,否则安装始终需要 一个有效的MPI设置。在并行MPI模式下运行时,仍然需要mpirpol

0.3.0(2019-05-22)

  • 样本函数现在返回两个数组:样本和相关的对数概率
  • 参数。add现在有一个可选参数用于提供起始值。
  • 加载样本函数允许从保存的采样器文件中提取样本。
  • 捕获输出和继续采样的参数替换为两个 参数show_outputoutput_prefix
  • 修正了在continue_sampling函数中输出记录的错误。
  • 使用mpipoollibrary now+added test对基于mpi的并行采样进行测试。

0.2.13(2019-05-15)

  • 修复并行模式下的持久pickler错误

0.2.12(2019-05-02)

  • MPI的小调整
  • 修正了emcee 3 dev版本

0.2.11(2019-04-30)

  • 关闭MPI池以防工作进程抛出异常,然后 此修复程序mpirun将挂起。
  • 修复了使用mpi运行时捕获输出文件名的处理问题

0.2.10(2019-04-19)

  • 修复删除标记文件时的竞争条件
  • 停用有关丢失MPI4PY的不必要警告

0.2.9(2019-04-16)

  • 在Euler节点上运行时不显示ProgressBar
  • 适用于Python3.7

0.2.8(2019-04-12)

  • 修复以使用Emcee 3的开发版本

0.2.7(2019-03-20)

  • 解决并行模式下电容输出的问题
  • 出现未处理的异常时停止进度条

0.2.6(2019-03-20)

  • 修复setup.py中python 3.7的依赖关系

0.2.5(2019-03-20)

  • 修复requirements\dev.txt中的包查找
  • 修正输出重定向失败时错误处理的错误。

0.2.4(2018-10-29)

  • 固定采样器输出行的顺序。

0.2.3(2018-10-24)

  • 检查omp_num_线程以警告可能的超额订阅。
  • 更好的后功能酸洗支持。

0.2.2(2018-10-11)

  • 如果Uhammer在Euler上的全节点上运行,则修复检测。
  • 如果无法直接写入fid 1,则不显示状态栏。
  • 抑制来自MPI的一些不适当的错误消息,即使 Uhammer不使用mpirun运行。
  • 固定IP检查以检测Uhammer是否在Euler上运行。

0.2.1(2018-09-28)

  • 由于Python2支持的实现而导致的回归修复。

0.2.0(2018-09-28)

  • 引入了Python2支持。

0.1.0(2018-08-23)

  • 初始版本。

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

推荐PyPI第三方库


热门话题
java是否可以创建一个正则表达式来查找与模式不匹配的字符串?   使用“debugUnreturnedConnectionStackTraces”进行java调试连接丢失   java如何在openLDAP中禁用/启用用户帐户?   java无法从jsoup api获取某些类   java无法从APK提取XML文件   如何在linux命令行中替换多个文件中的字符串   java学生班。如何根据单位输入打印成绩?   java有没有办法将Struts配置为绑定null而不是空字符串?   python使用OpenCV[Java]检测简单几何形状   java文件。isFile()和文件。isDirectory()返回false   java Fetch有条件地加入hibernate,还是将实体设计更改为子实体上的条件Fetch?   java lombok@Data generated setter是否对成员对象(如映射)执行深度复制?   java如何使JLabel从下一行开始   java Gradle依赖解决了配置文件的问题