Home Technology peripherals AI New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress

New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress

Apr 24, 2023 pm 09:16 PM
calculate quantum

After four months, another collaborative work between ByteDance Research and Chen Ji’s research group at the School of Physics at Peking University has been published in top international publications Nature Communications: the paper "Towards the ground state of molecules via diffusion Monte Carlo on neural networks 》Combines the neural network with the diffusion Monte Carlo method, greatly improving the computational accuracy, efficiency and system scale of the neural network method in quantum chemistry-related tasks, becoming the latest SOTA.

New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress


  • Paper link:
    ​https://www.nature.com/articles/s41467-023-37609-3​
  • ##Code address:
    ##​https://github.com/bytedance/jaqmc​
  • Introduction

The author applies the trial wave function based on the neural network to the diffusion Monte Carlo method (Diffusion Monte Carlo, or DMC) of the fixed node surface to accurately calculate atomic and molecular systems with different electronic properties.

The diffusion Monte Carlo method is one of the commonly used methods in the field of quantum chemistry to accurately calculate the ground state energy of molecules and materials. By combining it with the diffusion Monte Carlo method, the authors significantly improved the computational accuracy and efficiency of the neural network SOTA method in quantum chemistry. In addition, the author also proposed an extrapolation method based on empirical linear relationships, which greatly improved the calculation of molecular binding energy. Overall, this computational framework serves as a high-precision method for solving quantum many-body problems and provides a more powerful tool for in-depth understanding of the properties of chemical molecules.

Quantum Monte Carlo method based on neural network

New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress

Since 2018, multiple research groups have applied neural networks to variable In the Variational Monte Carlo method (Variational Monte Carlo, or VMC) [1,2,3], more accurate molecular ground state energy is obtained with the help of the powerful expression ability of neural networks. When this work was published in 2022, the SOTA work in the neural network-based variational Monte Carlo method was FermiNet [2] proposed by DeepMind in 2019, which was able to obtain very accurate results on a smaller scale system. However, the accuracy of the variational Monte Carlo method is limited by the expression ability of the neural network, and there will be increasingly obvious accuracy problems when dealing with larger systems. In addition, this type of method converges very slowly when dealing with larger systems, posing a huge challenge to computing resources.

The diffusion Monte Carlo method is one of the classic high-precision algorithms in the field of quantum chemistry. It has excellent characteristics such as high accuracy, good parallelizability, and is suitable for large-scale calculations. In addition, diffusion Monte Carlo can break through the limitations of the expression ability of neural networks and use projection algorithms to surpass the accuracy of the variational Monte Carlo method.

In this work, the author combines SOTA's neural network (FermiNet) as a trial wave function with the diffusion Monte Carlo method. The new calculation method significantly improves the accuracy and reduces the number of required calculation steps compared to FermiNet. The diffusion Monte Carlo software designed and implemented in this work is neural network friendly, GPU friendly, and parallel friendly. It can be combined with a wide range of neural network wave functions to automatically improve its accuracy and efficiency.

Calculation results

1. Atom

Use neural network to perform calculation on large molecular systems During quantum Monte Carlo calculations, due to limitations in computing power, the expression capabilities of the neural networks that can be used are also subject to certain limitations. To simulate this scenario, the authors used only two layers of neural networks to study the second and third rows of atoms. The calculation results show that as the system becomes larger, the accuracy of the variational Monte Carlo method becomes worse and worse, while the accuracy improvement brought by the diffusion Monte Carlo method becomes more and more obvious.

New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress

2. Molecule

The author also verified the effectiveness of the neural network-based diffusion Monte Carlo method on a series of molecular systems, including nitrogen molecules, cyclobutadiene and double water molecules. Significant improvements in computational accuracy were observed on all tested systems.

New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress

3. Benzene ring and biphenyl ring

This work Before its publication, the neural network wave function method based on variational Monte Carlo in the field of quantum chemistry had only dealt with small molecules within 30 electrons. This work applies the neural network wave function method to systems with 42 to 84 electrons, namely benzene rings and biphenyl rings, for the first time. The calculation results show that the diffusion Monte Carlo method is significantly better than the variational Monte Carlo method in accuracy, and can achieve the same or better accuracy with one order of magnitude fewer calculation steps.

New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress

New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress

##4. Linear relationship and extrapolation method

When the author examined the energy corresponding to different training stages of the neural network, he found that the calculation results of variational Monte Carlo and diffusion Monte Carlo were empirical in many systems. linear relationship (left picture below). Using this linear relationship to extrapolate the dissociation energy calculation of the diphenyl ring significantly improves the calculation accuracy and obtains results that are consistent with chemical experiments (right picture below).

New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress

Conclusion and Outlook

This work shows that the diffusion Monte Carlo method based on neural networks is superior in both accuracy and efficiency. for the variational Monte Carlo method. The author's open-source diffusion Monte Carlo code can be quickly combined with the continuously innovative neural networks [4,5] in the field of quantum chemistry to empower the research community. In addition, the diffusion Monte Carlo method can also be combined with a series of methods such as periodic neural networks [6] and neural networks with pseudopotentials [7] that deal with real solids to improve computing effects on corresponding tasks.

The above is the detailed content of New research reveals the potential of quantum Monte Carlo to surpass neural networks in breaking through limitations, and a Nature sub-issue details the latest progress. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

