Tensorflow的VMC框架

flowket的Python项目详细描述


FlowKet-一个Python框架,用于Tensorflow之上的变分montecarlo模拟

FlowKet是我们运行量子多体系统变分蒙特卡罗模拟的框架。它支持用实数或复值参数表示参数化非规范化波函数的任何Keras模型,例如受限Boltzman机器和convnet。我们实现了一个标准的Markov链montecarlo(MCMC)能量梯度估计器,可以用来根据给定的哈密顿量来近似量子系统的基态。基于神经网络的波函数表示方法被证明是解决多体问题的一种很有前途的方法,其精度往往与其他竞争方法相匹配甚至超过。在

除了一个MCMC能量梯度估计器,我们还实现了新的神经自回归量子态波函数表示,它支持有效和精确的采样。通过克服对MCMC的依赖,我们的模型对于同样大小的模型可以更快地收敛,这使得我们可以将它们调整到数百万个参数,而不是以前的方法只有几千个参数。这将导致更好的精度和能力来研究更大和更复杂的系统。请在下面引用read our paperarXiv version),以获取有关此方法的更多详细信息。我们希望我们图书馆的用户能够采用我们的方法并应用于各种问题。如果您使用此代码库或应用我们的方法,请按以下方式引用我们的代码:

@article{PhysRevLett.124.020503,title={Deep Autoregressive Models for the Efficient Variational Simulation of Many-Body Quantum Systems},author={Sharir, Or and Levine, Yoav and Wies, Noam and Carleo, Giuseppe and Shashua, Amnon},journal={Phys. Rev. Lett.},volume={124},issue={2},pages={020503},numpages={6},year={2020},month={Jan},publisher={American Physical Society},doi={10.1103/PhysRevLett.124.020503},url={https://link.aps.org/doi/10.1103/PhysRevLett.124.020503}}

安装

FlowKet假设Tensorflow已经是环境的一部分。我们目前支持Tensorflow 1.10-1.14,但计划将支持范围扩展到所有>;=1.10+和2.0。在

建议通过PyPI安装流程:

^{pr2}$

或者,如果您希望扩展我们的库,您可以克隆我们的项目,而不是运行:

pip install -e /path/to/local/repo

基础教程

当我们正在编写一个关于使用框架的适当教程时,我们建议您仔细阅读示例文件。在

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

推荐PyPI第三方库


热门话题
我们应该在测试java代码时模拟黄瓜测试吗。我们应该在多大程度上使用黄瓜?   Hibernate Weblogic 10.3.4 java。lang.NoSuchMethodError:javax/persistence/spi/PersistenceUnitInfo。getValidationMode()Ljavax/persistence/ValidationMode;   java如何在main()中访问私有静态实例变量   java JMockit无法模拟类的公共final字段   java是否可以返回特定控制器操作的输出(html)?   java如何返回正确类型的列表?   rest-OpenUI/Swagger-java-to-API   java组织。springframework。豆。工厂NoSuchBeanDefinitionException或加载ApplicationContext失败   java使用POST将参数从JSP发送到Servlet   java如何监听特定的按钮按下和主视图用户交互?   java如何让gradle在本地maven repo中覆盖库?   如何在Java中“合并”两个URI?   java如何制作一个方法来移动数组中的字符?   使用来自java的命令启动powershell窗口   java垃圾收集器和匿名类   java如何为CellTable(GWT 2.4)中的ImageResourceCell创建PanelPopup?