邻域算法优化与集成评价
neighborhood的Python项目详细描述
python 3“邻域算法”直接搜索的实现 优化与贝叶斯集成评价。简言之,A 基于voronoi多边形的最近邻插值用于 将失配(搜索)和后验概率(评估)插值到 允许对高维问题进行有效的采样和集成。 参考文献中提供了理论和实现的详细信息。
4d罗森布鲁克目标函数的搜索总体示例。图像 包含1000次邻域迭代中收集的10000个样本 算法直接搜索,使用num_samp=10和num_resamp=5。这个 真正的最小值是0在(1, 1, 1, 1),而最好的示例是 0.0113位于((0.976, 0.953, 0.908, 0.824)。这个结果还在继续 收敛到更大的样本量(但是这个图没有那么有趣,因为 密度收敛到一个点!)
要生成上面的示例图,可以运行内部演示, 喜欢这样:
importneighborhoodasnbrnbr.demo_search(ndim=4,nsamp=10,nresamp=5,niter=500)
等效地,您可以执行以下操作:
importneighborhoodasnbrnum_dim=4srch=nbr.Searcher(objective=nbr.rosenbrock,limits=[(-1.5,1.5)for_inrange(num_dim)],num_samp=10,num_resamp=5,maximize=False,verbose=True)srch.update(500)srch.plot()
状态
优化实施,集成评估正在进行中。
测试
此项目使用pytest作为 单元测试。目的不是劝诫,而是提供合理的 保证一切如广告所示。要跑,只要打电话 pytest --verbose来自此包中的某个位置。
释放
发布版本在存储库中标记为发行版, 并上传到pypi。执行此操作的最小命令是:
# update PyPI-readable README pandoc --from=markdown --to=rst --output=README.rst README.md # build with setuptools python3 setup.py sdist bdist_wheel # upload to PyPI test server (then check it out) twine upload --repository-url https://test.pypi.org/legacy/ dist/* # upload to PyPI twine upload dist/* # tag release in git repo git tag -a X.X.X -m "vX.X.X" git push origin --tags
参考文献
- Sambridge,M.(1999年)。近邻地球物理反演 算法一,搜索一个参数空间。地球物理杂志 国际,138(2),479-494. http://doi.org/10.1046/j.1365-246X.1999.00876.x
- Sambridge,M.(1999年)。带邻域的地球物理反演 算法-
- 评估合奏。Geophys,国际法院,138727-746. http://doi.org/10.1046/j.1365-246x.1999.00900.x