CUDA's universal matrix multiplication: from entry to proficiency! CUDA's universal matrix multiplication: from entry to proficiency! Mar 25, 2024 pm 12:30 PM

General Matrix Multiplication (GEMM) is a vital part of many applications and algorithms, and is also one of the important indicators for evaluating computer hardware performance. In-depth research and optimization of the implementation of GEMM can help us better understand high-performance computing and the relationship between software and hardware systems. In computer science, effective optimization of GEMM can increase computing speed and save resources, which is crucial to improving the overall performance of a computer system. An in-depth understanding of the working principle and optimization method of GEMM will help us better utilize the potential of modern computing hardware and provide more efficient solutions for various complex computing tasks. By optimizing the performance of GEMM

How to calculate addition, subtraction, multiplication and division in word document How to calculate addition, subtraction, multiplication and division in word document Mar 19, 2024 pm 08:13 PM

WORD is a powerful word processor. We can use word to edit various texts. In Excel tables, we have mastered the calculation methods of addition, subtraction and multipliers. So if we need to calculate the addition of numerical values ​​in Word tables, How to subtract the multiplier? Can I only use a calculator to calculate it? The answer is of course no, WORD can also do it. Today I will teach you how to use formulas to calculate basic operations such as addition, subtraction, multiplication and division in tables in Word documents. Let's learn together. So, today let me demonstrate in detail how to calculate addition, subtraction, multiplication and division in a WORD document? Step 1: Open a WORD, click [Table] under [Insert] on the toolbar, and insert a table in the drop-down menu.

How to count the number of elements in a list using Python's count() function How to count the number of elements in a list using Python's count() function Nov 18, 2023 pm 02:53 PM

How to use Python's count() function to calculate the number of an element in a list requires specific code examples. As a powerful and easy-to-learn programming language, Python provides many built-in functions to handle different data structures. One of them is the count() function, which can be used to count the number of elements in a list. In this article, we will explain how to use the count() function in detail and provide specific code examples. The count() function is a built-in function of Python, used to calculate a certain

Count the number of occurrences of a substring recursively in Java Count the number of occurrences of a substring recursively in Java Sep 17, 2023 pm 07:49 PM

Given two strings str_1 and str_2. The goal is to count the number of occurrences of substring str2 in string str1 using a recursive procedure. A recursive function is a function that calls itself within its definition. If str1 is "Iknowthatyouknowthatiknow" and str2 is "know" the number of occurrences is -3. Let us understand through examples. For example, input str1="TPisTPareTPamTP", str2="TP"; output Countofoccurrencesofasubstringrecursi

How to use the Math.Pow function in C# to calculate the power of a specified number How to use the Math.Pow function in C# to calculate the power of a specified number Nov 18, 2023 am 11:32 AM

In C#, there is a Math class library, which contains many mathematical functions. These include the function Math.Pow, which calculates powers, which can help us calculate the power of a specified number. The usage of the Math.Pow function is very simple, you only need to specify the base and exponent. The syntax is as follows: Math.Pow(base,exponent); where base represents the base and exponent represents the exponent. This function returns a double type result, that is, the power calculation result. Let's

Java program to calculate the area of ​​a triangle using determinants Java program to calculate the area of ​​a triangle using determinants Aug 31, 2023 am 10:17 AM

Introduction The Java program for calculating the area of ​​a triangle using determinants is a concise and efficient program that can calculate the area of ​​a triangle given the coordinates of three vertices. This program is useful for anyone learning or working with geometry, as it demonstrates how to use basic arithmetic and algebraic calculations in Java, as well as how to use the Scanner class to read user input. The program prompts the user for the coordinates of three points of the triangle, which are then read in and used to calculate the determinant of the coordinate matrix. Use the absolute value of the determinant to ensure the area is always positive, then use a formula to calculate the area of ​​the triangle and display it to the user. The program can be easily modified to accept input in different formats or to perform additional calculations, making it a versatile tool for geometric calculations. ranks of determinants

Python program to calculate the sum of the right diagonal elements of a matrix Python program to calculate the sum of the right diagonal elements of a matrix Aug 19, 2023 am 11:29 AM

A popular general-purpose programming language is Python. It is used in a variety of industries, including desktop applications, web development, and machine learning. Fortunately, Python has a simple and easy-to-understand syntax that is suitable for beginners. In this article, we will use Python to calculate the sum of the right diagonal of a matrix. What is a matrix? In mathematics, we use a rectangular array or matrix to describe a mathematical object or its properties. It is a rectangular array or table containing numbers, symbols, or expressions arranged in rows and columns. . For example -234512367574 Therefore, this is a matrix with 3 rows and 4 columns, expressed as a 3*4 matrix. Now, there are two diagonals in the matrix, the primary diagonal and the secondary diagonal

Java program example to calculate total score and percentage Java program example to calculate total score and percentage Sep 11, 2023 pm 06:01 PM

We will demonstrate how to calculate total scores and percentages using a Java program. Total score refers to the sum of all available scores, while the term percentage refers to the calculated score divided by the total score and multiplied by the resulting number 100. percentage_of_marks=(obtained_marks/total_marks)×100 Example 1 This is a Java program that demonstrates how to calculate total scores and percentages. //JavaProgramtodemonstratehowisTotalmarksandPercentagescalculatedimportjava.io.*;publicclassTotalMarks_

See all articles