ML IALGO LINREG
ML_IALGO_LINREG = [integer]
Default: ML_IALGO_LINREG = 1
Description: This tag determines the algorithm that is employed to solve the system of linear equations in the ridge regression method for machine learning.
In the ridge regression method for machine learning one needs to solve for the unknown weights minimizing
For more details please see here.
The following options are available to solve for :
- ML_IALGO_LINREG=1: Bayesian linear regression (see here). Recommended for NSW1. Usable with on-the-fly learning (ML_ISTART=0,1,3.
- ML_IALGO_LINREG=2: QR factorization. Usable with NSW=0 and ML_ISTART=1.
- ML_IALGO_LINREG=3: Singular value decomposition. Usable with NSW=0 and ML_ISTART=1.
- ML_IALGO_LINREG=4: Singular value decomposition with Tikhonov regularization. Usable with NSW=0 and ML_ISTART=1.
For on the fly learning, it is strictly necessary to use Bayesian regression (ML_IALGO_LINREG=1), since uncertainty estimates are only available for Bayesian regression.
All other methods are used to read an existing ML_AB data base file (ML_ISTART=1) and create a final ML_FFN force field file (postprocessing). During on the fly training, the database ML_ABN file is created, and before postprocessing the user needs to copy the ML_ABN file to the ML_AB file. Among the postprocessing methods, ML_IALGO_LINREG=3 is the best tested approach and we use it routinely before employing a machine learned force field. It should be also noted that this postprocessing step is computationally somewhat more demanding than the Bayesian linear regression, but typically this post processing step still requires between a few minutes and an hour. So usually the extra cost is negligible compared to the original training.
Related Tags and Sections
ML_LMLFF, ML_W1, ML_WTOTEN, ML_WTIFOR, ML_WTSIF, ML_ISTART