Hi, everyone,
I used vasp to train a ML_FF near half one year, which definitely provide the potential for large-scale molecular simulation. But there are still several questions that bother me when I trained a liquid system.
1. The obtained ML_FFN is very large, after refit, the MD run with the ML_FF is very slow
2. I trained a ML_FF in a small cell around 50ps time, the error for energy and force is good, but I took the FF to run a larger cell, such as extended lattice with two times, it was found some bonds were broken and some atoms were aggregated together, and this is not normal process.
INCAR:
SYSTEM = IL_liquid
LPLANE = .TRUE.
NCORE = 4
LSCALU = .FALSE.
NSIM = 4
### Electronic structure part
ENCUT=500
GGA = PE
IVDW = 11
ALGO = F
LASPH = .T.
ISMEAR = 0
SIGMA = 0.5
ISPIN = 1
ISYM = 0
LREAL = Auto
### MD part
IBRION = 0
MDALGO = 3
LANGEVIN_GAMMA = 10.0 10.0 10.0 10.0
LANGEVIN_GAMMA_L = 10.0
NSW = 24000
NBLOCK= 10
KBLOCK=10
POTIM = 1
ISIF = 3
TEBEG = 200
TEEND = 600
PSTRESS = 0.001
PMASS=100
RANDOM_SEED = 486686595 0 0
### Output
LWAVE = .FALSE.
LCHARG = .FALSE.
###############################
### MACHINE-LEARNING ###
################################
ML_LMLFF = .T.
ML_MODE=train
ML_MB=3500
ML_ISTART = 1
the broken structure was attached.
Several questions about ML_ff in VASP
Moderators: Global Moderator, Moderator
-
- Newbie
- Posts: 43
- Joined: Tue Nov 19, 2019 4:15 am
Several questions about ML_ff in VASP
You do not have the required permissions to view the files attached to this post.
-
- Global Moderator
- Posts: 460
- Joined: Mon Nov 04, 2019 12:44 pm
Re: Several questions about ML_ff in VASP
Could you please post the important files:
POSCAR, POTCAR, ML_AB and INCAR (for training and refit), OUTCAR
How big is your ML_FFN file in MB? You don't have to post the ML_FFN file, but please check does it have a human readable header.
If you say very slow, in comparison to what? On how many cores did you run the calculation on?
Which VASP version do you have?
POSCAR, POTCAR, ML_AB and INCAR (for training and refit), OUTCAR
How big is your ML_FFN file in MB? You don't have to post the ML_FFN file, but please check does it have a human readable header.
If you say very slow, in comparison to what? On how many cores did you run the calculation on?
Which VASP version do you have?
-
- Newbie
- Posts: 43
- Joined: Tue Nov 19, 2019 4:15 am
Re: Several questions about ML_ff in VASP
Thank you for your previous responses. I am currently using VASP version 6.4.1 and have encountered issues with two different systems. Therefore, I have divided the related files into two sets of attachments, including POSCAR, POTCAR, and INCAR. The ML_AB file is too large and cannot be uploaded to the attachment.
1. For the first system, the force field file size is 2.92GB. It runs normally after expansion, but the speed is not particularly fast. The ML_run system comprises 1152 atoms, and it takes about 50 hours to run 1ns on 96 cores. The visualization title for ML_FFN is as follows: ML_FF 0.2.1 binary { "date" : "2023-09-08T11:43:12.173", "ML_LFAST" : True, "ML_DESC_TYPE" : 0, "types" : [ "H", "B", "C", "N", "F" ], "training_structures" : 1188, "local_reference_cfgs" : [ 5000, 980, 5000, 2439, 5000 ], "descriptors" : [ 2885, 2885, 2885, 2885, 2885 ], "ML_IALGO_LINREG" : 4, "ML_RCUT1" : 8.0000E+00, "ML_RCUT2" : 5.0000E+00, "ML_W1" : 1.0000E-01, "ML_SION1" : 5.0000E-01, "ML_SION2" : 5.0000E-01, "ML_LMAX2" : 3, "ML_MRB1" : 12, "ML_MRB2" : 8, "ML_IWEIGHT" : 3, "ML_WTOTEN" : 1.0000E+00, "ML_WTIFOR" : 1.0000E+00, "ML_WTSIF" : 1.0000E+00 }
2. The second system has been under training for an extended period. However, the current ML_FF always collapses after cell expansion and temperature rise, leading to atomic aggregation.
I have attached the relevant documents for both systems.Thank you very much for your time and assistance!
1. For the first system, the force field file size is 2.92GB. It runs normally after expansion, but the speed is not particularly fast. The ML_run system comprises 1152 atoms, and it takes about 50 hours to run 1ns on 96 cores. The visualization title for ML_FFN is as follows: ML_FF 0.2.1 binary { "date" : "2023-09-08T11:43:12.173", "ML_LFAST" : True, "ML_DESC_TYPE" : 0, "types" : [ "H", "B", "C", "N", "F" ], "training_structures" : 1188, "local_reference_cfgs" : [ 5000, 980, 5000, 2439, 5000 ], "descriptors" : [ 2885, 2885, 2885, 2885, 2885 ], "ML_IALGO_LINREG" : 4, "ML_RCUT1" : 8.0000E+00, "ML_RCUT2" : 5.0000E+00, "ML_W1" : 1.0000E-01, "ML_SION1" : 5.0000E-01, "ML_SION2" : 5.0000E-01, "ML_LMAX2" : 3, "ML_MRB1" : 12, "ML_MRB2" : 8, "ML_IWEIGHT" : 3, "ML_WTOTEN" : 1.0000E+00, "ML_WTIFOR" : 1.0000E+00, "ML_WTSIF" : 1.0000E+00 }
2. The second system has been under training for an extended period. However, the current ML_FF always collapses after cell expansion and temperature rise, leading to atomic aggregation.
I have attached the relevant documents for both systems.Thank you very much for your time and assistance!
You do not have the required permissions to view the files attached to this post.
-
- Newbie
- Posts: 9
- Joined: Tue Oct 25, 2016 9:55 am
- Location: Switzerland
- Contact:
Re: Several questions about ML_ff in VASP
Hi suojiang_zhang1,
to avoid unwanted bond breaking and formation in calculations that employ MLFF with molecular structures with more than 2 elements (can be solids and fluids), consider two important aspects:
1. make sure that ALL SCF steps converge, such the calculated forces and stress are based on converged energies. Especially in the on the fly training of MLFFs sometimes 60 SCF steps are not sufficient. Increase the value of NELM to 100 or even 300 to really make sure that convergence is achieved, always! I gathered very good experience with ALGO = All with a time step of 0.2 or 0.1. This SCF algorithm is very robust especially in case of structures that are away from minima on the potential energy surface. Though ALGO = Fast or Very Fast promise to achieve fast or very fast, respectively, convergence, they do not for atomic configurations that are away from minima on the potential energy surface.
2. Use the VASP MLFF features ML_ISCALE_TOTEN =1 and ML_EATOM_REF to properly describe the energies of isolated atoms, i.e, atoms with large interatomic distances. With that, bond breaking is much better described than with ML_ISCALE_TOTEN = 2.
Another more general advice: Train your MLFF with a much smaller structure that encompasses the major structural features of the large structure that you are currently using. After the training, refit the MLFF such that you use the fast descriptors and perform a MLFF validation to double check how accurate your MLFF is compated to the DFT method that is used to train the MLFF. If the validated error is acceptable simply apply the MLFF without any DFT calculations.
Best,
Rene
to avoid unwanted bond breaking and formation in calculations that employ MLFF with molecular structures with more than 2 elements (can be solids and fluids), consider two important aspects:
1. make sure that ALL SCF steps converge, such the calculated forces and stress are based on converged energies. Especially in the on the fly training of MLFFs sometimes 60 SCF steps are not sufficient. Increase the value of NELM to 100 or even 300 to really make sure that convergence is achieved, always! I gathered very good experience with ALGO = All with a time step of 0.2 or 0.1. This SCF algorithm is very robust especially in case of structures that are away from minima on the potential energy surface. Though ALGO = Fast or Very Fast promise to achieve fast or very fast, respectively, convergence, they do not for atomic configurations that are away from minima on the potential energy surface.
2. Use the VASP MLFF features ML_ISCALE_TOTEN =1 and ML_EATOM_REF to properly describe the energies of isolated atoms, i.e, atoms with large interatomic distances. With that, bond breaking is much better described than with ML_ISCALE_TOTEN = 2.
Another more general advice: Train your MLFF with a much smaller structure that encompasses the major structural features of the large structure that you are currently using. After the training, refit the MLFF such that you use the fast descriptors and perform a MLFF validation to double check how accurate your MLFF is compated to the DFT method that is used to train the MLFF. If the validated error is acceptable simply apply the MLFF without any DFT calculations.
Best,
Rene